Salut,
j'ai deux problèmes différents avec Ansible, donc je fais deux threads séparés.
je suis de la veille école et utilise vi, et non pas vscode. donc la hiérarchie standard des roles Ansible (roles/x/tasks), en divisant un playbook en multiples petits fichiers ne me convient pas. moi j'aime bien avoir un gros playbook avec tasks + handlers dans un seul fichier. disons playbook "old-school ci-après.
c'est ce que je faisais jusqu'à présent *1 mais j'arrive aux limites de ce schéma, car dans les pipelines CI/CD je dois faire une multitude de conditions afin de lancer tel ou tel playbook old-school depuis le script ci/cd.
donc j'ai exploré un peu comment faire de beaux playbooks inclusifs avec:
- include_tasks - import_tasks - roles: // include_role
bah le résultat n'est pas fameux. avec include_tasks et import_tasks, cela bloque évidemment à `handlers:` puisque ce n'est pas une tâche. Et avec include_role + `from_tasks: ../old-school-role/tasks-old-school-role.yml`, comme tentative d'éviter la hiérarchie de répertoire standard des roles, j'obtiens cela:
ERROR! Failed loading '[...]/dehydrated/tasks/../tasks-dehydrated.yml' for role (../dehydrated) as it is not inside the expected role path: '[...]/dehydrated/tasks'
voila, je suis donc résigné et n'ai pas le choix. je vais devoir faire comme tout le monde, accepter la modernité et utiliser la hiérarchie standard des roles Ansible.
si toutefois vous avez une idée de comment détourner Ansible pour garder une structure de dossier non-orthodoxe, tout en bénéficiant des playbooks inclusifs (pas de blagues svp, aucun rapport), faites moi signe...