Dépendances de rôles dans meta/main.yml
Enchaînez les rôles qui en nécessitent d’autres.
Dépendances de rôles dans meta/main.yml est une leçon Ansible Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Ansible Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Ansible Academy comprend 4 leçons au total.
Des rôles qui dépendent d’autres rôles
Certains rôles ne fonctionnent que si un autre rôle a été exécuté auparavant. Votre rôle applicatif peut avoir besoin d’un rôle de base pour renforcer la sécurité du serveur avant son déploiement.
Découvrez meta/main.yml
Chaque rôle peut contenir un fichier meta/main.yml. Il stocke les métadonnées du rôle, comme son auteur, les plateformes prises en charge et ses dépendances.
La clé dependencies
Dans meta/main.yml, la clé dependencies répertorie les rôles qui doivent s’exécuter avant celui-ci. Ansible les applique automatiquement en premier.
dependencies:
- role: common
- role: firewallLes dépendances s’exécutent en premier
Lorsque vous appliquez un rôle, Ansible exécute les dependencies qu’il répertorie avant lui, dans l’ordre où elles apparaissent, puis exécute les propres tâches de votre rôle.
Transmettez des variables à une dépendance
Vous pouvez transmettre des variables à une dépendance directement dans la liste. Le rôle de base s’exécute exactement avec la configuration dont ce rôle a besoin.
dependencies:
- role: nginx
vars:
http_port: 8080Une véritable chaîne de dépendances
Un rôle webapp dépend de nginx, qui dépend de common. Appliquez webapp et toute la chaîne est résolue pour vous de haut en bas.
Dépendances conditionnelles
Une dépendance peut comporter une condition when : elle ne s’exécute alors que sur les hôtes correspondants. Vous pouvez par exemple ignorer le rôle de pare-feu sur les machines de développement.
dependencies:
- role: firewall
when: env == 'prod'Les dépendances sont statiques
Les dépendances de meta sont résolues avant le début de l’exécution. Elles ne peuvent pas utiliser les faits recueillis ultérieurement, alors gardez leurs conditions simples.
Galaxy lit aussi meta
Lorsque vous installez un rôle depuis Ansible Galaxy, celui-ci lit meta/main.yml et récupère automatiquement toutes les dépendances qui y sont répertoriées.
Gardez des dépendances honnêtes
Ne répertoriez un rôle comme dépendance que s’il doit réellement s’exécuter en premier. Les chaînes cachées rendent l’automatisation difficile à comprendre et à déboguer.
Les informations Galaxy se trouvent aussi ici
En plus des dépendances, meta/main.yml contient galaxy_info : la licence, la version minimale d’Ansible et les plateformes. Il documente la manière dont un rôle doit être utilisé.
Vérification rapide
Rappelez-vous où déclarer qu’un rôle doit s’exécuter avant un autre.
Récapitulatif
Répertoriez les rôles requis sous dependencies dans meta/main.yml : Ansible exécute d’abord cette chaîne, éventuellement avec des variables et des conditions. 🔗
Questions Fréquemment Posées
La leçon « Dépendances de rôles dans meta/main.yml » est-elle gratuite ?
Oui — le texte complet de « Dépendances de rôles dans meta/main.yml » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Ansible Academy, passe à CoddyKit PRO. Le cours Ansible Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Dépendances de rôles dans meta/main.yml » ?
Enchaînez les rôles qui en nécessitent d’autres. Tu pratiques Ansible Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Ansible Academy ?
Aucune expérience préalable n'est requise. Ansible Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Dépendances de rôles dans meta/main.yml » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Ansible Academy ?
Oui. Chaque leçon Ansible Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Dépendances de rôles dans meta/main.yml
- defaults ou vars : ordre de remplacement
- include_role et import_role à l’exécution
- allow_duplicates et idempotence des rôles