【发布时间】:2019-10-24 20:12:08
【问题描述】:
我很困惑为什么会发生以下两件事:
- 当我将一些提交推送到我的
feature_foo分支时,会运行 2 个工作流程(构建):针对最新提交的主要工作流程,以及针对 我的上一个 PR 的部署工作流程,两者都在 @987654324 @。由于我还没有发布 PR,我希望只运行主要工作流 - 在同一分钟内,
artifacts+\<my-bitrise-project-id\>@bitrise.io向我发送了 2 封相同的电子邮件通知。我知道 PR can lead to two builds(因为 PR 在技术上是一种推动),但我怀疑这是这里的问题,因为我还没有创建 PR。
这是我当前的 bitrise.yml 触发图:
trigger_map:
- push_branch: "*"
workflow: primary
- pull_request_source_branch: "*"
pull_request_target_branch: feature
workflow: deployment-staging
- tag: "v*.*.*"
workflow: deployment-production
顺便说一下,这是我想要的 3 工作流设置:
- 在 2 次运行集成测试(主要工作流程):
- 代码推送到 *(任何分支)
- 将请求拉到
feature分支(在创建 PR 时,即预合并状态,以便贡献者可以预览他们提议的更改的潜在影响)
- 当 从 * 到
feature分支的 PR 合并时,运行部署(部署工作流)到 staging - 当标签
v*.*.*被推送时,将部署(部署工作流)运行到生产
实现此目的的正确 bitrise.yml 配置是什么? docs 没有说明我们如何按状态区分 PR(已发布与已合并)。我只想在审查代码后进行部署。
谢谢
【问题讨论】:
标签: continuous-integration continuous-deployment bitrise