我正在使用Azure CLI,我想要获取在发布管道中使用的变量列表。 当前我能够使用命令获取在构建管道中使用的变量列表 az管道变量列表
请让我知道如何通过CLI使用“我不想要的控制台,因为很难复制和粘贴在发布管道中使用的所有变量”来获取在发布管道中使用的变量列表。
答案 0 :(得分:2)
如何在Azure devops中获取发布管道的变量列表 使用Azure CLI
Azure Devops CLI中没有可用的命令来列出发布管道的变量,您必须使用az devops invoke + rest api来获取需要较长响应的变量。
要获取发布变量,我们可以使用此rest api,让我将其转换为az devops invoke
命令:
az devops invoke --org https://dev.azure.com/MyOrgName/ --area release --resource definitions --http-method Get --route-parameters project=MyProjectName definitionId=ReleaseDefinitionID --api-version 5.1 -o json
更多详细信息:
1。您应将MyOrgName,MyProjectName和ReleaseDefinitionID替换为您身边的值。当我们在Web门户中编辑发布管道时,ReleaseDefinitionID
很容易找到:
2。由于发布管道中的变量可以作用于一个阶段或整个管道。假设我在阶段1中有VarA:Test1
,在阶段2中有VarB:Test2
,并且在整个发布管道中有VarC:Test3
。响应如下所示:
"variables": {
"VarC": {
"value": "Test3"
}
},
"variableGroups": [],
"environments": [
{
"id": 1,
"name": "Stage 1",
...
"variables": {"VarA" xxx},
"id": 2,
"name": "Stage 2",
...
"variables": {"VarB" xxx}...
变量具有不同的级别,请谨慎使用。希望对您有所帮助。
更新1:
要使用az devops
命令,没有此扩展名的人需要使用az extension add --name azure-devops
之类的东西来添加devops扩展名。
答案 1 :(得分:1)
使用以下命令可以实现与@Lance Li-MSFT几乎相同的输出
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
特定于阶段的变量位于az pipelines release definition show --project YourProjectName --id YourReleaseDefinitionId
节点中,而全局变量位于节点environments
中。