我正在努力确保如果我们的构建失败,我们得到slack的通知,但只针对我们的主分支。
下面是我们的slack通知代码:
hooks:
on_fail:
steps:
notify:
image: codefresh/slacknotifier
environment:
- SLACK_HOOK_URL=<webhook url>
- SLACK_ATTACHMENTS=<slack message>
when:
branch:
only:
- /^(main)/i
目前,它仍然是懒散的特性分支。如有任何帮助,不胜感激。
你可以像对待普通步骤一样对待实际的代码刷新钩子步骤,所以你可以尝试在管道上调用或设置一个条件,或者与分支一起设置另一个读取branch
属性的步骤。
通用
on_fail:
steps:
notify:
image: codefresh/slacknotifier
environment:
- SLACK_HOOK_URL=<webhook url>
- SLACK_ATTACHMENTS=<slack message>
when:
condition:
any:
myCondition3: workflow.result == 'approval'
基于分支:
on_fail:
steps:
notify:
image: codefresh/slacknotifier
environment:
- SLACK_HOOK_URL=<webhook url>
- SLACK_ATTACHMENTS=<slack message>
when:
branch:
only:
- /^FEATURE-.*/i
最后一个应该适用于所有FEATURE-*
正则表达式,祝你好运lml
参考:https://codefresh.io/docs/docs/ci-cd-guides/pull-request-branches/
我想知道如果这是一个bug,已经修复,因为我运行了几乎相同的代码(至少相同的条件)
version: "1.0"
hooks:
on_fail:
steps:
notify:
type: slack-notifier
arguments:
MODE: text
SLACK_TEXT: "stackoverflow test"
SLACK_HOOK_URL: ${{SLACK_HOOK_URL}}
when:
branch:
only:
- /^(main)/i
,它工作如预期的我
当我不在main上时,我可以在日志中看到:
================ 执行职务挂钩 =================
(2022 - 02 - 28 - t22:48:33.892z)检查部门只在白名单……
[2022-02-28T22:48:33.893Z]正则表达式/^(main)/i的结果:no match
[2022-02-28T22:48:33.894Z]跳过执行。
可能通知来自用户通知设置(https://g.codefresh.io/user/settings)或Slack集成设置(https://g.codefresh.io/account-admin/account-conf/integration/slack)