Gerenciar grupos de variáveis
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Este artigo explica como criar e usar grupos de variáveis no Azure Pipelines. Os grupos de variáveis armazenam valores e segredos que você pode passar para um pipeline YAML ou disponibilizar em vários pipelines em um projeto.
As variáveis secretas em grupos de variáveis são recursos protegidos. Você pode adicionar combinações de aprovações, verificações e permissões de pipeline para limitar o acesso a variáveis secretas em um grupo de variáveis. O acesso a variáveis não secretas não é limitado por aprovações, verificações ou permissões de pipeline.
Os grupos de variáveis seguem o modelo de segurança da biblioteca para funções e permissões.
Pré-requisitos
- Uma organização e um projeto dos Serviços de DevOps do Azure onde você tem permissões para criar pipelines e variáveis.
- Um projeto em sua organização do Azure DevOps ou coleção do Azure DevOps Server. Crie um projeto se não tiver um.
- Se você estiver usando a CLI do Azure DevOps, precisará da CLI do Azure versão 2.30.0 ou superior com a extensão da CLI do Azure DevOps. Para obter mais informações, consulte Introdução à CLI do Azure DevOps.
- Uma coleção e um projeto do Azure DevOps Server onde você tem permissões para criar pipelines e variáveis.
- Um projeto em sua organização do Azure DevOps ou coleção do Azure DevOps Server. Crie um projeto se não tiver um.
Configurar a CLI
Se você estiver usando a CLI do Azure DevOps, precisará configurar a CLI para trabalhar com sua organização e projeto do Azure DevOps.
Entre na sua organização do Azure DevOps usando o comando az login .
az login
Se solicitado, selecione sua assinatura na lista exibida na janela do terminal.
Verifique se você está executando a versão mais recente da CLI do Azure e a extensão Azure DevOps usando os comandos a seguir.
az upgrade az extension add --name azure-devops --upgrade
Nos comandos da CLI do Azure DevOps, você pode definir a organização e o projeto padrão usando:
az devops configure --defaults organization=<YourOrganizationURL> project=<Project Name or ID>`
Se você não definiu a organização e o projeto padrão, poderá usar o
detect=true
parâmetro em seus comandos para detetar automaticamente o contexto da organização e do projeto com base no diretório atual. Se os padrões não forem configurados ou detetados, você precisará especificar explicitamente osorg
parâmetros eproject
em seus comandos.
Criar um grupo de variáveis
Você pode criar grupos de variáveis para as execuções de pipeline em seu projeto.
Nota
Para criar um grupo de variáveis secretas para vincular segredos de um cofre de chaves do Azure como variáveis, siga as instruções em Vincular um grupo de variáveis a segredos no Cofre de Chaves do Azure.
Em seu projeto do Azure DevOps, selecione Biblioteca de Pipelines>no menu à esquerda.
Na página Biblioteca, selecione + Grupo de variáveis.
Na página do novo grupo de variáveis, em Propriedades, insira um nome e uma descrição opcional para o grupo de variáveis.
Em Variáveis, selecione + Adicionar e insira um nome e um valor de variável para incluir no grupo. Se quiser criptografar e armazenar o valor com segurança, selecione o ícone de cadeado ao lado da variável.
Selecione + Adicionar para adicionar cada nova variável. Quando terminar de adicionar variáveis, selecione Salvar.
Agora você pode usar esse grupo de variáveis em pipelines de projeto.
Atualizar grupos de variáveis
Você pode atualizar grupos de variáveis usando a interface do usuário do Azure Pipelines.
- Em seu projeto do Azure DevOps, selecione Biblioteca de Pipelines>no menu à esquerda.
- Na página Biblioteca, selecione o grupo de variáveis que deseja atualizar. Você também pode passar o mouse sobre a listagem do grupo de variáveis, selecionar o ícone Mais opções e selecionar Editar no menu.
- Na página do grupo de variáveis, altere qualquer uma das propriedades e selecione Salvar.
Excluir um grupo de variáveis
Você pode excluir grupos de variáveis na interface do usuário do Azure Pipelines.
- Em seu projeto do Azure DevOps, selecione Biblioteca de Pipelines>no menu à esquerda.
- Na página Biblioteca, passe o mouse sobre o grupo de variáveis que deseja excluir e selecione o ícone Mais opções.
- Selecione Excluir no menu e, em seguida, selecione Excluir na tela de confirmação.
Gerenciar variáveis em grupos de variáveis
Você pode alterar, adicionar ou excluir variáveis em grupos de variáveis usando a interface do usuário do Azure Pipelines.
- Em seu projeto do Azure DevOps, selecione Biblioteca de Pipelines>no menu à esquerda.
- Na página Biblioteca, selecione o grupo de variáveis que deseja atualizar. Você também pode passar o mouse sobre a listagem do grupo de variáveis, selecionar o ícone Mais opções e selecionar Editar no menu.
- Na página do grupo de variáveis, você pode:
- Altere qualquer um dos nomes ou valores das variáveis.
- Exclua qualquer uma das variáveis selecionando o ícone de lata de lixo ao lado do nome da variável.
- Altere as variáveis para secretas ou não secretas selecionando o ícone de cadeado ao lado do valor da variável.
- Adicione novas variáveis selecionando + Adicionar.
- Depois de fazer alterações, selecione Salvar.
Usar grupos de variáveis em pipelines
Você pode usar grupos de variáveis em pipelines YAML ou Classic. As alterações feitas em um grupo de variáveis ficam automaticamente disponíveis para todas as definições ou estágios aos quais o grupo de variáveis está vinculado.
Se você nomear apenas o grupo de variáveis em pipelines YAML, qualquer pessoa que possa enviar código por push para seu repositório poderá extrair o conteúdo dos segredos no grupo de variáveis. Portanto, para usar um grupo de variáveis com pipelines YAML, você deve autorizar o pipeline a usar o grupo. Você pode autorizar um pipeline a usar um grupo de variáveis na interface do usuário do Azure Pipelines ou usando a CLI do Azure DevOps.
Autorização através da interface do usuário do Pipelines
Você pode autorizar pipelines a usar seus grupos de variáveis usando a interface do usuário do Azure Pipelines.
- Em seu projeto do Azure DevOps, selecione Biblioteca de Pipelines>no menu à esquerda.
- Na página Biblioteca, selecione o grupo de variáveis que deseja autorizar.
- Na página do grupo de variáveis, selecione a guia Permissões de pipeline.
- Na tela Permissões de pipeline, selecione + e, em seguida, selecione um pipeline para autorizar. Ou selecione o ícone Mais ações , selecione Abrir acesso e selecione Abrir acesso novamente para confirmar.
A seleção de um pipeline autoriza esse pipeline a usar o grupo de variáveis. Para autorizar outro pipeline, selecione o + ícone novamente. Selecionar Acesso aberto autoriza todos os pipelines de projeto a usar o grupo de variáveis. O acesso aberto pode ser uma boa opção se você não tiver segredos no grupo.
Outra maneira de autorizar um grupo de variáveis é selecionar o pipeline, selecionar Editar e, em seguida, enfileirar uma compilação manualmente. Você vê um erro de autorização de recursos e pode adicionar explicitamente o pipeline como um usuário autorizado do grupo de variáveis.
Autorização por meio da CLI do Azure DevOps
Nos Serviços de DevOps do Azure, você pode autorizar grupos de variáveis usando a CLI do Azure DevOps.
Os comandos da CLI do Azure DevOps não são suportados para o Servidor de DevOps do Azure.
Para autorizar todos os pipelines de projeto a usar o grupo de variáveis, defina o authorize
parâmetro no comando az pipelines variable-group create como true
. Este acesso aberto pode ser uma boa opção se você não tiver nenhum segredo no grupo.
Vincular um grupo de variáveis a um pipeline
Depois de autorizar um pipeline YAML a usar um grupo de variáveis, você pode usar variáveis dentro do grupo no pipeline.
Para usar variáveis de um grupo de variáveis, adicione uma referência ao nome do grupo no arquivo de pipeline YAML.
variables:
- group: my-variable-group
Você pode fazer referência a vários grupos de variáveis no mesmo pipeline. Se vários grupos de variáveis incluírem as variáveis com o mesmo nome, o último grupo de variáveis que usa a variável no arquivo definirá o valor da variável. Para obter mais informações sobre a precedência de variáveis, consulte Expansão de variáveis.
Você também pode fazer referência a um grupo de variáveis em um modelo. O arquivo de modelo de variables.yml a seguir faz referência ao grupo my-variable-group
de variáveis. O grupo de variáveis inclui uma variável chamada myhello
.
variables:
- group: my-variable-group
O pipeline YAML faz referência ao modelo variables.yml e usa a variável $(myhello)
do grupo my-variable-group
de variáveis.
stages:
- stage: MyStage
variables:
- template: variables.yml
jobs:
- job: Test
steps:
- script: echo $(myhello)
Usar variáveis em um grupo de variáveis vinculadas
Você acessa os valores de variáveis em um grupo de variáveis vinculado da mesma forma que acessa as variáveis definidas dentro do pipeline. Por exemplo, para acessar o valor de uma variável nomeada customer
em um grupo de variáveis vinculado ao pipeline, você pode usar $(customer)
um parâmetro de tarefa ou um script.
Se você usar variáveis autônomas e grupos de variáveis em seu arquivo de pipeline, use a name
-value
sintaxe para as variáveis autônomas.
variables:
- group: my-variable-group
- name: my-standalone-variable
value: 'my-standalone-variable-value'
Para fazer referência a uma variável em um grupo de variáveis, você pode usar a sintaxe de macro ou uma expressão de tempo de execução. Nos exemplos a seguir, o grupo my-variable-group
tem uma variável chamada myhello
.
Para usar uma expressão de tempo de execução:
variables:
- group: my-variable-group
- name: my-passed-variable
value: $[variables.myhello]
- script: echo $(my-passed-variable)
Para usar a sintaxe de macro:
variables:
- group: my-variable-group
steps:
- script: echo $(myhello)
Não é possível acessar variáveis secretas, incluindo variáveis criptografadas e variáveis do cofre de chaves, diretamente em scripts. Você deve passar essas variáveis como argumentos para uma tarefa. Para obter mais informações, consulte Variáveis secretas.