#ansible
Вопрос:
Я пытаюсь повторно использовать существующую роль, используя include_role
функцию в ansible, но, похоже, я не могу найти способ передать файлы внутри files/testrole1.yaml
папки из вызывающей роли, и она всегда использует файлы из общей роли. Вот структура и код, которые я придумал до сих пор:
---
- name: importing tasks from role1
include_role:
name: service-deploy-role1
tasks_from: "{{item}}"
loop:
- install
- setup
Приведенный выше код всегда использует testrole1.yaml file
. Можно ли передать testrole2.yml
, когда я вызываю задачу установки из service-deploy-role1
?
Ответ №1:
Я мог бы найти решение:
---
- name: workaround
set_fact:
role_location: "{{ role_path }}"
- name: debug role path
debug:
msg: "{{ role_location }}"
- name: importing tasks from role1
include_role:
name: service-deploy-role1
tasks_from: "{{item}}"
vars:
role_dir: "{{ role_location }}"
loop:
- install
- setup