27
26

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

bitbucketとwerckerでhubotをherokuに自動deployしてslackに通知する

Posted at

ここを参考にやる

wercker上での作業

1. ユーザ登録

ここからやる。
Sign upするとメールが送られてくるのでリンクをクリックすると、ログイン出来る。

2. アプリケーション登録

  • Add an applicationをクリックする
  • Choose a Git provideでBitbucketを選択して認証する
  • Select a repositoryでCIしたいリポジトリを選択
  • Configure accessでrecommendedされているAdd the deploy key to the selected repository for meを選択
  • Setup your wercker.ymlでファイル作って自分のリポジトリにpush
  • Awesome! you are all done!になるのでFinish!Make my app public

3. Settings→DEPLOY TARGETSでdeployの設定

  • Add deploy targetで追加
  • herokuを選ぶ
  • Deploy target nameはお好みで。 productionとかかな
  • Auto deployにチェックを入れる。ブランチはmaster
  • Herokuのapi keyとかdeployするHeroku app nameとか。英語を読めば簡単に登録出来る。

だいぶメモが雑になって来た

Bitbucket上での作業

  • さっき作成したwercker.ymlを追加するだけでいいはず。
  • これでmasterにMergeすると自動deployされる。。はず。
  • Deployの履歴は、werckerのDeploysで確認出来る。

雑なメモだ

ここまでやれば、masterにMergeされたりpushされると自動deployされる環境は整う。

Deployしたらslackに通知する

これが便利そうなのでこれを使う

1. slack側の設定

  • IntegrationIncoming WebHooksを追加してWebhook URLを得る

2. wercker側の設定

  • SLACK_WEBHOOK_URLという環境変数を設定する
  • Settings→PIPELINE→Add new variableでSLACK_WEBHOOK_URLとslack側で取得したWebhook URLを設定する

3. wercker.ymlを変更する

以下のような感じにした。

hubotをdeployするだけなので、いろいろけずった。
もっと削れるのかな。この辺の書き方がよくわからなくて、何度も失敗した。

box: wercker/nodejs
build:
steps:
- script:
name: echo hubot build
code: |
echo "hubot build"
after-steps:
- wantedly/pretty-slack-notify:
webhook_url: $SLACK_WEBHOOK_URL
deploy:
steps:
- heroku-deploy
after-steps:
- wantedly/pretty-slack-notify:
webhook_url: $SLACK_WEBHOOK_URL

所感

簡単にいろいろ出来て便利だったー

27
26
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
27
26

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?