【发布时间】:2018-12-10 23:42:08
【问题描述】:
我有一组变量和一个任务如下。我的意图是根据用户选择的 URL 动态地进行健康检查。
vars:
current_hostname: "{{ ansible_hostname }}"
hc_url1: "https://blah1.com/healthcheck"
hc_url2: "https://blah2.com/healthcheck"
tasks:
- name: Notification Msg For Healthcheck
shell: "echo 'Performing healthcheck at the URL {{ lookup('vars', component) }} on host {{ current_hostname }}'"
在 Ansible 2.3 中运行剧本
ansible-playbook ansible_playbook.yml -i inventory -k -v --extra-vars "component=hc_url1"
错误
fatal: [hostname]: FAILED! => {"failed": true, "msg": "lookup plugin (vars) not found"}
我知道发生这种情况是因为 Ansible v2.5 中引入了查找插件“var”。有没有办法在 Ansible 2.3 中做到这一点?我想得到 {{ component }} 的值,然后是 {{ hc_url1 }}
PS - 由于组织限制,不能升级到 2.5
【问题讨论】:
标签: variables dynamic ansible lookup ansible-2.x