Forum Programmation.autre Task Ansible jamais exécutée

Posté par  . Licence CC By‑SA.
Étiquettes :
0
4
nov.
2019

Bonjour,

Via Ansible je souhaite afficher le résultat de 2 requêtes DNS avec le Playbook ci-dessous.
Or, seule la 2e "task" est exécutée… Jamais la première ! Je ne comprends pas du tout, Ansible m'indique qu'il trouve une task dupliquée mais c'est pas le cas pourtant… Si vous aviez une piste !

---
- hosts: linux
  tasks:
    - name: "abc"
      debug: "msg=\"{{ lookup('dig', 'pc1.mydomain.dom.') }}\""
      tags:
        - dns

  tasks:
    - name: "def"
      debug: "msg=\"{{ lookup('dig', 'pc2.mydomain.dom.') }}\""
      tags:
        - dns
...

Warning quand j'exécute le Playbook :
[WARNING]: While constructing a mapping from playbook.yml, line 2, column 3, found a duplicate dict key (tasks). Using last defined value only

  • # Répétition

    Posté par  (site web personnel) . Évalué à 4. Dernière modification le 04 novembre 2019 à 13:27.

    Supprimes le 2ème tasks: (c'est ce que te dit le warning). Lors du parcours du fichier, la deuxième définition tasks: écrase la première, qui est donc perdue et jamais exécutée.

    Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

  • # duplicate dict key

    Posté par  . Évalué à 3.

    Salut,

    Comme l'indique le message d'erreur, la clé task n'a pas besoin d'être déclarée une seconde fois.
    Une déclaration comme suit suffit:

    - hosts: linux
      tasks:
        - name: "abc"
         ...
        - name: "def" 
    
    • [^] # Re: duplicate dict key

      Posté par  . Évalué à 3.

      Pour être plus précis, tasks est une liste dont chaque item sera représenté par un '-' Et chaque item dans ton cas sera un tableau associatif clé=>valeur (name=> abc, …)

  • # Merci

    Posté par  . Évalué à 2.

    Ah oui OK merci, c'était juste ça…
    Je débute en Ansible et Yaml ! ^

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.