ログイン

デプロイ情報の記録設定をする

Waroom にデプロイ情報を記録する設定をすると、インシデント対応時の直近のデプロイの差分の確認や、インシデントの分析画面でデプロイとインシデントの割合を確認ができます。

1. Integration を追加する

インテグレーション一覧画面の Deployment Tracking Integration の「インテグレーションを追加する」ボタンを押します。

プラットフォームとサービスを選択します。プラットフォームは現在 GitHub のみ選択できます。

2. Integration Key をコピー

追加した Deployment Tracking Integration の項目に Key が表示されているのでそれをコピーしてください。

3. デプロイ情報を Waroom へ送信する

デプロイ履歴は、複数のリポジトリを登録することができます。

Curl で送信する

Waroom のデプロイ情報の送信先エンドポイントに対して情報を送信します。

curl --location --request POST 'https://api.app.waroom.com/v1/organizations/[組織名]/services/[サービス名]/deployments' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer [インテグレーションキー]' \
  --data-raw '{
    "platform": "[プラットフォーム名]",
    "environment": "[環境名]",
    "ref": "[デプロイの参照先]",
    "description": "[デプロイの詳細文]",
    "repository_owner": "[リポジトリオーナー名]",
    "repository_name": "[リポジトリ名]"
  }'

ペイロード

項目説明
組織名Waroom で作成した組織名を入力します
サービス名Waroom で作成したサービス名を入力します
インテグレーションキーコピーしたインテグレーションキーを入力します
プラットフォーム名送信元のプラットフォーム名(現在は github のみ対応)を入力します
環境名環境を表す任意の文字列を入力します(Production、Staging、Development など)
デプロイの参照先Git のコミットハッシュを入力します
デプロイの詳細文(任意)そのデプロイの詳細情報を入力します
リポジトリオーナー名デプロイされたコードのリポジトリの所有者名です(例: topotal/waroom の場合は topotal
リポジトリ名デプロイされたコードのリポジトリ名です(例: topotal/waroom の場合は waroom

GitHub Actions で送信する

Waroom にデプロイ情報を送信するための GitHub Action として waroom-deployment-tracking-action を公開しています。

on:
  push:
    branches:
      - main
jobs:
  Deploy:
    name: Deploy
    steps:
      - name: Waroom Deployment Tracking
        uses: topotal/waroom-deployment-tracking-action@v1
        with:
          organization: 'topotal'
          service: 'shop_admintool'
          key: ${{ secrets.WAROOM_DEPLOYMENT_TRACKING_INTEGRATION_KEY }}
          environment: 'production'

4. デプロイ情報が記録されたか確認する

デプロイ情報はインシデント詳細画面とインサイト画面に反映されます。

インシデント詳細画面で確認する

送信したデプロイ情報に設定したサービスと同じサービスから発生したインシデントの詳細画面にデプロイ履歴が表示されます。

インサイト画面で確認する

分析画面の「Incident Deployment Ratio」のデプロイ数がカウントされていればデプロイ情報が記録されています。