У меня есть задача, которую я хочу выполнять много раз на протяжении всей игры
e.g.
- name: run_many
debug:
msg: "I have been run"
Теперь, вместо добавления этого шага, я могу заранее / определить его, чтобы я мог просто сказать:
- < run this pre-defined step >
Причина в том, что мне нужно запускать это много раз, и я не хочу, чтобы ему приходилось обновлять его в x количестве мест, если это когда-либо понадобится.
At в тот момент, когда я выполняю include_tasks: который, очевидно, добавляет это к моему выводу в качестве шага - но является ли это лучшим / стандартным способом сделать что-то вроде этого?
текущая настройка, которая работает:
$ls ./roles/demo/tasks/
main.yml run_many.yml
$cat main.yml
---
- include_tasks: run_many.yml
- include_tasks: run_many.yml
Вывод воспроизведения:
TASK [demo: include_tasks] *******************************************************************************************************************************
task path: /home/ansible/roles/demo/tasks/main.yml:3
included: /home/ansible/roles/demo/tasks/run_many.yml for localhost
TASK [demo: run_many] ************************************************************************************************************************************
task path: /home/ansible/roles/demo/tasks/run_many.yml:1
ok: [localhost] => {
"msg": "I have been run"
}
TASK [demo: include_tasks] *******************************************************************************************************************************
task path: /home/ansible/roles/demo/tasks/main.yml:4
included: /home/ansible/roles/demo/tasks/run_many.yml for localhost
TASK [demo: run_many] ************************************************************************************************************************************
task path: /home/ansible/roles/demo/tasks/run_many.yml:1
ok: [localhost] => {
"msg": "I have been run"
}