Ansible:如何在条件为条件的情况下使用数组获取值

时间:2019-03-21 14:11:29

标签: ansible

我的角色有变数

component: [ mouse, keyboard, cpu ]

以我的角色,我需要根据组件变量

导入任务
- import_tasks: cpu.yml
  when: '"cpu" in component'

如果组件中只有一个值,这项工作有效,我该如何遍历组件var并在出现条件时使用它

1 个答案:

答案 0 :(得分:1)

我不确定是否理解用例。您是否要循环所有项目?

vars:
  component: [ mouse, keyboard, cpu ]
tasks:
  - import_tasks: "{{ item }}.yml"
    loop: component

或者,您是否只想导入选定的组件?

vars:
  component: [ mouse, keyboard, cpu ]
  selected: [ mouse, cpu ]
tasks:
  - import_tasks: "{{ item }}.yml"
    loop: selected
    when: item in component

(未经测试)