Adicionar & grupos variáveis de uso

Azure DevOps Services | Azure DevOps Server | 2020 Azure DevOps Server | 2019 TFS 2018

Grupos variáveis armazenam valores e segredos que você pode querer ser passado para um oleoduto YAML ou disponibilizar em vários oleodutos. Pode partilhar e usar grupos de variáveis em vários oleodutos no mesmo projeto.

Os grupos de variáveis são recursos protegidos. Pode adicionar aprovações e verificações a estas variáveis e definir permissões de gasoduto.

Nota

No Microsoft Team Foundation Server (TFS) 2018 e nas versões anteriores, os oleodutos de construção e libertação são chamados definições, as corridas são chamadas de construções, as ligações de serviço são chamadas pontos finais de serviço, as fases são chamadas de ambientes, e os empregos são chamados de fases.

Criar um grupo variável

Não é possível criar grupos variáveis em YAML, mas podem ser usados como descritos em Usar um grupo variável.

Use um grupo variável

Para utilizar uma variável de um grupo variável, adicione uma referência ao grupo no seu ficheiro YAML:

variables:
- group: my-variable-group

Em seguida, as variáveis do grupo variável podem ser usadas no seu ficheiro YAML.

Se utilizar variáveis e grupos variáveis, utilize a name/value sintaxe para as variáveis individuais não agrupadas:

variables:
- group: my-variable-group
- name: my-bare-variable
  value: 'value of my-bare-variable'

Para fazer referência a um grupo variável, utilize sintaxe macro ou uma expressão de tempo de execução. No exemplo seguinte, o grupo my-variable-group tem uma variável chamada myhello.

variables:
- group: my-variable-group
- name: my-passed-variable
  value: $[variables.myhello] # uses runtime expression

steps:
- script: echo $(myhello) # uses macro syntax
- script: echo $(my-passed-variable) 

Pode fazer referência a vários grupos variáveis no mesmo oleoduto. Se vários grupos variáveis incluem a mesma variável, o grupo variável incluído em último no seu ficheiro YAML define o valor da variável.

variables:
- group: my-first-variable-group
- group: my-second-variable-group

Também pode fazer referência a um grupo variável num modelo. No modelo variables.yml, o grupo my-variable-group é referenciado. O grupo variável inclui uma variável chamada myhello.

# variables.yml
variables:
- group: my-variable-group

Neste pipeline, a variável $(myhello) do grupo my-variable-group variável está incluída e variables.yml é referenciada.

# azure-pipeline.yml
stages:
- stage: MyStage
  variables:
  - template: variables.yml
  jobs:
  - job: Test
    steps:
    - script: echo $(myhello)

Autorizar um grupo variável

Para trabalhar com um grupo variável, deve autorizar o grupo. Se você apenas nomear o grupo variável em YAML, então qualquer um que possa empurrar o código para o seu repositório pode extrair o conteúdo de segredos no grupo variável. Para autorizar o grupo, utilize uma das seguintes técnicas:

  • Para autorizar qualquer oleoduto a utilizar o grupo variável, vá à Azure Pipelines. Esta pode ser uma boa opção se não tiveres segredos no grupo. Selecione osgrupos LibraryVariable> e, em seguida, selecione o grupo variável em questão e ative a definição Permitir o acesso a todos os oleodutos.

  • Para autorizar um grupo variável para um oleoduto específico, abra o oleoduto, selecione Editar e, em seguida, faça uma fila manualmente. Você vê um erro de autorização de recurso e uma ação de "autorizar recursos" sobre o erro. Escolha esta ação para adicionar explicitamente o gasoduto como utilizador autorizado do grupo variável.

Nota

Se adicionar um grupo variável a um oleoduto e não obter um erro de autorização de recursos na sua construção quando esperava um, desligue o Acesso de Permitir o acesso a todas as definições de pipeline .

As construções da YAML não estão disponíveis na TFS.

Aceda aos valores variáveis num grupo variável ligado da mesma forma que as variáveis que define dentro do próprio pipeline. Por exemplo, para aceder ao valor de uma variável nomeada cliente num grupo variável ligado ao pipeline, utilizar $(customer) num parâmetro de tarefa ou num script. Mas, não é possível aceder a variáveis secretas (variáveis encriptadas e variáveis chave do cofre) diretamente nos scripts - em vez disso, devem ser passadas como argumentos para uma tarefa. Para mais informações, consulte segredos

As alterações que faz a um grupo variável estão automaticamente disponíveis para todas as definições ou fases a que o grupo variável fica ligado.

Listar grupos variáveis

