我有一个可播放的剧本,可以通过ansible-playbook -u <username> -k playbooks/example.yml
从命令行手动运行
以上工作正常。它提示我输入SSH密码并运行剧本。
The ansible version in my linux machine: 2.7.7
作为构建计划的一部分,我需要在Bamboo中运行它。在Bamboo中,我无法输入密码,因为它不会提示我。所以我想将用户名和ssh密码作为参数传递给命令。
我尝试过此
ansible-playbook playbooks/monitor-linux-node.yml -e "ansible_user=<username> ansible_ssh_pass=password"
这将引发此错误
ERROR: blockinfile is not a legal parameter in an Ansible task or handler
我也尝试过这个
ansible-playbook -u <username> playbooks/monitor-linux-node.yml -e "ansible_ssh_pass=password"
这将引发Usage: ansible-playbook playbook.yml
并列出我们可以使用的参数。
关于如何在命令行中传递用户名和ssh密码的任何建议都会很有帮助。
The ansible version in Bamboo machine: 1.9.4
考虑使用sshpass