There are some tasks I run to collect info, and if they fail, oh well… I have ignore_errors: true in there. But sometimes there could be a lot of output from a “failed” task that I just don’t want to see. How can I tell my task to not echo back any output to stdout?
Could this example [1] work?
- name: secret task
shell: /usr/bin/do_something --value={{ secret_value }}
no_log: True
# Maybe conditional, when an error arises?
register: result
no_log: True
when: result|failed
[1] http://docs.ansible.com/faq.html#how-do-i-keep-secret-data-in-my-playbook
No, no_log just suppresses logging. Already found and tried it ![]()
Anyone?
no_log in 1.8 does in fact block output to the callbacks in general.
Have you tried on 1.8 (devel – releasing VERY soon now), and if so, can you clarify more about what you are looking for?
Awesome! No, I have not tried it, as I get my ansible from MacPorts. Hopefully as soon as 1.8 is out the port maintainer will release there.
Basically, when I’m executing a task simply to get some output, I don’t want to see:
TASK: [postfix | Check if SMTP submission is already allowed via IPv6] ********
failed: [jedis-test] => {“changed”: true, “cmd”: “grep ‘^-A\ INPUT\ -p\ tcp\ -m\ state\ --state\ NEW\ -m\ tcp\ --dport\ 587\ -j\ ACCEPT’ /etc/sysconfig/ip6tables >/dev/null 2>&1”, “delta”: “0:00:00.002819”, “end”: “2014-11-24 16:35:55.098774”, “rc”: 1, “start”: “2014-11-24 16:35:55.095955”}
…ignoring
And some tasks, like checking to see if our McAfee is there, can generate a page of angry red text. Since I really don’t care what stdout is, I’d rather just see:
TASK: [postfix | Check if SMTP submission is already allowed via IPv6] ********
and then move on to the next task ![]()
Thanks yet again, and thanks for such an awesome piece of software! I’m using ansible for more and more tasks, and loving it!