インストール方法
pipまたはeasy_install経由でファブリックライブラリをインストールし、fabアプリケーションのシンボリックリンクを作成するか、PATHのPythonディストリビューションにbinファイルを含むフォルダーを追加します。 以下は、Mac OS X +ポートの簡単なチュートリアルです。
sudo pip-2.6 install fabric
sudo ln -s /opt/local/Library/Frameworks/Python.framework/Versions/2.6/bin/fab /usr/bin/fab
ファブリックの機能
ファブリックを使用すると、サーバーのグループでさまざまなsshアクションを実行できます。 アクションはfabfile.pyファイルに記述されており、単なる通常のPython関数です。 通常、fabfile.pyはプロジェクトのルートフォルダー(manage.py、settings.py、urls.pyなどの隣)に配置されます。
from fabric.api import *
env . hosts = [ 'moodbox.com' ]
def deploy ():
local( 'hg push' )
with cd( 'hgreps/vorushin_ru' ):
run( 'hg update' )
run( '/etc/init.d/apache2 reload' )
vorushin_ruプロジェクト(このブログのコードはDjangoで記述されています)を使用してフォルダーからfab deployを実行すると、まずローカルコンピューターからプッシュが行われ、次にサーバー上のsshを介して更新が行われ、その後Apacheが再起動されます。
あらゆる種類の微妙な
まず、sshは証明書を通過する必要があります。 ssh-keygen 、 ssh認証済みキーを参照してください。
次に、別のサーバーからプルする必要がある場合は、sshを呼び出すときに-Aオプションを追加する必要があります。 詳細-lincolnloop.com/blog/2009/sep/22/easy-fabric-deployment-part-1-gitmercurial-and-ssh
第三に、開発チームが一度に1つずつ行う場合、プロジェクトファイルには開発者グループ全体に対する書き込み権限が必要です。 詳細-lincolnloop.com/blog/2009/oct/7/easy-fabric-deployment-part-2
第4に、Apacheで複数のプロジェクトを起動する場合、touch your.wsgiで再起動することをお勧めします(mod_wsgiがdaemon_modeで動作するように設定されている場合)。
私のブログの元の記事はvorushin.ru/blog/10-razvertyvanie-django-proektov-c-pomoshyu-fabricです