2017-08-11 15 views
3

Jenkinsエグゼキュータからsudoコマンドを実行しようとすると、タイトルエラーが発生します。Jenkinsがtomcat8 sudoを実行中:NOPASSWDで指定されたttyが存在せず、askpassプログラムがありません

ホストマシン(エグゼキュータ)で、sudoersファイルにこの行を含めるように設定しました。最後にjenkins ALL=(ALL) NOPASSWD: ALLがあります。

実行しようとしているコマンドはsudo service tomcat8 restartです。

利用可能な回答を確認私は必要なものすべてを持っているか、何か不足していますか?

+0

https://stackoverflow.com/a/29685946/947526 –

+0

須藤:1間違ったパスワード試行 – Jacob

+0

あなたのsudoの設定に問題がある可能性があります。あなたvisudoを使用しましたか?同じ設定が他のユーザーにも使えますか?手動で試してみることはできますか? –

答えて

0

回避策がある可能性があります:投稿に「Use sudo without password INSIDE a script」というコメントにBarmarが記載されているため、専用のスクリプトをsudoerで実行できるようにすることができます。あなたは、これはジェンキンスがパスワードなしでsudoを/path/to/restart.shを行うことができることを意味し

jenkins ALL=(ALL) NOPASSWD:/path/to/restart.sh 

ラインを持っていると仮定します。

service tomcat8 restartrestart.shに入力した場合は、sudo /path/to/restart.shを実行する必要があります。

0

jenkinsユーザーの場合はrequirettyをオフにしてみてください。 sudoersファイルにもcommand aliasesを使用することをお勧めします。

Cmnd_Alias RESTART_TOMCAT = /sbin/service tomcat8 *, /etc/init.d/tomcat8 * 

Defaults:jenkins !requiretty 

jenkins ALL=(root) NOPASSWD: RESTART_TOMCAT 
関連する問題