我有一个相当简单的场景,一个主分支然后当我想做一个生产发布时我想用例如标记提交。 vX.X.X.
CI/CD 管道看起来像这样
构建 -> 暂存环境 -> 生产环境
- 对 master 的每次提交都会发送到暂存环境
- 当我向提交添加 vX.X.X 标签时,我希望暂存和生产环境能够触发。
我找到了这个链接 Trigger build when pushing tag to git .我只是不知道如何让它发挥作用。它根本不适合我。
是否有可能以及如何配置 VSTS 以在将标记添加到提交时开始构建?
最佳答案
提交标签推送到master
分支时,构建会分别触发两次(在master分支和标签),需要指定发布后触发的生产环境 不是在暂存环境之后。
构建和发布定义设置如下:
构建定义:
在触发器选项卡中 -> 设置分支过滤器以包括 master
和 refs/tags/v*
-> 保存。
发布定义:
指定 Artifact 过滤器以包含 Staging Environment 的 master
分支 -> 为 Production Environment 触发器选择 After release -> 指定 Artifact 过滤器以包含 refs/tags/v*
生产环境 -> 保存。
如果只有提交被推送到 master
分支 -> 为 master
分支触发构建 -> 创建一个新版本 ->仅部署暂存环境。
如果提交和标签都被推送到 master
分支 -> 触发两个构建(一个用于 master
分支,另一个用于 refs/tags/v*
) -> 创建了两个版本:
关于git - 推送标签时如何触发VSTS构建和发布?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51662042/