在azure devops中,用户对第一个参数的选择是否有可能决定第二个参数(类型、显示名称等)?
例如:
parameters:
- name: parametr1
displayName: example1
type: string
default: first
values:
- first
- second
- third
Run Code Online (Sandbox Code Playgroud)
而如果用户在启动管道时选择“first”,则要输入第二个参数:
- name: parametr2.1
displayName: example2
type: number
Run Code Online (Sandbox Code Playgroud)
但如果用户在启动管道时选择“第二”,则要输入第二个参数:
- name: parametr2.2
displayName: example2.2
type: boolean
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助 :)
我有三个条件作为变量(isMaster、isRelease、isHotfix):
variables:
isMaster: $[startsWith(variables['Build.SourceBranch'], 'refs/heads/master')]
isRelease: $[startsWith(variables['Build.SourceBranch'], 'refs/heads/release/')]
isHotfix: $[startsWith(variables['Build.SourceBranch'], 'refs/heads/hotfix/')]
checkCondition: $[or(variables.isMaster, variables.isRelease)]
Run Code Online (Sandbox Code Playgroud)
问题是当我为 OR 条件(如 checkCondition)取两个“假”时。我应该得到“假”,但由于某种原因我得到“真”。
- task: CmdLine@2
inputs:
script: |
echo %BUILD_SOURCEBRANCH%
echo %ISMASTER%
echo %ISRELEASE%
echo %ISHOTFIX%
echo %CHECKCONDITION%
condition: or(variables.isMaster ,variables.isRelease)
...
Result:
...
refs/heads/someBranch
False
False
False
True
Finishing: CmdLine
Run Code Online (Sandbox Code Playgroud)
任何人都知道为什么该条件会给出错误的结果?谢谢你!
在天蓝色管道中是否可以传递多行参数?如果type是 a string,你甚至不能用换行符编写。另一方面,如果typeis object,您可以输入多行,但变量中的所有 EOL 将被删除。
parameters:
- name: Multiline
type: object
Run Code Online (Sandbox Code Playgroud)
如果我将参数保存到文本文件,结果是一行
- bash: |
echo ${{ parameters.Multiline }} >> script.txt
cat script.txt
Run Code Online (Sandbox Code Playgroud)