2013年6月11日火曜日

hooks/post-updateでsudoコマンドによるgit pull

hooks/post-updateでpullしようとしてちょっとはまったのでメモ 次のようにpost-updateを設定
#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, rename this file to "post-update".
sudo -u [user name|] git update-server-info
cd /path/to
sudo -u [user name|] git --git-dir=/path/to/.git pull

/var/log/secureに出力されるログ


git pushすると次のようなエラーがsecureログに出力されpullに失敗した。
sorry, you must have a tty to run sudo
sudoコマンドの実行にはttyが必要らしい・・・
ログインしていないと動かないということなのか?

/etc/sudoersの変更


sudoersの設定を見直したところ、それっぽいのがあった。
visudoで次の一行をコメントアウトでエラーが解消され動作しました。
#Defaults    requiretty

そういえば、そうだった気がする。

0 件のコメント:

コメントを投稿