Utilize o CLI para listar os grupos variáveis para o gasoduto que funciona com o comando da lista de grupo variável az pipelines . Se a extensão Azure DevOps para O CLI é nova para si, consulte Introdução com O Azure DevOps CLI.

az pipelines variable-group list [--action {manage, none, use}]
                                 [--continuation-token]
                                 [--group-name]
                                 [--org]
                                 [--project]
                                 [--query-order {Asc, Desc}]
                                 [--top]

Parâmetros opcionais

  • ação: Especifica a ação que pode ser realizada nos grupos variáveis. Os valores aceites são geridos, nenhum, e são usados.
  • continuação-token: Lista os grupos variáveis após a oferta de um token de continuação.
  • nome de grupo: Nome do grupo variável. Wildcards são aceites, tais como new-var*.
  • org: Azure DevOps organização URL. Configure a organização predefinida utilizando az devops configure -d organization=ORG_URL. Requerido se não configurado como padrão ou recolhido através da utilização git config. Exemplo: --org https://dev.azure.com/MyOrganizationName/.
  • projeto: Nome ou ID do projeto. Configure o projeto predefinido utilizando az devops configure -d project=NAME_OR_ID. Requerido se não configurado como padrão ou recolhido através da utilização git config.
  • pedido de consulta: Lista os resultados em ordem ascendente ou descendente (o predefinido). Os valores aceites são Asc e Desc.
  • top: Número de grupos variáveis para listar.

Exemplo

O comando seguinte lista os três principais grupos variáveis em ordem ascendente e devolve os resultados em formato de tabela.

az pipelines variable-group list --top 3 --query-order Asc --output table

ID    Name               Type    Number of Variables
----  -----------------  ------  ---------------------
1     myvariables        Vsts    2
2     newvariables       Vsts    4
3     new-app-variables  Vsts    3

Mostrar detalhes para um grupo variável

Exiba os detalhes de um grupo variável no seu projeto com o comando de show de grupo variável az pipelines . Se a extensão Azure DevOps para O CLI é nova para si, consulte Introdução com O Azure DevOps CLI.

az pipelines variable-group show --group-id
                                 [--org]
                                 [--project]

Parâmetros

  • grupo id: Obrigatório. Identificação do grupo variável. Para encontrar o ID do grupo variável, consulte grupos variáveis lista.
  • org: Azure DevOps organização URL. Configure a organização predefinida utilizando az devops configure -d organization=ORG_URL. Requerido se não configurado como padrão ou recolhido através da utilização git config. Exemplo: --org https://dev.azure.com/MyOrganizationName/.
  • projeto: Nome ou ID do projeto. Configure o projeto predefinido utilizando az devops configure -d project=NAME_OR_ID. Requerido se não configurado como padrão ou recolhido através da utilização git config.

Exemplo

O seguinte comando mostra detalhes para o grupo variável com o ID 4 e devolve os resultados em formato YAML.

az pipelines variable-group show --group-id 4 --output yaml

authorized: false
description: Variables for my new app
id: 4
name: MyNewAppVariables
providerData: null
type: Vsts
variables:
  app-location:
    isSecret: null
    value: Head_Office
  app-name:
    isSecret: null
    value: Fabrikam

Eliminar um grupo variável

Elimine um grupo variável no seu projeto com o comando de eliminação variável de gasodutos az . Se a extensão Azure DevOps para O CLI é nova para si, consulte Introdução com O Azure DevOps CLI.

az pipelines variable-group delete --group-id
                                   [--org]
                                   [--project]
                                   [--yes]

Parâmetros

  • grupo id: Obrigatório. Identificação do grupo variável. Para encontrar o ID do grupo variável, consulte grupos variáveis lista.
  • org: Azure DevOps organização URL. Configure a organização predefinida utilizando az devops configure -d organization=ORG_URL. Requerido se não configurado como padrão ou recolhido através da utilização git config. Exemplo: --org https://dev.azure.com/MyOrganizationName/.
  • projeto: Nome ou ID do projeto. Configure o projeto predefinido utilizando az devops configure -d project=NAME_OR_ID. Requerido se não configurado como padrão ou recolhido através da utilização git config.
  • Sim: Opcional. Não pede confirmação.

Exemplo

O seguinte comando elimina o grupo variável com o ID 1 e não solicita a confirmação.

az pipelines variable-group delete --group-id 1 --yes

Deleted variable group successfully.

Adicionar variáveis a um grupo variável

Com o Azure DevOps CLI, pode adicionar uma variável a um grupo variável num oleoduto com os gasodutos az variável-grupo criar comando. Se a extensão Azure DevOps para O CLI é nova para si, consulte Introdução com O Azure DevOps CLI.

