Capistrano のデプロイを Slack に通知するためのプラグインに capistrano-slackify を使っている。
デフォルトの emoji は 👻 で、いまいち気分が盛り上がらない。なぜオバケなのか。設定は set :slack_emoji, ':man:'
のように変えることは出来るが、デプロイ開始・成功・失敗がすべて同じ emoji だと、視覚的に分かりづらい。それぞれ異なる emoji を表示して、デプロイをやっていきたい。
capistrano-slackify は単純なタスクなので、 emoji の変更も簡単だった。以下のようなタスクを書く。
before 'slack:notify_finished', :deploy_success do
set :slack_emoji, ':success_emoji:'
set :slack_username, 'Capistrano (success)'
end
before 'slack:notify_failed', :deploy_failure do
set :slack_emoji, ':failure_emoji:'
set :slack_username, 'Capistrano (failure)'
end
Slack のユーザ名も変更するところがポイントで、ここが同じだと発言が連続したときに emoji が省略されてしまう。せっかくなので Success
とか Failure
とか、状態もユーザ名につっこむことにした。
結果として、以下のようになった。デプロイ開始時はアイスクリーム。成功するとブロッコリーになる。
失敗すると鬼になる。
これによって、デプロイ時のわくわくが増した。失敗したときは、鬼だからしょうがないなって気持ちになって、残念さやイライラが減って、次はこいつをブロッコリーに変えてやるんだという気持ちでデプロイに励めるようになった。
なお、これらの emoji は @kozzzo さんが作ってくださったアイコンです。アイコンのモチーフになっているのはあの人です。感謝。