もふもふ技術部

IT技術系mofmofメディア

コードレビューで発見した良いコードをSlackへ共有できるGitHub Actionを作りました

作ったアクションはこちらです。 [Send awesome code block to Slack] Action!

使い方

  1. SlackでBotを作りトークンをコピーする
  2. GitHub Actionsを設定する

SlackでBotを作る

https://api.slack.com/apps/へいき、Create New Appします。

slack app

From an app manifestを選び、以下のymlを貼り付けてボットを作成します。

display_information:
  name: Awesome code kun
settings:
  org_deploy_enabled: false
  socket_mode_enabled: false
  is_hosted: false
  token_rotation_enabled: false
features:
  bot_user:
    display_name: Awesome code kun
oauth_config:
  scopes:
    bot:
      - chat:write
      - chat:write.public

install slack app

Install Appのページにトークンがあるのでコピーしておきます。

GitHub Actionsを設定する。

GitHubリポジトリ設定ページから、

action secret

SLACK_CHANNELSLACK_TOKEN を登録します。 SLACK_CHANNELの例 random。 SLACK_TOKENには先程SLACKのボット作成時にコピーしたトークンを貼り付けます。

リポジトリに、.github/workflows/awesome.yml というファイルを作ります。

name: 'awesome'
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: mofmof/send-awesome-code-to-slack-action@v0
        with:
          trigger_keyword: '[awesome]'
          github_token: ${{ secrets.GITHUB_TOKEN }}
          github_event_path: ${{ github.event_path }}
          slack_token: ${{ secrets.SLACK_TOKEN }}
          slack_channel: ${{ secrets.SLACK_CHANNEL }}

これで準備は完了です。

いざレビューコメント

awesome-code

無事届きました!

slack-awesome-code