通知
在作业结束或发生某些事情时发送邮件或通道消息
表单的 notifications 规定了谁会收到其作业的消息,以及何时收到:
- 谁:
recipients,即邮件地址;以及channels,即 通知通道的名称(邮件、Slack、Microsoft Teams、Telegram、webhook)。两者 至少需要其一。 - 何时:
onStatus,在作业结束时(success、failed、aborted、warning或any);以及onEvent,在 作业发生某些事情时(launch、relaunch、delete、approve、reject或any)。
notifications:
recipients:
- ops@example.com
channels:
- ops-teams
onStatus:
- failed
onEvent:
- approve
- reject
When you want to send a notification on job-event: an email, and a message to notification channels (Connections > Notifications: Slack, Microsoft Teams, Telegram, a webhook)
Email Templates
Notification emails use HTML templates located in server/templates/email/:
approval.html- Approval request notificationsjobstatus.html- Job outcome notifications (success, failed, aborted, warning)jobevent.html- Job lifecycle event notifications (launch, relaunch, delete, approve, reject)
These templates can be customized by replacing them with your own versions.
In Docker or Kubernetes deployments, mount your custom templates to/app/dist/templates/email/to override the defaults.
Example Docker mount:-v /path/to/custom/templates:/app/dist/templates/email/
A mount at the former location,/app/dist/src/templates/, keeps working and takes precedence.
属性
notifications 对象的属性:
| 属性 | 说明 |
|---|---|
| recipients array | Recipients
A list of email addresses who need to receive a notification. |
| channels array | Channels
The notification channels of Connections > Notifications the notification goes to: Slack, Microsoft Teams, Telegram, a webhook. They get a short message (the form, the job, what happened) with a link to the job. |
| onStatus array | Jobstatus event
A list of jobstatus events you want to send a notification on. Use 选项:
|
| onEvent array | Job trigger events
A list of job lifecycle events (triggers) you want to send a notification on. 选项:
|
示例
通知示例(YAML):
1) Send a notification on failed
定义(YAML):
notifications:
recipients:
- info@ansibleguy.com
onStatus:
- failed
2) Send notifications on job events (launch, relaunch, approve, reject)
定义(YAML):
notifications:
recipients:
- admin@ansibleguy.com
- auditor@ansibleguy.com
onEvent:
- launch
- relaunch
- approve
- reject
3) Send notifications on all events
定义(YAML):
notifications:
recipients:
- admin@ansibleguy.com
onStatus:
- any
onEvent:
- launch
- relaunch
- delete
- approve
- reject