在 Flashduty On-call
- 进入 Flashduty 控制台,选择 集成中心 → 变更事件
- 选择 HCP Terraform,填写集成名称
- 如需把变更分派到指定协作空间,在集成的 路由 中按标签(例如
organization、workspace)配置规则 - 点击 保存,复制生成的 推送地址
在 HCP Terraform 中配置
通知按工作区配置,每个需要接入的工作区配置一次。需要该工作区的管理员权限。
1
打开通知设置
进入工作区,选择 Settings → Notifications,点击 Create a notification。
2
填写推送地址
- Destination:选择 Webhook
- Name:填写便于识别的名称,例如
Flashduty - Webhook URL:粘贴 Flashduty 集成的完整推送地址
- Token:留空即可,Flashduty 通过推送地址中的
integration_key鉴权
3
选择触发事件
- 在 Run Events 中选择 All events
- 在 Workspace Events(漂移检测、自动销毁等)中选择 No events,Flashduty 会忽略这类通知
- 点击 Create a notification
tfe Provider 管理这项配置:tfe_notification_configuration 资源设置 destination_type = "generic"、url 为推送地址、triggers 为 ["run:created", "run:planning", "run:needs_attention", "run:applying", "run:completed", "run:errored"]。
一条变更是什么
状态映射
Done、Failed 和 Canceled 是结束状态,Flashduty 会记录变更结束时间。
planned_and_finished 表示只做了 Plan 的 Run(无变更或 Plan-only),同样记为 Done,可以通过 run_status 标签区分。
以下推送返回成功但不生成变更:保存配置或 Send a test 时的验证请求(trigger 为 verification)、健康评估通知(assessment:drifted、assessment:check_failure、assessment:failed)和工作区通知(workspace:auto_destroy_reminder、workspace:auto_destroy_run_results、workspace:deleted)。
变更内容
标签可用于路由和在变更列表中筛选:
常见问题
为什么没有收到变更?
为什么没有收到变更?
- 确认通知配置已启用,且勾选了 Run Events。只勾选 Workspace Events 时不会产生变更
- 在通知配置页面查看最近的推送记录和 Flashduty 的响应
- 通知按工作区配置,确认 Run 所在的工作区配置了该通知
重复推送会重复记录吗?
重复推送会重复记录吗?
不会。同一 Run、同一状态、同一时间的事件只记录一次。
漂移检测(Drift)会生成变更吗?
漂移检测(Drift)会生成变更吗?
不会。健康评估反映的是资源状态偏离配置,不是一次变更,Flashduty 收到后返回成功并忽略。
推送返回 InvalidParameter 错误?
推送返回 InvalidParameter 错误?
unsupported notifications[].trigger或unsupported notifications[].run_status:收到了 Flashduty 尚未支持的触发事件或 Run 状态,请联系我们run_id is missing:推送内容不完整,请确认推送来自 HCP Terraform 的 Webhook 通知