Mik*_*e . 9 yaml azure-devops azure-pipelines-yaml
我正在尝试根据 yaml 管道中的参数值设置变量。我似乎读过许多其他帖子,其中显示了作者所说的有效示例,但在尝试执行如下操作时,我无法解决过去的问题。
我也尝试了这个例子的许多变体,这里无法列出。有时它会将“值”显示为重复键。在其他情况下,我已经能够尝试启动运行并获得环境选择的提示,但打开阶段对话框会引发解析错误。
文件顶部的变量声明与阶段或作业中的变量声明之间是否存在某种差异?这似乎是我在阅读其他示例时注意到的差异。
最终我想做的是根据环境参数的值设置ServiceConnection变量值。
parameters:
- name: environment
displayName: Environment
type: string
values:
- DEV
- TEST
pr: none
trigger: none
pool: PrivateAgentPool
variables:
- name: 'isMain'
value: $[eq(variables['Build.SourceBranch'], 'refs/heads/main')]
- name: 'buildConfiguration'
value: 'Release'
- name: 'environment'
value: ${{ parameters.environment }}
- name: 'ServiceConnection'
${{ if eq(variables['environment'], 'DEV') }}:
value: 'svcConnectionDev'
${{ if eq(variables['environment'], 'TEST') }}:
value: 'svcConnectionTest'
Run Code Online (Sandbox Code Playgroud)
小智 7
看来您的解决方案几乎是正确的。考虑下面的例子。
parameters:
- name: region
type: string
default: westeurope
values:
- westeurope
- northeurope
variables:
${{ if eq(parameters['region'], 'westeurope') }}:
ServiceConnection: "svcConnectionDev"
${{ else }}:
enter code here
Run Code Online (Sandbox Code Playgroud)
如果你想跨域使用这个ServiceConnectionvar,你可以通过调用$ServiceConnection来完成
| 归档时间: |
|
| 查看次数: |
10896 次 |
| 最近记录: |