Ansible playbook exécuter dans cet ordre: tâche, rôle, tâche, rôle, tâche
Pardonnez ma question de débutant, mais je voudrais exécuter trois tâches et utiliser deux rôles dans un playbook, dans l'ordre:
- tâche
- rôle
- tâche
- rôle
- tâche
C'est ce que j'ai jusqu'à présent (tâche, rôle, tâche):
---
- name: Task Role Task
hosts: 127.0.0.1
connection: local
gather_facts: false
pre_tasks:
- name: Do this task first
foo:
roles:
- role: this role second
foo:
post_tasks:
- name: Do this task third
foo:
Est-ce possible ou devrais-je changer mes tâches en rôles?
27
demandé sur
simon
2015-06-10 20:48:49
3 réponses
Je vous recommande de créer des rôles pour les tâches post et pre pour vous ansible.
Votre site.yml doit être comme ceci:
---
- hosts: localhost
remote_user: "{{remote_user}}"
sudo: yes
gather_facts: false
roles:
- pre
- main_role
- post
Dans le dossier rôles, vous devez avoir trois rôles, pre, post et main_role.
16
répondu
siavolt
2015-06-10 17:55:54
Chaque bloc"hosts:" sera exécuté un par un. Vous pouvez donc utiliser plusieurs blocs pour forcer l'ordre d'exécution souhaité:
---
- hosts: 127.0.0.1
tasks:
- name: Do this task first
- hosts: 127.0.0.1
roles:
- role: this role second
- hosts: 127.0.0.1
tasks:
- name: Do this task third
22
répondu
Michael Wyraz
2016-06-02 07:06:23
---
- name: Task Role Task
hosts: 127.0.0.1
connection: local
gather_facts: false
tasks:
- name: task1
foo:
- name: include role1
include_role:
name: myrole1
- name: task2
foo:
- name: include role2
include_role:
name: myrole2
4
répondu
Roy Zeng
2018-07-12 06:46:03