2015-03-26

デフォルトのAnsibleで牛が出る

TL;DR

Ansibleはcowsayがインストールされている場合、cowsayを介してログを出力する仕様になっている。

しかし、cowsayがデフォルトで入っているLinux Mintでは否が応でも大量の牛を見ることに…。

見つけた経緯

最近構成管理ツールを使った環境構築を始めた。

最初Fedora用にとItamaeを使っていたのだが、

Linux Mintでpackageリソースが動かないからとAnsibleへ移行した。

(原因はItamaeではなく内部で使ってるspecinfraにある気がする)

幸い、roleがcookbookと似ており、移行もそれほど苦労せずに済んだ。

Fedora用のplaybookがあらかた完成したので、

今度はLinux Mintのものを、と思ってAnsibleを動かしてみたのだが、

何やら動作がおかしい。

ログアスキーアートと共に出力されるようになった。

PLAY [localhost] ************************************************************** 

GATHERING FACTS *************************************************************** 
ok: [localhost]

 __________________ 
< PLAY [localhost] >
 ------------------ 
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||


 _________________ 
< GATHERING FACTS >
 ----------------- 
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

最初Linux Mint向けのパッケージ特殊仕様になっていると思い、

pipを使って入れなおしてみたが何も変わらず。

再度apt-getで再インストールしても同じだった。

疲れたので原因探求をやめ、

「そういえば、Itamaeの記事で同じアスキーアート見たなー」と思って、

なんとなくでItamaeの記事を読み返してみると、

どうやらcowsayというツールを使うことで牛のアスキーアートを出力できるようだった。

http://qiita.com/tbpgr/items/b47510b01db8697f94c1

とりあえず「Ansible cowsay」でググった。

まさかAnsibleのような真面目なプロダクトでそんなことあるわけ…

と思っていたら本当にcowsayが原因だった。びっくりした><

なにか変な夢でも見てるんだろうと思ったが夢ではなかった。

https://github.com/shkumagai/ansible-doc-ja/blob/master/playbooks2.rst#id26

解決策

Linux Mintではcowsayがデフォルトで入っている。

そのため、牛が出ないようにするには、

export ANSIBLE_NOCOWS=1

bashrcなりzshrcなりに↑のように書くか、

http://docs.ansible.com/faq.html#how-do-i-disable-cowsay

[defaults]
nocows = 1

ansible.cfgに↑のように書くか、

https://support.ansible.com/hc/en-us/articles/201957877-How-do-I-disable-cowsay-

cowsayを削除するかすればいいようだ(やりかたは色々ある)

Ansibleを開発している方々は、

slやcowsayのようなジョークコマンドシステム最初から入ることはない。入れる人は分かっててやっているだろう。」

と踏んでいたのかもしれないが、Linux Mint場合はそうでない…。

  • http://anond.hatelabo.jp/20150326193854

    Mintがおかしい

    • Mintの問題なのか…

      cowsayを削除したらターミナルを起動する度に「bash /usr/bin/mint-fortune: そのようなファイルやディレクトリはありません」と表示されるようになったので、 確かに何かおかしい気はする…。...

記事への反応(ブックマークコメント)

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん