13.2. UI を使用した通知の作成
通知を追加するには、次の手順を実行します。
前提条件
- リポジトリーが作成済みである。
- リポジトリーの管理者権限がある。
手順
- Quay.io のリポジトリーに移動します。
- ナビゲーションペインで、Settings をクリックします。
- Events and Notifications カテゴリーで、Create Notification をクリックして、リポジトリーイベントの新しい通知を追加します。Create notification ポップアップボックスが表示されます。
Create repository ポップアップボックスで、When this event occurs ボックスをクリックしてイベントを選択します。次のタイプのイベントの通知を選択できます。
- リポジトリーへのプッシュ
- イメージビルドの失敗
- イメージビルドのキューへの追加
- イメージビルドの開始
- イメージビルドの成功
- イメージビルドのキャンセル
- イメージの有効期限トリガー
イベントの種類を選択したら、通知方法を選択します。次の方法を使用できます。
- Quay 通知
- メール通知
- Webhook POST
- Flowdock チーム通知
- HipChat ルーム通知
Slack 通知
選択した方法に応じて、追加情報を入力する必要があります。たとえば、E-mail を選択した場合は、メールアドレスと通知タイトル (省略可能) を入力する必要があります。
- イベントと通知方法を選択したら、Create Notification をクリックします。
13.2.1. イメージ有効期限の通知の作成
イメージ有効期限イベントのトリガーは、メール、Slack、Webhook などを通じてユーザーに通知するように設定でき、リポジトリーレベルで設定できます。トリガーは、任意の日数経過後に有効期限が切れるイメージに対して設定でき、自動プルーニング機能と連携して動作できます。
イメージの有効期限通知は、Red Hat Quay v2 UI か、createRepoNotification
API エンドポイントを使用して設定できます。
前提条件
-
FEATURE_GARBAGE_COLLECTION: true
がconfig.yaml
ファイルで設定されている。 -
オプション:
FEATURE_AUTO_PRUNE: true
がconfig.yaml
ファイルで設定されている。
手順
- Red Hat Quay v2 UI で、Repositories をクリックします。
- リポジトリーの名前を選択します。
-
Settings
Events and notifications をクリックします。 - Create notification をクリックします。Create notification ポップアップボックスが表示されます。
- Select event… ボックスをクリックし、Image expiry trigger をクリックします。
-
When the image is due to expiry in days ボックスに、イメージの有効期限の何日前にアラートを受け取るかを入力します。たとえば、1 日の場合は
1
を使用します。 Select method… ボックスで、次のいずれかをクリックします。
- メール
- Webhook POST
- Flowdock チーム通知
- HipChat ルーム通知
- Slack 通知
-
選択した方法に応じて、必要なデータを入力します。たとえば、Webhook POST を選択した場合は、
Webhook URL
を入力します。 - オプション: POST JSON body template を指定します。
- オプション: 通知の Title を入力します。
- Submit をクリックします。Events and notifications ページに戻ると、通知が表示されます。
オプション: config.yaml ファイルで
NOTIFICATION_TASK_RUN_MINIMUM_INTERVAL_MINUTES
変数を設定できます。このフィールドを設定すると、有効期限が切れるイメージがある場合に通知が自動的に送信されます。デフォルトでは300
(5 時間) に設定されていますが、必要に応じて調整できます。NOTIFICATION_TASK_RUN_MINIMUM_INTERVAL_MINUTES: 300 1
- 1
- デフォルトでは、このフィールドは
300
、つまり 5 時間に設定されています。
検証
縦の省略記号メニュー→ Test Notification をクリックします。次のメッセージが返されます。
Test Notification Queued A test version of this notification has been queued and should appear shortly
選択した方法に応じて、メール、Webhook アドレス、Slack チャネルなどを確認します。送信される情報は次の例のようになります。
{ "repository": "sample_org/busybox", "namespace": "sample_org", "name": "busybox", "docker_url": "quay-server.example.com/sample_org/busybox", "homepage": "http://quay-server.example.com/repository/sample_org/busybox", "tags": [ "latest", "v1" ], "expiring_in": "1 days" }