az pipelines variable-group variable create --group-id
                                            --name
                                            [--org]
                                            [--project]
                                            [--secret {false, true}]
                                            [--value]

Parâmetros

  • grupo id: Obrigatório. Identificação do grupo variável. Para encontrar o ID do grupo variável, consulte grupos variáveis lista.
  • nome: Obrigatório. Nome da variável que está a adicionar.
  • org: Azure DevOps organização URL. Configure a organização predefinida utilizando az devops configure -d organization=ORG_URL. Requerido se não configurado como padrão ou recolhido através da utilização git config. Exemplo: --org https://dev.azure.com/MyOrganizationName/.
  • projeto: Nome ou ID do projeto. Configure o projeto predefinido utilizando az devops configure -d project=NAME_OR_ID. Requerido se não configurado como padrão ou recolhido através da utilização git config.
  • segredo: Opcional. Indica se o valor da variável é um segredo. Valores aceites são falsos e verdadeiros.
  • valor: Requerido para variável não secreta. Valor da variável. Para variáveis secretas, se o parâmetro de valor não for fornecido, é escolhido a partir de variável ambiente pré-fixado ou AZURE_DEVOPS_EXT_PIPELINE_VAR_ o utilizador é solicitado a introduzi-lo através da entrada padrão. Por exemplo, uma variável chamada MySecret pode ser inserida usando a variável AZURE_DEVOPS_EXT_PIPELINE_VAR_MySecretambiente .

Exemplo

O seguinte comando cria uma variável no grupo variável com ID de 4. A nova variável é nomeada requer login e tem um valor de True, e o resultado é mostrado no formato de tabela.

az pipelines variable-group variable create --group-id 4 --name requires-login --value True --output table

Name            Is Secret    Value
--------------  -----------  -------
requires-login  False        True

Listar variáveis num grupo variável

Pode listar as variáveis num grupo variável com o comando da lista variável de grupo variável az . Se a extensão Azure DevOps para O CLI é nova para si, consulte Introdução com O Azure DevOps CLI.

az pipelines variable-group variable list --group-id
                                          [--org]
                                          [--project]

Parâmetros

  • grupo id: Obrigatório. Identificação do grupo variável. Para encontrar o ID do grupo variável, consulte grupos variáveis lista.
  • org: Azure DevOps organização URL. Configure a organização predefinida utilizando az devops configure -d organization=ORG_URL. Requerido se não configurado como padrão ou recolhido através da utilização git config. Exemplo: --org https://dev.azure.com/MyOrganizationName/.
  • projeto: Nome ou ID do projeto. Configure o projeto predefinido utilizando az devops configure -d project=NAME_OR_ID. Requerido se não configurado como padrão ou recolhido através da utilização git config.

Exemplo

O comando a seguir lista todas as variáveis do grupo variável com ID de 4 e mostra o resultado em formato de tabela.

az pipelines variable-group variable list --group-id 4 --output table

Name            Is Secret    Value
--------------  -----------  -----------
app-location    False        Head_Office
app-name        False        Fabrikam
requires-login  False        True

Atualizar variáveis num grupo variável

Atualize uma variável num grupo variável com o comando de atualização variável do grupo az . Se a extensão Azure DevOps para O CLI é nova para si, consulte Introdução com O Azure DevOps CLI.

az pipelines variable-group variable update --group-id
                                            --name
                                            [--new-name]
                                            [--org]
                                            [--project]
                                            [--prompt-value {false, true}]
                                            [--secret {false, true}]
                                            [--value]

Parâmetros

  • grupo id: Obrigatório. Identificação do grupo variável. Para encontrar o ID do grupo variável, consulte grupos variáveis lista.
  • nome: Obrigatório. Nome da variável que está a adicionar.
  • novo nome: Opcional. Especifique para alterar o nome da variável.
  • org: Azure DevOps organização URL. Configure a organização predefinida utilizando az devops configure -d organization=ORG_URL. Requerido se não configurado como padrão ou recolhido através da utilização git config. Exemplo: --org https://dev.azure.com/MyOrganizationName/.
  • projeto: Nome ou ID do projeto. Configure o projeto predefinido utilizando az devops configure -d project=NAME_OR_ID. Requerido se não configurado como padrão ou recolhido através da utilização git config.
  • valor rápido: Definir para ser verdadeiro para atualizar o valor de uma variável secreta usando variável ambiente ou rapidão através da entrada padrão. Valores aceites são falsos e verdadeiros.
  • segredo: Opcional. Indica se o valor da variável é mantido em segredo. Valores aceites são falsos e verdadeiros.
  • valor: Atualiza o valor da variável. Para variáveis secretas, utilize o parâmetro de valor rápido a ser solicitado para introduzi-lo através da entrada padrão. Para consolas não interativas, pode ser colhida a partir de variáveis ambientais pré-fixas com AZURE_DEVOPS_EXT_PIPELINE_VAR_. Por exemplo, uma variável chamada MySecret pode ser inserida usando a variável AZURE_DEVOPS_EXT_PIPELINE_VAR_MySecretambiente .

