在我的服务器上,我有一个sudoer用户,只能在无密码模式下运行chown。
所以,当我运行
sudo chown mytargetuser:mytargetgroup /my/path
有效。但是,当我尝试在Ansible剧本中执行相同操作时:
tasks:
- name: change folder ownership
become: yes
become_user: root
become_method: sudo
file:
path: "/my/path"
owner: mytargetuser
group: mytargetgroup
Ansible返回此错误:
FAILED! => {"changed": false, "module_stderr": "", "module_stdout": "sudo: a password is required\r\n", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}
当直接使用shell模块也可以工作时:
- name: test via script
shell : sudo chown mytargetuser:mytargetgroup /my/path
是否有一种整合的方式将这种行为包含在剧本中,还是我应该使用shell插件保留最后一个解决方案?
此致
克里斯托夫
答案 0 :(得分:0)
在执行剧本命令后输入-K作为密码。
例如,> ansible-playbook sample.yml -K