Ansible: Cowsay should not be enabled by default

Created on 24 Mar 2015  ·  12Comments  ·  Source: ansible/ansible

Having cows fill my screen when running a playbook is not the expected behavior, and makes it hard to visually parse the output of ansible. Since cowsay is enabled not by a setting, but just by the presence of the cowsay binary on the system, it is a surprise whether or not cows will appear when I run ansible-playbook on a new system.

Instead of putting the burden of setting an environment variable on people who don't want cows, the default should be normal text output with no cows. The environment variable should be renamed from "ANSIBLE_NOCOWS" to "ANSIBLE_COWS". This way, we get a sane, unsurprising default, but people can still get their cows if they so desire.

https://github.com/ansible/ansible/pull/10531

feature

Most helpful comment

/ sorry, but we are not contemplating on \
| implementing this feature request in   |
\ the forseable future                   /
 ---------------------------------------- 
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

All 12 comments

Pure heresy, I say! :wink:

< I agree! >
 ----------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

:+1: I have a recurring nightmare of demoing a new CD system to all of engineering and having cows fill my screen and getting fired.

/ sorry, but we are not contemplating on \
| implementing this feature request in   |
\ the forseable future                   /
 ---------------------------------------- 
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

Just wanted to point out one thing that I wasn't sure if the original poster noticed:

Since cowsay is enabled not by a setting, but just by the presence of the cowsay binary on the system,

In ansible.cfg you can set

# don't like cows?  that's unfortunate.
# set to 1 if you don't want cowsay support or export ANSIBLE_NOCOWS=1 
#nocows = 1

if you would like to set this in your environment, just set the configuration option in the ansible.cfg file.

I agree this is very annoying. I also think your attitude towards this very disappointing.

Yes, this is a fun feature. But it's fun exactly three times, then you realize your ansible output is now basically unreadable. I can set it in a config file, yes, but when using e.g. a pull configuration, this isn't really an option. I have to ensure to enable an option in a config file on every host that might ever run some ansible command, just so I can get rid of some easter-egg I never even enabled in the first place. Isn't ansible supposed to make our lives easier?

Maybe consider the fact that many people complain about it and even send PRs as a sign that this is annoying to many people, and please reconsider disabling it by default.

Hay there. I'm moo here.

I herd you mooved on, but cowbell we re-open this issue. Stop hoofing around, I think you've milked this joke long enhoof.
Please remoove this behavior, I beg of you, leather you like it or not, it's caused issues even though there is no farm intended.
I was calfway through provisioning my EC2 servers and this bull appeared. But I digrass, this joke is the worst I'd heifer seen. It's the last straw. I've got no beef with you, but cattle you see that people are upset? Please reconsider.

Bessie of luck to you all.

A co-worker (not cow-orker!) suggested I weigh in on this thorny subject.

/ I'm flattered that a fine tool such as  \
| Ansible holds me in such high regard. I |
| can see that in a Serious Work          |
| Environment, you would want your        |
| terminals to remain largely cow-free. I |
| have no problem with that. Just         |
| remember that I am here if you need me, |
| and I am only an environment variable   |
\ away.                                   /
 ----------------------------------------- 
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

You should be careful with features like this: they can ruin product demonstrations if they fire off unexpectedly. Many years ago I was demonstrating something in Linux. I had to use sudo and I got one of the joke responses that it used to give when you mistyped your password. 'Oh yes, the err, author, does have a bit of an, um, sense of humour.' It's unexpected so you've got nothing prepared, and it makes it look as though the product designers are not taking their role seriously. I know that both Ansible and sudo are serious products, but my audience may not.

My biggest beef with this is that the beef takes way too much vertical space. Having it default to off would be preferred.

biggest beef

I see what you did there...

Was this page helpful?
0 / 5 - 0 ratings

Related issues

rokka-n picture rokka-n  ·  3Comments

rchady picture rchady  ·  3Comments

renaudguerin picture renaudguerin  ·  3Comments

adamprato picture adamprato  ·  3Comments

RaymiiOrg picture RaymiiOrg  ·  3Comments