: O. Yuanying

Vlad で sudo

最近、Capistrano を使い始めたのだが、 何気に使い方を調べようとソースコードを読むと、長くて大変。 全体像を把握するのが大変だなあと何となく思っていたところに発見。

Capistrano の代替として使えそう。それでいてソースコードはシンプルで読みやすくてよい。

まあ、ぶっちゃけ、ツールの使い方について、

  1. ネットを徘徊して調べるか?
  2. ソースコードを徘徊して調べるか?

のどっちが好みかで、Capistrano を使うか Vlad を使うかが変わる気がするが。

sudo してみた

で、まあ、Capistrano や Vlad の使い方はおいといて、 Remote のタスクを sudo 権限で実行してみたところ、

$ rake vlad:test --trace 
** Invoke vlad:test (first_time)
** Execute vlad:test
ssh localhost 'sudo -p Password: echo sudo'
__sudo: no tty present and no askpass program specified__
rake aborted!
execution failed with status 1: ssh localhost sudo -p Password: echo sudo

みたいに言われて実行できないことがある。 Capistrano の場合は、default\_run\_options[:pty] = true すればいいらしいが…。

色々調べたところ、

set :sudo_flags, sudo_flags << '-S'

で解決だった。