nakayumcの技術ブログ

エンジニア2年目のブログです。

ansible-playbookコマンドでcowsayさせる

はじめに

coysayコマンドはジョークコマンドとして有名です。

$ echo Hello. I'm a cow. mooooo. | cowsay
 _______________________
< Hello. I'm a cow. mooooo. >
 ---------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |

そのcowsayがインストールされている環境ではansible実行時に、デフォルトで牛が表示されます。
今回は、そのやりかたです。

epelリポジトリが入ってない方は下記コマンドで入れてください。

$ sudo yum install epel-release

cowsay という牛が表示できるパッケージをインストールします。

$ sudo yum install cowsay

基本的にこれで準備完了です。

Playbookを実行すると・・・・

実際に実行させてみます

モ~~~~~~~。
$ ansible-playbook -i inventory/inventory.ini test.yml 
 _______________
< PLAY [node01] >
 ---------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
 ____________________
< TASK [output message.] >
 ------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
・・・

牛じゃなくて猫にしたい

生粋のにゃんしぶるユーザの方は、牛じゃなくて猫がいいですよね、、

1.cowsayに猫を追加する

/usr/share/cowsay/cat.cow に下記を貼り付けます。
UTF-8では文字化けするので、UTF-16 LEで保存しました。

##
## A cow wadvertising the World Wide Web, from lim@csua.berkeley.edu
##
$the_cow = <<EOC;
   ∧,,∧
  (,,・∀・)
 ~(_u,uノ
EOC

2.ansible.cfgの記述

デフォルトでは牛が出力されるようになっています。
ねこに変更するには、ansible.cfgに以下を記述します。

[defaults]
cow_selection = cat

3.出力結果

にゃ~ん。

< PLAY [node01] >
 ---------------
   ∧,,∧
  (,,・∀・)
 ~(_u,uノ
 ________________________
< TASK [output message.] >
 ------------------------
   ∧,,∧
  (,,・∀・)
 ~(_u,uノ

ok: [node01] => {
    "changed": false,
    "msg": "Hello. I'm a cat. nyaaaan."
}
・・・

かわいいですね。