Me gustaría poder ejecutar una tarea ansible solo si el anfitrión del libro de jugadas actual no pertenece a un grupo determinado. En semi pseudocódigo:
- name: my command
command: echo stuff
when: "if {{ ansible_hostname }} not in {{ ansible_current_groups }}"
¿Cómo debería hacer esto?
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']
porque en los casos en que la lechada en sí no existe, Ansible arrojará un error como "Asegúrese de que el nombre de su variable no contenga caracteres no válidos como '-': el argumento de tipo 'StrictUndefined' no es iterable"Puede establecer una variable de control en archivos vars ubicados en
group_vars/
o directamente en el archivo hosts como este:Y ejecuta tareas como esta:
fuente