如何使用 Azure CLI 获取 Azure DevOps 中发布管道的变量列表

Sah*_*roo 5 azure-cli azure-devops azure-functions

我正在使用 Azure CLI,我想要获取发布管道中使用的变量列表。目前,我可以使用命令 az pipelines Variable List获取构建管道中使用的变量列表

请让我知道如何使用 CLI 获取发布管道中使用的变量列表“我不想通过控制台,因为很难复制和粘贴发布管道中使用的所有变量”

Lan*_*SFT 8

如何使用 Azure CLI 获取 Azure DevOps 中发布管道的变量列表

Azure Devops CLI 中没有可用的命令来列出发布管道的变量,您必须使用az devops invoke + Rest api来获取长响应中所需的变量。

要获取发布变量,我们可以使用此其余 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
Run Code Online (Sandbox Code Playgroud)

更多细节:

1.您应该将 MyOrgName、MyProjectName 和 ReleaseDefinitionID 替换为您自己的值。ReleaseDefinitionID当我们在门户网站中编辑发布管道时,很容易找到以下内容:

在此输入图像描述

2.由于发布管道中的变量可以限定在一个阶段或整个管道中。假设我VarA:Test1在 stage1、VarB:Test2stage2 和VarC:Test3整个发布管道中都有。响应将类似于以下结构:

"variables": {
        "VarC": {
            "value": "Test3"
        }
    },
    "variableGroups": [],
    "environments": [
        {
            "id": 1,
            "name": "Stage 1",
            ...
            "variables": {"VarA" xxx},

            "id": 2,
            "name": "Stage 2",
            ...
            "variables": {"VarB" xxx}...
Run Code Online (Sandbox Code Playgroud)

变量有不同的级别,请小心对待。希望能帮助到你。

更新1:

要使用az devops命令,没有此扩展的人需要使用类似az extension add --name azure-devops.