Ce rôle est chargé d’exécuter des tâches pour mettre en place des ensembles de tâches suffisemment simples ou unique pour ne pas proposer un rôle dédié. Des modules personnalisés peuvent être utilisés pour effectuer des opérations plus complexes.

Tags internes

  • custom-tasks : Exécution des tâches ;

Variables à fournir

Variable Type Requis Défaut Description
execute_tasks Liste d’objets task Non Liste vide Tâches à exécuter
execute_handlers Liste d’objets handler Non Liste vide Gestionnaires disponibles
tasks_modules_path Chemin Non Chaîne vide Dossier, relatif au playbook sous lequel sont les modules de tâche
tasks_files_path Chemin Non Chaîne vide Dossier, relatif au playbook sous lequel sont les fichiers de tâche

Variables supplémentaires

Variable Type Requis Défaut Description
tasks_tags Liste de chaînes Non Chaîne vide Liste d’étiquettes filtrant les tâches à exécuter

Type task

Propriété Type Requis Défaut Description
name Chaîne Non Chaîne vide Nom de la tâche
action Chemin Oui Chaîne vide Nom de l’action à exécuter, native ou relative aux resources
args Dictionnaire Non Absent Arguments à passer à l’action
files Dictionnaire Non Absent Fichiers à copier sur la machine avant l’exécution de l’action
notify Liste de chaînes Non Vide Nom des gestionnaires à déclencher
vars Objet Non Vide Variables spécifiques à l’exécution
tags Liste de chaînes Non Vide Étiquettes de filtrage
become Booléen Non Absent Configuration de changement d’utilisateur de tâche
become_method Choix Non Absent Configuration de changement d’utilisateur de tâche
become_exe Chemin Non Absent Configuration de changement d’utilisateur de tâche
become_user Identifiant Non Absent Configuration de changement d’utilisateur de tâche
become_flags Chaîne Non Absent Configuration de changement d’utilisateur de tâche

Les clés de la propriété files permettent d’identifier les fichiers copiés dans l’argument copied_files passé à l’action, les fichiers sont copiés dans le dossier temporaire

Les propriétés additionnelles sont disponibles dans la variable item pour le templating, en plus du nom et de l’indice de la tâche.

Type handler

Propriété Type Requis Défaut Description
name Chaîne Non Chaîne vide Nom de la tâche
action Chemin Oui Chaîne vide Nom de l’action à exécuter, native ou relative aux resources
args Dictionnaire Non Absent Arguments à passer à l’action
become Booléen Non Absent Configuration de changement d’utilisateur de tâche
become_method Choix Non Absent Configuration de changement d’utilisateur de tâche
become_exe Chemin Non Absent Configuration de changement d’utilisateur de tâche
become_user Identifiant Non Absent Configuration de changement d’utilisateur de tâche
become_flags Chaîne Non Absent Configuration de changement d’utilisateur de tâche

Actions avec traitement spécifique

Action Traitement
debug L’action est exécutée sans traitement des fichiers
template L’action est exécutée avec sa source ajout du chemin de base des fichiers d’action
patch L’action est exécutée avec sa source ajout du chemin de base des fichiers d’action
copy L’action est exécutée avec l’ensemble des fichiers copiés, lorsque content et remote_src sont absents
acls L’action acl est exécutée pour toutes les paramètres spécifiés dans l’argument acls
directories L’action file est exécutée pour tous les dossiers de l’argument paths avec le reste des arguments spécifique de l’action file
links L’action file est exécutée pour tous les liens de l’argument links avec le reste des arguments spécifique de l’action file

L’argument paths est une liste de chemins absolus. L’argument links est une liste d’objets link. Les objets link ont les propriétés suivantes :

  • path: Chemin absolu du lien ;
  • src: Chemin absolu ou relatif du lien.

Filtrage par étiquette

Par défaut, tous les éléments sont exécutés. En spécifiant la variable supplémentaire tasks_tags, il est possible de sélectionner un sous-ensemble d’éléments. Il est nécessaire qu’au moins une étiquette spécifiée dans la variable soit présente dans la liste des étiquettes de l’élément.

Valeurs magiques :

  • all: Équivalent à ne pas spécifier le filtrage, sélectionne tout ;
  • always: Lorsque présente, l’élément est toujours exécuté même si le filtrage est demandé.

Arborescence des ressources externes

Ça dépend de la tâche exécutée.