web-dev-qa-db-fra.com

Comment exécuter un seul rôle d'un playbook Ansible?

J'ai un site.yml qui importe plusieurs playbooks.

- import_playbook: webservers.yml
- ....

Chaque playbook "appelle" plusieurs rôles:

- name: apply the webserver configuration 
  hosts: webservers

  roles:
  - javajdk
  - Tomcat
  - Apache

Comment puis-je exécuter uniquement le rôle javajdk?

Cela exécuterait tous les rôles ... ansible-playbook -i inventory webservers.yml

Je sais qu'il y a tags, mais comment puis-je les affecter à un rôle en général?

9
MBushveld

Les balises sont un moyen naturel d'aller. Trois façons de les spécifier pour les rôles ci-dessous:

- name: apply the webserver configuration 
  hosts: webservers

  roles:
    - role: javajdk
      tags: Java_tag
    - { role: Tomcat,  tags: Tomcat_tag }

  tasks:
    - include_role:
        name: Apache
      tags: Apache_tag

Référence aux documents

9
techraf