Ansible podmíněné proměnné

0

Otázka

Musím se postavit cluster, kde některé balíčky by měly být instalovány na všech hostitelích, zatímco ostatní balíčky jsou nainstalovány na specifické hostitele.

Přál bych si, aby se přidat podmíněné mé yum install smyčku vyberte cílového hostitele na základě mých zásob skupiny (master, slave, všechny).

- name: Install Package
  when: inventory_hostname in groups[ {{item.host }} ]
  yum:
    name: "{{ item.name }}"
    state: present
  loop:
    - {name: 'package_1', host: 'master'}
    - {name: 'package_2', host: 'slave'}
    - {name: 'package_3', host: 'all'}

Chápu, že jinja2 šablon není možnost, ale nemohl jsem najít to, co je správný způsob, jak to udělat. Díky!!!

ansible conditional-statements loops
2021-11-23 07:42:47
1

Nejlepší odpověď

3

Nepochopila jsi varování. Podmínkové věty jako when jsou již Jinja výraz, takže byste neměli používat další Jinja oddělovače v nich. To neznamená, že nemůžete použít proměnné, to znamená, že nemusíte dělat nic zvláštního, aby přístup k nim.

  when: inventory_hostname in groups[item.host]
2021-11-23 09:16:49

Moc si toho vážím! Pracoval jako kouzlo!
János

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................