Ansible: l oop для каждого элемента списка (который сам является переменной) - PullRequest
0 голосов
/ 21 февраля 2020

У меня есть список

states:
  - california
  - illinois
  - newyork

, и каждый элемент списка является переменной

vars:
  california: west
  illinois: midwest
  newyork: east

Я хочу использовать l oop для отладки значений каждого элемента в list,

- debug:
    msg: "{{ item }}"
  with_items:
    - "{{ states }}"

Приведенный выше код дает мне этот вывод

TASK [../../playbook : debug] ************************************************************************************
ok: [localhost] => (item=california) => {
    "msg": [
        "california"
    ]
}
ok: [localhost] => (item=illinois) => {
    "msg": [
        "illinois"
    ]
}
ok: [localhost] => (item=newyork) => {
    "msg": [
        "newyork"
    ]
}

Вместо этого я хочу отобразить значение, как показано ниже

ok: [localhost] => (item=california) => {
    "msg": [
        "west"
    ]
}
ok: [localhost] => (item=illinois) => {
    "msg": [
        "midwest"
    ]
}
ok: [localhost] => (item=newyork) => {
    "msg": [
        "east"
    ]
}

1 Ответ

0 голосов
/ 21 февраля 2020

Вы можете использовать один из lookup плагинов

- debug:
    msg: "{{ lookup('vars', item) }}"
  with_items:
    - "{{ states }}"
...