Google App Scriptで書かれた,Slack上で動くGitHubでの行動通知Bot.
指定した時間帯になると,Slackに1日の行動を通知してくれます.
main.gs
をGoogle Driveに保存して実行します.
下記の手順に従ってください.
- https://drive.google.com/ を開き,左上にある「新規」ボタンをクリック
- 出てきたメニューから「その他 > Google App Script」を選択
- 空のプロジェクトが作成されるので,
main.gs
をコピーしてブラウザのエディタ内に貼り付けて保存する.
このアプリは,3つのプロパティを設定する必要があります.下記の手順に従って設定を行ってください.
- まず,編集のプロジェクト画面のメニューにある「ファイル > プロジェクトのプロパティ」をクリック
- 「プロジェクトのプロパティ」画面のメニュー内にある「スクリプトのプロパティ」をクリック
- 「+ 行を追加」をクリックすればプロパティの追加ができます
設定するプロパティは下記の3つです.
- GITHUB_TOKEN
- USER_NAME
- SLACK_WEBHOOK_URL
個人アクセストークンを発行する - GitHub Docsに従いトークンを発行します.ステップ7.で付与するスコープは一番上のrepo
にチェックを入れればOK
GitHubアカウントのユーザ名.https://github.com/<USER_NAME>
に該当する.
SalckでのIncoming Webhookの利用|Slackに従って発行する.BOTの作成もこのページの手順に従ってください.
日々開発をしていく中で様々な実装を行い,学ぶことがたくさんある. ただ,開発を進めることだけに囚われてしまうと,学んだことや調べたことを振り返る機会が減り身につくものも身につかないと感じた.
エンジニアの1日のGitHub上の行動を毎日決まった時間に通知することで,振り返りの機会を作る.
- 「毎日決まった時間」にすることで,1日の振り返りが習慣化するというメリットがある.
- Slack届いたメッセージにコメントをすることで,見た目もすっきりした状態でこれまでの振り返りを蓄積していける
- GAS
サーバーにデプロイせずに利用できるため開発コストが低くなること,時間によるトリガーの設定が簡単であることからGASを選択しました.
1日のコミット数をブランチ毎,リポジトリ毎に一覧化し,Slackへメッセージを送ります.
- Issueを作った
- Issueにコメントした
- PullRequestを作った
- PullRequestにレビューコメントした
などもメッセージに追加していきたいと考えています.
- コミット数
- Pull Request数
- レビュー数(どれだけ他人のコードを読んだか)
- Issue数
- 発信
- Twitter投稿
- Qiita記事