Comment forcer ansible à réessayer une tâche ‘apt’ si elle échoue?

J’ai un playbook ansible sur plusieurs machines. Dans ce playbook, j’ai quelques paquets à installer avec apt , mais parfois ils échouent, soit parce que d’autres playbooks sont en cours d’exécution, une mise à jour périodique ou toute autre instance apt s’exécutant en parallèle et saisissant le verrou.

Je veux essentiellement append une boucle de réessai avant d’abandonner, mais je n’ai pas réussi à le faire car resortinges n’est apparemment pas supporté par apt : j’ai regardé la page du apt module dans la documentation d’ansible et j’ai même essayé de l’utiliser. (ce qui a évidemment échoué).

Quoi qu’il en soit – j’ai besoin d’une idée sur la manière d’obtenir une réponse pour essayer de faire trois fois, avec 30 secondes de retard, mais uniquement en cas d’installation du paquet.

Il existe des tests de résultats de tâches universels, vous pouvez donc utiliser:

 - apt: name: build-essential state: present register: apt_res resortinges: 5 until: apt_res | success