2011-11-17 5 views
10

Fabric APIのほとんどは、関数と一緒に使用されています。ファイルのPythonスクリプトでFabricを一緒に実行する

例(sample.py):

from fabric.api import * 
print "Hello" 

def deploy(): 
    with settings(hosts_string="Remote", user = "ubuntu", key_filename="/home/ubuntu/key.pem"): 
     put('/home/localuser/sample.sh', '/home/ubuntu/') 
     run('bash /home/ubuntu/sample.sh') 

私は

fab deploy 

を実行するためのコマンドは、メインメソッドで生地を実行することが可能です実行します。だから私はPythonスクリプトとして実行すると、ファブリックが実行されます。

python ./sample.py 

ありがとうございます!

答えて

18

あなたのファイルにこのスニペットを追加することができ、直接あなたの質問に答えるために:あなたはpython ./sample.pyを実行したときに

from fabric.api import * 
print "Hello" 

def deploy(): 
    with settings(host_string="Remote", user = "ubuntu", key_filename="/home/ubuntu/key.pem"): 
     put('/home/localuser/sample.sh', '/home/ubuntu/') 
     run('bash /home/ubuntu/sample.sh') 

if __name__ == '__main__': 
    deploy() 

さて、それはfab deploy

と同じことを行いますただし、fabは、ことができますあなたの単純な例以外にはるかに多くのことをする。 fabコマンドの柔軟性の詳細については、fab documentationを参照してください。

+4

設定引数は 'host_string'(複数ではない) – Justin

0

ファブリックの実行コマンドを与える必要があります。一番下に実行(デプロイ)

関連する問題