jenkins - 从 Jenkins 运行 ansible 时缺少 sudo 密码错误
问题描述
该命令是jenkins运行运行yml文件的命令
devops18@devops-vbox:/usr/share/ansible/roles/webrole$ /usr/bin/ansible-playbook /usr/share/ansible/roles/webrole/web.yml -i /usr/share/ansible/ansiserver -f 5
PLAY [ubuntuclient] **************************************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************
ok: [ubuntuclient]
TASK [webrole : Install JDK on Ubuntu] *******************************************************************************************************
fatal: [ubuntuclient]: FAILED! => {"msg": "Missing sudo password"}
PLAY RECAP ***********************************************************************************************************************************
ubuntuclient : ok=1 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
devops18@devops-vbox:/usr/share/ansible/roles/webrole$
请建议我需要在詹金斯工作配置中进行的任何更改以使其正常工作
解决方案
-kK
调用 playbook 时需要提示输入密码:
/usr/bin/ansible-playbook /usr/share/ansible/roles/webrole/web.yml -i /usr/share/ansible/ansiserver -f 5 -kK
或添加密码--extra-vars
(不推荐)
/usr/bin/ansible-playbook /usr/share/ansible/roles/webrole/web.yml -i /usr/share/ansible/ansiserver --extra-vars "ansible_sudo_pass=xxxxxx" -f 5
或者您可以编辑/etc/sudoers
:
ubuntuclient ALL=(ALL) NOPASSWD: ALL
推荐阅读
- sql - Blazor 服务器 - 从 SQL 返回计数 - 返回 System.Collections.Generic.List`1[System.Object]
- java - 在这个 Java 的 char 数组代码中 - sum += c - '0' 行的目的是什么?
- java - Jersey 过滤器发生在 Jetty url 重写处理程序之前
- node.js - 添加新节点模块后,领域-cli 推送失败
- javascript - firebase 实时数据库在 chrome 中不起作用
- python - 提取带有数字的句子
- javascript - 如果旁边的单元格为空,则自动清除单元格,“”
- python - 使用 PyTorch 进行深度学习:对于 4 维权重 [64, 3, 7, 7] 的预期 4 维输入,但是得到了大小为 [32, 1728] 的 2 维输入
- android - 尝试调用:[]("number")
- sql - Hive 如何在列中查找模式的位置