当我从Jenkins运行任何sudo命令时,我会收到以下错误:sudo: no tty present and no askpass program specified
。
我知道我可以通过在/etc/sudoers
文件中添加NOPASSWD条目来解决这个问题,这将允许用户jenkins在不需要密码的情况下运行命令。我可以添加如下条目:
%jenkins ALL=(ALL)NOPASSWD:/home/me/dir/script.sh
...但这会导致以下问题:https://stackoverflow.com/questions/17414330/how-to-avoid-specifying-full-path-in-sudoers-file
我可以像这样添加一个条目:
%jenkins ALL=NOPASSWD: ALL
...但这允许用户jenkins避免所有命令的密码提示,这似乎有些不安全。我只是好奇在这里我的选择是什么,是否有任何最佳实践我应该考虑。