我试图构建一个Playbook,如果When语句为True则执行Action A,如果statement为false,则执行Action B. 听起来很简单,重点是两个动作都有相同的变化:
- name: Listing AMI Express
ec2_ami_facts:
filters:
"name": Dev-AMI
with_items: "{{ sites }}"
when: site not in sites
register: ami
- name: Listing AMI Standard
ec2_ami_facts:
filters:
"name": Prod-AMI
with_items: "{{ sites }}"
when: site in sites
register: ami
据我了解,此处的结果将始终是最后一个动作中的结果,如果第一个动作为True且最后一个动作为False,则为#34; ami"是从最后一个输出 - 只是空。如果最后一个操作为True,则结果将显示正确的" ami"。
如果我把它分成不同的名字,也就是ami1和ami2 - 它会正常工作,但我后来的任务需要变量" ami"。
那么实现这一目标的正确方法是什么? 使用相同的var取决于条件何时。
如果我的主题不够明确,请提前致谢并抱歉。)