Adicionar & grupos variáveis de uso
Azure DevOps Services | Azure DevOps Server 2022 - 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 utilizar grupos variáveis em vários oleodutos no mesmo projeto.
Variáveis secretas em grupos de variáveis são recursos protegidos. Pode adicionar combinações de aprovações, verificações e permissões de gasodutos para limitar o acesso a variáveis secretas num grupo variável. O acesso a variáveis não secretas não é limitado por aprovações, controlos e permissões de gasodutos.
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. Selecionegrupos variáveis debiblioteca> e, em seguida, selecione o grupo variável em questão e permita a definição Deixe 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 Get start with 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çãogit 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çãogit 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 Get start with 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çãogit 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çãogit 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 Get start with 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çãogit 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çãogit 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 Get start with 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çãogit 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çãogit 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ávelAZURE_DEVOPS_EXT_PIPELINE_VAR_MySecret
ambiente .
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 Get start with 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çãogit 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çãogit 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 Get start with 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çãogit 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çãogit 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ções 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ávelAZURE_DEVOPS_EXT_PIPELINE_VAR_MySecret
ambiente .
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 Get start with 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çãogit 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çãogit 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.
Associar segredos de um cofre de chaves do Azure
Ligue um cofre de chaves Azure existente a um grupo variável e mapeear segredos de abóbada seletiva ao grupo variável.
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.
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:
- Abrir definições para o cofre e, em seguida, escolher políticas> de acessoAdicione novas.
- Selecione o principal e, em seguida, escolha o principal do serviço para a conta do seu cliente.
- Selecione permissões secretas e certifique-se de que get e List têm marcas de verificação.
- Selecione OK para guardar as alterações.
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 chave do cofre
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.