Efetuar pull de configurações para a Configuração de Aplicativos com o Azure Pipelines

A tarefa Configuração de Aplicativos do Azure extrai valores de chave do repositório da Configuração de Aplicativos e os define como variáveis de pipeline do Azure, que podem ser consumidas pelas próximas tarefas. Essa tarefa complementa a tarefa Push da Configuração de Aplicativos do Azure que envia por push os valores de chave de um arquivo de configuração para o repositório da Configuração de Aplicativos. Para obter mais informações, confira Enviar configurações por push para a Configuração de Aplicativos com o Azure Pipelines.

Pré-requisitos

Criar uma conexão de serviço

Uma conexão de serviço lhe dá acesso aos recursos na sua assinatura do Azure por meio do projeto do Azure DevOps.

  1. No Azure DevOps, acesse o projeto que contém o pipeline de destino. No canto inferior esquerdo, selecione Configurações do projeto.

  2. Em Pipelines, selecione Conexões de serviço. No canto superior direito, selecione Nova conexão de serviço.

  3. Em Nova conexão de serviço. selecione Azure Resource Manager.

    Screenshot shows selecting Azure Resource Manager from the New service connection dropdown list.

  4. Na caixa de diálogo Método de autenticação, selecione Entidade de serviço (automática) para criar uma entidade de serviço ou clique em Entidade de serviço (manual) para usar uma entidade de serviço existente.

  5. Insira sua assinatura, grupo de recursos e um nome para a conexão de serviço.

Se você criou uma entidade de serviço, localize o nome da entidade de serviço atribuída à conexão de serviço. Você adicionará uma atribuição de função a essa entidade de serviço na próxima etapa.

  1. Acesse Configurações do Projeto>Conexões de serviço.

  2. Selecione a nova conexão de serviço.

  3. Selecione Gerenciar Entidade de Serviço.

  4. Observe o valor em Nome de exibição.

    Screenshot shows the service principal display name.

Adicionar atribuição de função

Designe as atribuições de função de configuração de aplicativo adequadas às credenciais que estão sendo usadas dentro da tarefa para que a tarefa possa acessar o repositório de Configuração de Aplicativos.

  1. Acesse o repositório de destino da Configuração de Aplicativos.

  2. No menu à esquerda, selecione Controle de acesso (IAM) .

  3. No painel direito, selecione Adicionar atribuições de função.

    Screenshot shows the Add role assignments button.

  4. Em Função, selecione Leitor de Dados da Configuração de Aplicativos. Essa função permite que a tarefa seja lida no repositório da Configuração de Aplicativos.

  5. Selecione a entidade de serviço associada à conexão de serviço criada na seção anterior.

    Screenshot shows the Add role assignment dialog.

  6. Selecione Examinar + atribuir.

  7. Se o repositório contiver referências ao Key Vault, vá para o Key Vault relevante e atribua a função de Usuário Secreto do Key Vault à entidade de serviço criada na etapa anterior. No menu do Key Vault, selecione Políticas de acesso e verifique se o controle de acesso baseado em função do Azure está selecionado como modelo de permissão.

Uso em builds

Esta seção abordará como usar a tarefa Configuração de Aplicativos do Azure em um pipeline de build do Azure DevOps.

  1. Acesse a página do pipeline de build clicando em Pipelines>Pipelines. Para obter a documentação do pipeline de build, confira Criar seu primeiro pipeline.
    • Se você estiver criando um pipeline de build, na última etapa do processo, na guia Examinar, selecione Mostrar assistente no lado direito do pipeline. Screenshot shows the Show assistant button for a new pipeline.
    • Se você estiver usando um pipeline de build existente, clique no botão Editar no canto superior direito. Screenshot shows the Edit button for an existing pipeline.
  2. Pesquise a tarefa Configuração de Aplicativos do Azure. Screenshot shows the Add Task dialog with Azure App Configuration in the search box.
  3. Configure os parâmetros necessários para que a tarefa efetue pull dos valores de chave do repositório da Configuração de Aplicativos. As descrições dos parâmetros estão disponíveis na seção Parâmetros abaixo e nas dicas de ferramenta ao lado de cada parâmetro.
    • Defina o parâmetro de assinatura do Azure com o nome da conexão de serviço que você criou em uma etapa anterior.
    • Defina o ponto de extremidade Configuração de Aplicativos como o ponto de extremidade do seu repositório de Configuração de Aplicativos.
    • Mantenha os valores padrão nos parâmetros restantes. Screenshot shows the app configuration task parameters.
  4. Salve e coloque um build na fila. O log de build exibirá todas as falhas ocorridas durante a execução da tarefa.

Uso em versões

