Ast*_*rix 6 yaml azure-devops azure-pipelines
我已在名为“DevOps”的单独存储库中添加了 .Net CI CD 管道的 yaml 模板。每个 .Net 服务管道都从“DevOps”调用此 yaml 模板。
在 DevOps 中,我有两个分支 - 一个是主分支,一个是 beta 分支。
.Net 服务管道中源/开发分支的所有触发器都应使用“DevOps”测试分支中的模板。.Net 服务管道中主分支的管道触发器应使用 main 中的模板。-这是要求。
我使用了正则表达式/if条件/语法,使用了when/if,所有这些要么抛出表达式/条件错误,要么只是从main中获取模板。下面是我所做的各种尝试的屏幕截图(较旧的已评论)。
有没有办法在存储库语法中实现条件?
更新:我已经根据 Kotaro 的解决方案更新了管道,如下所示。我希望可以在资源语法中添加变量
但这是我尝试运行管道时得到的结果:
小智 7
这个怎么样?
trigger: none
pr: none
resources:
repositories:
- repository: main
type: git
ref: main
name: xxxxx/DevOps
- repository: beta
type: git
ref: beta
name: xxxxx/DevOps
steps:
- ${{ if ne(variables['Build.SourceBranchName'], 'main') }}:
- template: aaaaa.yml@beta
- ${{ if eq(variables['Build.SourceBranchName'], 'main') }}:
- template: aaaaa.yml@main
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8400 次 |
| 最近记录: |