【发布时间】:2019-10-22 14:01:11
【问题描述】:
我需要在我的 yml 文件(构建管道)中设置执行阶段的条件。
条件是repo名称中必须包含“application”关键字,如果不是则需要忽略stage;
我的代码是这样的
- stage: deploy
condition: contains(variables['Build.Repository.Name'],'application')
dependsOn: build
jobs:
- template: deploy-snapshot-jobs.yml@pipelines-templates
它不是这样工作的,我认为解释器不会用存储库名称替换 variables['Build.Repository.Name'] 因为当我使用存储库名称的文字值时它工作正常
任何帮助如何才能让这些工作人员?
【问题讨论】:
-
我无法重现您的问题,我尝试了条件并跳过了阶段。 (我没用模板,可能有关系吧?)
-
如果repo名称包含'application'阶段也将被跳过,您可以通过repo名称包含的任何内容更改'application',将被跳过,你能确认吗?
-
这是工作变量['Build.DefinitionName']
-
我的错!即使我的回购包含我在条件中输入的单词,也跳过了这个阶段。
-
@AnouarBAKRI,嗨,最近怎么样?我的回答能帮你解决问题吗?如果是,您可以接受答案,因此其他 SO 用户将能够看到该解决方案是否有效。如果您仍然遇到一些问题,请随时在此处发表评论:-)
标签: azure-devops azure-pipelines