Python で fabric を使用してプログラムをリモートで実行したい
マシン A でプログラムを実行した場合:
with (settings(host_string = machine_B_ip, user = 'ubuntu', key_filename = 'somepemfile.pem')):
run('myprog')
正常に動作しますが、マシン A がマシン B から切断すると、プロセスは B で停止します。「nohup」を使用してこれを解決します
ただし、本当の問題は、マシン A がマシン B を待機してスタックすることです。
しようとしている:
run('myprog &')
プログラムはリモートで実行されません ( http://docs.fabfile.org/en/1.3.4/faq.html#why-can-ti-run-programs-in-the-backgroundで明らかなように) -with-it-makes-fabric-hang )
しようとしている:
run('myprog >& /dev/null < /dev/null &') # fails
run('myprog >& /dev/null < /dev/null')
run('nohup myprog >& /dev/null < /dev/null') # gets stuck
助けにならない。
どうすればこれを達成できますか?