Preciso executar algumas funções na linha de comando para teste e às vezes tenho algumas tarefas ad hoc para aplicar. Então eu uso ansible
para executar a função. Por exemplo:
$ ansible all -i 192.168.1.123, -m include_role -a"name=myrole" -e '@role.json'
Isso funciona bem e imprime muitas informações, mas não imprime -name:
o texto da tarefa. O que quero dizer é o texto que normalmente é impresso ansible-playbook
assim:
TASK [Do this and that...]
Mas ansible
não imprime isso. Sem essas informações, às vezes é difícil dizer onde está exatamente o ansible. Se uma tarefa falhar, será difícil descobrir qual tarefa falhou...
Existe uma maneira de executar funções de maneira ad hoc e também ter mais informações sobre exatamente qual tarefa está sendo executada?
Responder1
Não, o script adhoc ansible não pode imprimir isso. A solução alternativa é criar um manual simples:
---
- hosts: "{{ myhost }}"
tasks:
- import_role:
name: "{{ myrole }}"
Correr com:
ansible-playbook /path/roletest.yml -e 'myrole=coolrole myhost=awesomehost' -e '@role.json'