Ich möchte eine ansible Aufgabe nur ausführen können, wenn der Host des aktuellen Playbooks nicht zu einer bestimmten Gruppe gehört. Im Semi-Pseudo-Code:
- name: my command
command: echo stuff
when: "if {{ ansible_hostname }} not in {{ ansible_current_groups }}"
Wie soll ich das machen?
This one looks easy to fix. It seems that there is a value started with a quote, and the YAML parser is expecting to see the line ended with the same kind of quote.
when: inventory_hostname not in groups.certain_groups
inventory_hostname in groups['groupname']
in Fällen, in denen der Fugenmörtel selbst nicht vorhanden ist, gibt Ansible einen Fehler wie "Stellen Sie sicher, dass Ihr Variablenname keine ungültigen Zeichen wie '-' enthält: Argument vom Typ 'StrictUndefined' ist nicht iterierbar"Sie können eine Steuervariable in VAR-Dateien festlegen, die sich in
group_vars/
oder direkt in der Hosts-Datei befinden:Und führen Sie Aufgaben wie diese aus:
quelle