[英]Azure DevOps conditions in parameters
Help me please with creating conditions in parameters in the step template.请帮助我在步骤模板中的参数中创建条件。
I want to change parameters in the template depending on variable.Mode value.我想根据 variable.Mode 值更改模板中的参数。 For example, this code doesn't work:
例如,此代码不起作用:
- template: ../templates/template1.yml
parameters:
${{ if eq(variables.Mode, 'dev') }}:
mode: dev
namespace: dev-namespace
fqdn: dev.mysite.com
${{ if eq(variables.Mode, 'staging') }}:
mode: staging
namespace: staging-namespace
fqdn: staging.mysite.com
anothervar: value
yetanothervar: value2
The template executes with default values of parameters.该模板使用参数的默认值执行。 What can I do to set vars depending on variable.Mode value.
我该怎么做才能根据 variable.Mode 值设置 vars。
You can specify different parameter values in stages.您可以分阶段指定不同的参数值。 Here is my sample:
这是我的示例:
azure-pipelines.yml: azure-pipelines.yml:
variables:
Mode: dev
stages:
- ${{ if eq(variables.Mode, 'dev') }}:
- template: template.yml
parameters:
mode: dev
namespace: dev-namespace
fqdn: dev.mysite.com
- ${{ if eq(variables.Mode, 'staging') }}:
- template: template.yml # Template reference
parameters:
mode: staging
namespace: staging-namespace
fqdn: staging.mysite.com
anothervar: value
yetanothervar: value2
template.yml:模板.yml:
parameters:
- name: mode
default: ''
- name: namespace
default: ''
- name: fqdn
default: ''
- name: anothervar
default: ''
- name: yetanothervar
default: ''
stages:
- stage:
jobs:
- job:
steps:
- script: echo ${{ parameters.mode }}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.