通知の使用
CircleCI ではメール通知と Web 通知との連携が可能です。 IRC 通知と Slack 通知も Orb を使って設定することができます。 Slack 通知と Web 通知は、 ワークフローの成功時および失敗時に送信されます。 IRC 通知は、ジョブごとに送信されます。 以下に、最小限の CircleCI 設定ファイルの例を示します。
version: 2.1
jobs:
build:
docker:
- image: cimg/base:2021.04
auth:
username: mydockerhub-user
password: $DOCKERHUB_PASSWORD
steps:
- checkout
- run: <command>
test:
docker:
- image: cimg/base:2021.04
auth:
username: mydockerhub-user
password: $DOCKERHUB_PASSWORD
steps:
- checkout
- run: <command>
workflows:
version: 2.1
build_and_test: # < Slack and email notifications are sent for workflows
jobs:
# IRC notifications are sent for each job.
- build
- test
メール通知の設定と変更
デフォルトのメールアドレスを設定または変更するには、CircleCI アプリケーションの Notifications のページを開きます。 ここでは環境設定もできます。
- All builds in my projects: プロジェクト内のすべてのビルドについて、成功したか失敗したかについてのメールを受け取ります。
- My branches: 変更をプッシュしたブランチでビルドが失敗した場合にメールを受け取ります。
- None: アカウントに関する運営上のメッセージ以外のメールは受け取りません。
複数の組織のメンバーである場合、組織ごとに異なるメールアドレスを指定することができます。
メール通知は以下のように表示されます。
Web 通知の有効化
以下の手順で、Web通知を有効にします。
-
CircleCI のユーザー設定に移動します。 ページ下部の [Web Notifications] トグルを有効にします。
-
通知の許可を促すメッセージがブラウザーに表示されます。 Allow をクリックします。 詳細については下記のスクリーンショットをご覧ください。
過去に CircleCI からの Web 通知送信を拒否している場合、ブラウザで手動で権限を有効にする必要があります。 Google Chrome を使用している場合は、URL バーのロックアイコンをクリックし、Notifications トグルを再び有効にします。
他のブラウザーでも手順は同様ですが、Web 通知の処理については各ブラウザーのドキュメントを参照してください。
Orb を使って通知を送信する
Orb を使って設定ファイルに通知を統合することができます。 CircleCI では、Slack Orb と IRC Orb を提供しています。 サードパーティーの Orb も複数ご利用いただけます。 Orb レジストリでどのような Orb があるかご確認ください。
Slack Orb の使用
CircleCI Slack Orb を使用すると、Slack 通知を config.yml
ファイルから直接統合し、カスタマイズできます。 以下に、Slack チャンネルにカスタム メッセージの通知を送信する設定ファイルの例を示します。
version: 2.1
orbs:
slack: circleci/slack@4.9.3
jobs:
notify:
docker:
- image: cimg/base:2021.04
auth:
username: mydockerhub-user
password: $DOCKERHUB_PASSWORD
steps:
- slack/notify:
custom: |
{
"blocks": [
{
"type": "section",
"fields": [
{
"type": "plain_text",
"text": "*This is a text notification*",
"emoji": true
}
]
}
]
}
event: always
workflows:
send-notification:
jobs:
- notify:
context: slack-secrets
Slack Orb の使用で、サンプルを使ったフルチュートリアルを参照してください。
CircleCI の Slack Orb は、承認待ちについての Slackチャネルへの通知など、様々な種類の通知にも使用できます。 こうした使用例については、 CircleCI の Slack Orb のページを参照してください。
IRC Orb の使用
IRC Orb は Slack Orb に似ていますが、CircleCI からカスタムの IRC 通知を送信することだけが主な機能です。 以下の設定ファイルの例を参照してください。
version: 2.1
orbs:
irc: circleci/irc@0.2.0
jobs:
build:
docker:
- image: <Docker image>
auth:
username: mydockerhub-user
password: $DOCKERHUB_PASSWORD
steps:
- checkout
- irc/notify:
server: <IRC-server-to-connect-to> # default: IRC_SERVER environment varible.
port: <6667> # default: 6667 if left blank.
channel: <the IRC server to post in> # required parameter
nick: <Your IRC nickname> # default: `circleci-bot`
message: <Build complete!> # default: "Your CircleCI Job has completed."
workflows:
your-workflow:
jobs:
- build
括弧内の値 (<>) をご自身の詳細情報に置き換えてください。