Jenkinsでsudoを呼び出す

Jenkinsでsudoを呼び出す

abcsudoアクセスが制限されたユーザーを持つビルドシステムがあります。ソースコードを確認してビルドスクリプトを実行すると、正常に動作します。ビルドスクリプトにsudo指定されていない呼び出し「sudo:ttyが存在せず、Askpassプログラムが指定されていません」が含まれています。ただし、スレーブとして追加されたビルドマシンでJenkinsと同じ操作を実行すると、「sudo:ttyが存在せず、Askpassプログラムが指定されていません」というメッセージが表示されます。

Default requirettyファイル内でコメントを付けるための解決策が見つかりました/etc/sudoers。ただし、ファイルにアクセスできません。

この問題をどのように克服できますか?

ベストアンサー1

sudoルートパスワードの入力を求めようとしましたが、擬似ttyが割り当てられていないため失敗しました。

/etc/sudoers rootとしてログインするか(or:)で次のルールを設定する必要がありますsudo visudo

# Members of the admin group may gain root privileges.
%admin  ALL=(ALL) NOPASSWD:ALL

次に、Jenkinsユーザーがadminグループ(またはwheel)に属していることを確認します。

理想的には(より安全に)、root権限を次のように指定できる特定のコマンドに制限します。%admin ALL=(ALL) NOPASSWD:/path/to/program

おすすめ記事