ファブリックを使用していくつかのテストを実行しています。各テストは各マシンで実行されます。各実行呼び出しに一意のインデックスを渡したい。重複したホストを許可しない場合、私は次のようなことをしています:
@task
@parallel
def run_test():
idx = env.hosts.index(env.host)
run('run_test %d' % (idx)
これはうまくいきます。ただし、各マシンでいくつかのテストを実行したいと考えています。これを行うには、同じホスト名を数回渡してから env.dedupe_hosts = False を設定しますが、これは上記のスキーマを壊します。これは、各呼び出しが同じインデックスを取得するためです。
これを行う方法はありますか。マルチプロセス ロッカーを使用してインデックスを割り当てようとしましたが、うまくいきませんでした。
乾杯。