Fabric には、SSH 接続先のコンピューターを指定するホスト設定があります。
アマゾン ウェブ サービスには、 botoなどのツールを使用して Python でクエリできる動的なインベントリが多くあります。
これら 2 つのサービスを組み合わせる方法はありますか? 理想的には、在庫ファイルとec2.pyのような外部ファイルを使用したansibleのアプローチと同じくらい単純なものが欲しかったのです。
より具体的には、このユースケース用の事前に作成されたソリューションはありますか? 理想的には、次のような簡単なものを実行したいと思います。
from fabric.api import env, task
import ec2
env.roledefs = ec2.Inventory()
@task
def command():
run("lsb_release -a")
env.roledefs['nginx']
存在すると仮定して、次のように実行します。
$ fab -R nginx command