Masteries

技術的なことや仕事に関することを書いていきます.

ansible-playbookコマンドが終わったタイミングで音を流すと捗る話

ここ最近, Web Appのデプロイやサーバに対する作業などをAnsibleを使って流す事が多くなっています. Ansibleを使えば複数サーバに対して同時並行で作業出来ますし, 何よりAnsible Playbookが「動く作業手順書」になるので, 作業手順の共有や確認が非常に楽です.

ansible-playbookコマンドでPlaybookを流している時, 多分大抵の人はその様子をじっと眺めるのではなく, 裏で別の作業をしている事が多いのではないかと思うのですが, そうなるとansible-playbookコマンドが終わった事に気が付かずにタイムロスが生じる, ということも多々発生してきます.

tmuxのステータスバーや, Growlなどで通知する方法もあるのですが, コーディングや頭を使った作業など, 裏の作業に集中していると気が付かない(目に入らない)という事が多々あったりしました. というわけで, 最近はApp::WithSoundを使って, ansible-playbookコマンドの結果を「音で」通知するようにしたりしています.

SUCCESS=~/.with-sound/success.wav
FAILURE=~/.with-sound/failure.wav

~/.with-soundrcを上記のように設定し, 更に指定した場所に「成功時に流す音」と「失敗時に流す音」を設置すれば, 任意のコマンドをwith-soundコマンドから動かすことで, 終了時のステータスコードに応じて音を流してくれます. 自分の場合, with-sound ansible-playbookapエイリアスを張って, ap -i host hogehoge.ymlのようにして, Playbookを流し込んでいます.

...ちなみに流れる音ですが, 成功時はFinal Fantasyの戦闘勝利時のファンファーレが鳴り, 失敗時はスペランカーで死んだ時の音が鳴るようになっています. 音によって, Playbookを流した結果が明確にわかるので, 非常に捗りオススメです.