約束の地

キャロ組

Itamae では nohup できないっぽい

前置き

数時間ハマって逃げ出したので確実ではないです。

状況

Itamae でこんなふうに書いたとします。

execute 'nohup /usr/bin/java -jar /opt/metabase/metabase.jar > /tmp/metabase_stdout.log 2> /tmp/metabase_error.log &' do
  # hoge
end

適用するとこうなります。バックグランドでの実行はされません。

 INFO :       execute[nohup /usr/bin/java -jar /opt/metabase/metabase.jar > /tmp/metabase_stdout.log 2> /tmp/metabase_error.log &] executed will change from 'false' to 'true'
DEBUG :       Executing `nohup /usr/bin/java -jar /opt/metabase/metabase.jar > /tmp/metabase_stdout.log 2> /tmp/metabase_error.log &`...
DEBUG :         exited with 0
DEBUG :       This resource is updated.
DEBUG :       This resource is updated.

対応策

愚直に ssh で実行したらうまくいきました。

$ ssh root@123.123.123.123 nohup /usr/bin/java -jar /opt/metabase/metabase.jar > /tmp/metabase_stdout.log 2> /tmp/metabase_error.log &

参考(?)

Powered by はてなブログ