Jon*_*use 4 python ansible ansible-playbook
我想通过ansible playbook来评估命令.这是剧本.
- name: enable ssh-agent
command: eval $(ssh-agent)
Run Code Online (Sandbox Code Playgroud)
我试过这本剧本.
$ ansible-playbook -i hosts site.yml
Run Code Online (Sandbox Code Playgroud)
但我得到了这个错误.
failed: [host] => {"cmd": "eval", "failed": true, "rc": 2}
msg: [Errno 2] No such file or directory
FATAL: all hosts have already failed -- aborting
Run Code Online (Sandbox Code Playgroud)
eval命令如何在ansible playbook中工作?提前致谢.
command module期望可执行文件作为参数.
eval $(ssh-agent)是一个unix shell可以理解不是ansible 的表达式.
正如tedder所说,我不明白你为什么要设置ssh-agent,但如果你这样做,我建议你shell试试模块而不是command.希望你ssh-agent能以某种方式设定一些合适的价值.
# Just for debugging.
- name: enable ssh-agent
shell: echo "ssh-agent = $(ssh-agent)"
- name: enable ssh-agent
shell: eval $(ssh-agent)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,ansible将整个字符串传递给shell,shell将对其进行评估.
| 归档时间: |
|
| 查看次数: |
2495 次 |
| 最近记录: |