问题
我想要有条件地设置一个参数,根据哪个分支触发管道。如果触发的分支是feature/automated-testing,,我希望设置一个等于"True“的参数。请看下面的代码。
我的pipeline.yml文件的部分如下所示:
trigger:
branches:
include:
- feature/automated-testing
...
# Global variables for the pipeline
variables:
- name: "triggerRepoName"
value: "$(Build.SourceBranchName)"
stages:
# common stage. Docker build, tag and push
- stage: BuildDockerImage
displayName: "Build docker image"
variables:
...
jobs:
- template: /templates/pipelines/my-prject.yml@templates
parameters:
${{ if eq( variables.triggerRepoName, 'feature/automated-testing') }}:
runTests: "True"
${{ if ne(variables.triggerRepoName, 'feature/automated-testing') }}:
runTests: "False"问题
当我从分支feature/automated-testing推回Dockerfile中的变量runTests时,它是空的。条件语句中的语法有问题吗?
我认为错误在于有条件地设置变量的方式,因此我选择不提供Dockerfile或使用的其他.yml模板.yml。
发布于 2020-11-24 12:39:06
请将variables.triggerRepoName改为variables['triggerRepoName']。它应该能解决你的问题。
https://stackoverflow.com/questions/64986143
复制相似问题