J'essaye de faire un rôle Ansible pour créer MOTD (message du jour) sur le serveur Linux.Ansible: Variable multiligne contenant un tuyau
Je veux ajouter de l'art ASCII dans ce fichier, l'art ASCII est défini dans une variable utilisée dans mon modèle. Donc, ma variable d'art ASCII doit être multiligne et contenir plusieurs caractères spéciaux.
J'essaie:
motd_asciiart: |
_____ _ _ __ _
/___| | | | /_| |
\ `--.| |_ __ _ ___| | _______ _____ _ __| |_| | _____ __
`--. \ __/ _` |/ __| |//_ \ \// _ \ '__| _| |/ _ \ \ /\//
/\__//|| (_| | (__| < (_) \ V/__/ | | | | | (_) \ V V/
\____/ \__\__,_|\___|_|\_\___/ \_/ \___|_| |_| |_|\___/ \_/\_/
Mais j'ai cette erreur:
ERROR! Syntax Error while loading YAML.
The error appears to have been in '/Users/ydavid/Devops/ansible2/roles/umanit.motd/defaults/main.yml': line 3, column 9, but may be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
_____ _ _ __ _ /___| | | | /_| | ^here
J'essaie d'ajouter "sur la première et la dernière ligne, j'ai une autre erreur:
ERROR! Syntax Error while loading YAML.
The error appears to have been in '/Users/ydavid/Devops/ansible2/roles/umanit.motd/defaults/main.yml': line 7, column 74, but may be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
/\__//|| (_| | (__| < (_) \ V/__/ | | | | | (_) \ V V/ \____/ \__\__,_|\___|_|\_\___/ \_/ \___|_| |_| |_|\___/ \_/\_/ " ^here
Pouvez-vous me aider?
Pouvons-nous échapper à un bloc entier?
J'ai trouvé ce rôle (https://github.com/picotrading/ansible-motd) qui fait la même chose mais l'art ASCII est doublé, si je peux je veux éviter cela.
Merci pour la suggestion. Avec cette solution, comment puis-je utiliser un fichier différent pour mon hôte? J'ai besoin d'un fichier générique et d'une exception pour les hôtes spécifiques – voidAndAny
Bien sûr. Je ne vois pas comment cela se rapporte à la question initiale. Vous pouvez utiliser host_vars, group_vars ou inclure le fichier en fonction du nom d'hôte. – techraf