Exemplo

O comando seguinte atualiza a variável requer login com o novo valor Falso no grupo variável com ID de 4. Especifica que a variável é um segredo e mostra o resultado no formato YAML. Note que a saída mostra o valor como nulo em vez de Falso , uma vez que é um valor secreto escondido.

az pipelines variable-group variable update --group-id 4 --name requires-login --value False --secret true --output yaml

requires-login:
  isSecret: true
  value: null

Eliminar variáveis de um grupo variável

Elimine uma variável de um grupo variável com o comando de exclusão variável de grupo variável az . Se a extensão Azure DevOps para O CLI é nova para si, consulte Introdução com O Azure DevOps CLI.

az pipelines variable-group variable delete --group-id
                                            --name
                                            [--org]
                                            [--project]
                                            [--yes]

Parâmetros

  • grupo id: Obrigatório. Identificação do grupo variável. Para encontrar o ID do grupo variável, consulte grupos variáveis lista.
  • nome: Obrigatório. Nome da variável que está a apagar.
  • org: Azure DevOps organização URL. Configure a organização predefinida utilizando az devops configure -d organization=ORG_URL. Requerido se não configurado como padrão ou recolhido através da utilização git config. Exemplo: --org https://dev.azure.com/MyOrganizationName/.
  • projeto: Nome ou ID do projeto. Configure o projeto predefinido utilizando az devops configure -d project=NAME_OR_ID. Requerido se não configurado como padrão ou recolhido através da utilização git config.
  • Sim: Opcional. Não pede confirmação.

Exemplo

O seguinte comando elimina a variável de login requer do grupo variável com ID de 4 e solicita a confirmação.

az pipelines variable-group variable delete --group-id 4 --name requires-login

Are you sure you want to delete this variable? (y/n): y
Deleted variable 'requires-login' successfully.

Ligue um cofre de chaves Azure existente a um grupo variável e mapeear segredos de abóbada seletiva ao grupo variável.

  1. Na página de grupos variáveis , ative os segredos do Link a partir de um cofre chave Azure como variáveis. Vai precisar de um cofre que contenha os seus segredos. Crie um cofre com a portal do Azure.

    Variable group with Azure key vault integration

  2. Especifique o ponto final da subscrição Azure e o nome do cofre que contém os seus segredos.

    Certifique-se de que a ligação de serviço Azure tem pelo menos permissões de gestão get e List no cofre para obter segredos. Ativar os Gasodutos Azure para definir estas permissões escolhendo o Autor ao lado do nome do cofre. Ou, definir as permissões manualmente no portal do Azure:

    1. Abra Definições para o cofre e, em seguida, escolha as políticas> de AcessoAdd novo.
    2. Selecione o principal e, em seguida, escolha o principal do serviço para a conta do seu cliente.
    3. Selecione permissões secretas e certifique-se de que get e List têm marcas de verificação.
    4. Selecione OK para guardar as alterações.
  3. Na página de grupos Variáveis , selecione + Adicione para selecionar segredos específicos do seu cofre para mapeamento a este grupo variável.

Gerir segredos

Consulte a seguinte lista de dicas úteis para gerir segredos.

  • Só os nomes secretos são mapeados para o grupo variável, não para os valores secretos. O último valor secreto, recolhido do cofre, é usado na corrida de gasodutos que está ligada ao grupo variável.

  • Qualquer alteração feita aos segredos existentes no cofre chave está automaticamente disponível para todos os oleodutos em que o grupo variável é utilizado.

  • Quando novos segredos são adicionados ou eliminados do cofre, os grupos variáveis associados não são automaticamente atualizados. Os segredos incluídos no grupo variável devem ser explicitamente atualizados para que os oleodutos que utilizam o grupo variável sejam executados corretamente.

  • A Azure Key Vault suporta armazenar e gerir chaves criptográficas e segredos em Azure. Atualmente, a integração variável do grupo Azure Pipelines suporta mapear apenas segredos a partir do cofre-chave Azure. Chaves criptográficas e certificados não são suportados.

Expandir variáveis em um grupo

Quando se define uma variável num grupo e a utiliza num ficheiro YAML, é igual a outras variáveis definidas no ficheiro YAML. Para obter mais informações sobre a precedência de variáveis, consulte Variáveis.

A YAML não é apoiada na TFS.