fabric
差分
このページの2つのバージョン間の差分を表示します。
次のリビジョン | 前のリビジョン | ||
fabric [2014/09/05 10:38] – 作成 nullpon | fabric [2014/09/11 05:21] (現在) – [サーバプロセスが起動できない] nullpon | ||
---|---|---|---|
行 1: | 行 1: | ||
====== fabric ====== | ====== fabric ====== | ||
- | python製のデプロイツール | + | python製のデプロイツール。複数のサーバに対してアップロードしたり、複数のサーバで一気にコマンドを実行したりできる。 |
===== インストール ===== | ===== インストール ===== | ||
行 9: | 行 9: | ||
$ easy_install pip | $ easy_install pip | ||
$ pip install fabric | $ pip install fabric | ||
+ | |||
+ | ===== 接続ユーザ情報の設定 ===== | ||
+ | |||
+ | sshでサーバを操作するのでssh情報が必要なのでどっかに書かないとだめ | ||
+ | |||
+ | ==== fabfile.pyに直接設定を書く ==== | ||
+ | |||
+ | <code python> | ||
+ | from fabric.api import env | ||
+ | |||
+ | env.key_filename = [' | ||
+ | env.user = ' | ||
+ | env.password = ' | ||
+ | </ | ||
+ | |||
+ | ==== .ssh/ | ||
+ | |||
+ | <code python> | ||
+ | from fabric.api import env | ||
+ | |||
+ | env.use_ssh_config = True | ||
+ | </ | ||
+ | |||
+ | fabricを実行するマシンから操作対象のマシンへ。鍵認証のときはパスフレーズなしにするなり、agent起動するなりでno pass実行可能にしておくと良い。 | ||
+ | |||
+ | |||
+ | ===== タスクのファイル分割 ===== | ||
+ | |||
+ | < | ||
+ | $ fab content.deploy | ||
+ | $ fab app.deploy | ||
+ | </ | ||
+ | |||
+ | のようにタスクを呼べるようにする方法 | ||
+ | |||
+ | pythonスクリプト用のディレクトリを掘って | ||
+ | |||
+ | < | ||
+ | fabfile.py | ||
+ | fabtask/ | ||
+ | content.py | ||
+ | app.py | ||
+ | __init__.py | ||
+ | </ | ||
+ | |||
+ | ファイルの中身は… | ||
+ | |||
+ | <code python> | ||
+ | # fabfile.py | ||
+ | import fabtask.content as content | ||
+ | import fabtask.app as app | ||
+ | |||
+ | # fabtask/ | ||
+ | from fabric.api import task | ||
+ | |||
+ | @task | ||
+ | def deploy(): | ||
+ | pass | ||
+ | |||
+ | |||
+ | # fabtask/ | ||
+ | from fabric.api import task | ||
+ | |||
+ | @task | ||
+ | def deploy(): | ||
+ | pass | ||
+ | </ | ||
+ | |||
+ | ===== QA ===== | ||
+ | |||
+ | ==== サーバプロセスが起動できない ==== | ||
+ | |||
+ | 以下のようにしても起動できない | ||
+ | |||
+ | run(' | ||
+ | |||
+ | sshの切断時に端末からsighupが送られて速攻でプロセス終了してるのが原因なので、ssh接続時に疑似端末を作らないようにする | ||
+ | |||
+ | run(' | ||
+ | |||
+ | nohup付けても何故か効かなかった… |
fabric.1409913524.txt.gz · 最終更新: 2014/09/05 10:38 by nullpon