Esta seção abordará como usar a tarefa Configuração de Aplicativos do Azure em um pipeline de lançamento do Azure DevOps.

  1. Acesse a página do pipeline de lançamento selecionando Pipelines>Versões. Para obter a documentação do pipeline de lançamento, confira Pipelines de lançamento.
  2. Escolha um pipeline de lançamento existente. Se não tiver um, clique em Novo pipeline para criar um.
  3. Selecione o botão Editar no canto superior direito para editar o pipeline de lançamento.
  4. Na lista suspensa Tarefas, escolha a Fase à qual deseja adicionar a tarefa. Encontre mais informações sobre as fases aqui. Screenshot shows the selected stage in the Tasks dropdown.
  5. Clique em + próximo ao trabalho ao qual deseja adicionar uma tarefa. Screenshot shows the plus button next to the job.
  6. Pesquise a tarefa Configuração de Aplicativos do Azure. Screenshot shows the Add Task dialog with Azure App Configuration in the search box.
  7. Configure os parâmetros necessários na tarefa para efetuar pull dos valores de chave do seu repositório da Configuração de Aplicativos. As descrições dos parâmetros estão disponíveis na seção Parâmetros abaixo e nas dicas de ferramenta ao lado de cada parâmetro.
    • Defina o parâmetro de assinatura do Azure com o nome da conexão de serviço que você criou em uma etapa anterior.
    • Defina o ponto de extremidade Configuração de Aplicativos como o ponto de extremidade do seu repositório de Configuração de Aplicativos.
    • Mantenha os valores padrão nos parâmetros restantes.
  8. Salve e coloque uma versão na fila. O log de versão exibirá todas as falhas encontradas durante a execução da tarefa.

Parâmetros

Os seguintes parâmetros são usados pela tarefa Configuração de Aplicativos do Azure:

  • Assinatura do Azure: uma lista suspensa que contém as conexões de serviço do Azure disponíveis. Para atualizar a lista de conexões de serviço do Azure disponíveis, pressione o botão Atualizar assinatura do Azure à direita da caixa de texto.
  • Ponto de extremidade da Configuração de Aplicativos: um menu suspenso que carrega os pontos de extremidade de armazenamento de configuração disponíveis na assinatura selecionada. Para atualizar a lista de pontos de extremidade de armazenamento de configuração disponíveis, pressione o botão Atualizar o ponto de extremidade da Configuração de Aplicativos à direita da caixa de texto.
  • Modo de Seleção: especifica como os valores-chave lidos de um repositório de configuração são selecionados. O modo de seleção "Padrão" permite o uso de filtros de chave e rótulo. O modo de seleção "Instantâneo" permite que os valores-chave sejam selecionados de um instantâneo. O valor padrão é Padrão.
  • Filtro de Chave: o filtro pode ser usado para selecionar quais valores de chave são solicitados pela Configuração de Aplicativos do Azure. Um valor igual a * selecionará todos os valores de chave. Para obter mais informações, confira Consultar valores de chave.
  • Rótulo: especifica qual rótulo deve ser usado na seleção de valores de chave do repositório da Configuração de Aplicativos. Se nenhum rótulo for fornecido, os valores de chave Sem rótulo não serão recuperados. Os seguintes caracteres não são permitidos: , e *.
  • Nome do instantâneo: especifica o instantâneo do qual os valores-chave devem ser recuperados na Configuração de Aplicativos do Azure.
  • Recortar Prefixo de Chave: especifica um ou mais prefixos que devem ser cortados das chaves da Configuração de Aplicativos antes de configurá-los como variáveis. Vários prefixos podem ser separados por um caractere de nova linha.
  • Suprimir aviso de chaves substituídas: o valor padrão está desmarcado. Especifica se é necessário mostrar avisos quando as chaves existentes são substituídas. Habilite esta opção quando for esperado que os valores de chave baixados da Configuração do Aplicativo tenham chaves sobrepostas nas variáveis de pipeline.

Usar valores de chave nas tarefas seguintes

Os valores de chave que são buscados na Configuração de Aplicativos são definidos como variáveis de pipeline, que são acessíveis como variáveis de ambiente. A chave da variável de ambiente é a chave do valor de chave recuperada da Configuração de Aplicativos após o recorte do prefixo, se especificado.

Por exemplo, se uma tarefa seguinte executar um script do PowerShell, ela poderá consumir um valor de chave com a chave 'myBuildSetting' desta forma:

echo "$env:myBuildSetting"

Além disso, o valor será impresso no console.

Observação

As referências do Azure Key Vault dentro da Configuração de Aplicativos serão resolvidas e definidas como variáveis secretas. No Azure Pipelines, as variáveis secretas são mascaradas do log. Elas não são transmitidas para tarefas como variáveis de ambiente e precisam ser transmitidas como entradas.

Solução de problemas

Em caso de um erro inesperado, os logs de depuração podem ser habilitados pela configuração da variável de pipeline system.debug como true.

Perguntas frequentes

Como fazer para compor minha configuração com base em uma variedade de chaves e rótulos?

Há ocasiões em que a configuração pode precisar ser composta com base em vários rótulos, por exemplo, padrão e desenvolvimento. Várias tarefas da Configuração de Aplicativos podem ser usadas em um pipeline para implementar esse cenário. Os valores de chave buscados por uma tarefa em uma etapa posterior substituirão os valores das etapas anteriores. No exemplo acima, uma tarefa pode ser usada para selecionar valores de chave com o rótulo padrão, enquanto uma segunda tarefa pode selecionar valores de chave com o rótulo de desenvolvimento. As chaves com o rótulo de desenvolvimento substituirão as mesmas chaves pelo rótulo padrão.