さくらインターネット‎のレンタルサーバに対して、fabricを使用したときに/bin/bash: Command not found.となった

開発サーバからさくらインターネット‎のレンタルサーバに対して、
Fabricを使用して、デプロイ操作をしようとしたところ

$ fab deploy_production
[*******.sakura.ne.jp] Executing task 'deploy_production'
[*******.sakura.ne.jp] run: php composer.phar install
[*******.sakura.ne.jp] out: /bin/bash: Command not found.
[*******.sakura.ne.jp] out:


Fatal error: run() received nonzero return code 1 while executing!

Requested: php composer.phar install
Executed: /bin/bash -l -c "cd /home/*******/www && php composer.phar install"

Aborting.
Disconnecting from *******.sakura.ne.jp... done.

となりました。

レンタルサーバでbashの位置を確認すると

% which bash
/usr/local/bin/bash

とパスが違う模様。

wiki:fabric:リモートコマンドの実行でbin_bash_command_not_foundと言われたら [birdworks.jp]
より

fabfile.py内に

env.shell = '/usr/local/bin/bash -l -c'

を追記することで、解決しました。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中