Partilhar via


Enviar definições para a Configuração de Aplicações com o Azure Pipelines

A tarefa Push de Configuração do Aplicativo do Azure envia valores de chave de um arquivo de configuração para sua loja de Configuração de Aplicativos. Esta tarefa permite a funcionalidade de círculo completo dentro do pipeline, uma vez que agora pode extrair definições da App Configuration Store, bem como push settings para a App Configuration store.

Pré-requisitos

Criar uma conexão de serviço

Uma conexão de serviço lhe dá acesso a recursos em sua assinatura do Azure a partir de seu projeto de DevOps do Azure.

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

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

  3. Em Nova conexão de serviço, selecione Gerenciador de Recursos do Azure.

    A captura de tela mostra a seleção do Azure Resource Manager na lista suspensa Nova conexão de serviço.

  4. Na caixa de diálogo Método de autenticação , selecione Federação de identidades de carga de trabalho (automática) para criar uma nova federação de identidades de carga de trabalho ou selecione Federação de identidades de carga de trabalho (manual) para usar uma federação de identidades de carga de trabalho existente.

  5. Introduza a sua subscrição, grupo de recursos e um nome para a ligação de serviço.

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

  1. Vá para Conexões do Serviço de Configurações>do Projeto.

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

  3. Selecione Gerenciar entidade de serviço.

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

    A captura de tela mostra o nome de exibição da entidade de serviço.

Adicionar atribuição de função

Atribua as atribuições de função de Configuração de Aplicativo adequadas às credenciais que estão sendo usadas na tarefa para que a tarefa possa acessar o repositório de Configuração de Aplicativos.

  1. Aceda à sua loja de Configuração de Aplicações de destino.

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

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

    A captura de tela mostra o botão Adicionar atribuições de função.

  4. Em Função, selecione Proprietário dos Dados de Configuração do Aplicativo. Essa função permite que a tarefa leia e grave na App Configuration Store.

  5. Selecione a entidade de serviço associada à conexão de serviço que você criou na seção anterior.

    A captura de tela mostra a caixa de diálogo Adicionar atribuição de função.

  6. Selecione Rever + atribuir.

Uso em compilações

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

  1. Navegue até a página do pipeline de construção clicando em Pipelines>Pipelines. A documentação para pipelines de construção pode ser encontrada aqui.
    • Se você estiver criando um novo pipeline de compilação, na última etapa do processo, na guia Revisão , selecione Mostrar assistente no lado direito do pipeline.

      A captura de tela mostra o botão Mostrar assistente para um novo pipeline.

    • Se você estiver usando um pipeline de compilação existente, clique no botão Editar no canto superior direito.

      A captura de tela mostra o botão Editar para um pipeline existente.

  2. Procure a tarefa Push de Configuração do Aplicativo do Azure.

    A captura de tela mostra a caixa de diálogo Adicionar Tarefa com o Push de Configuração do Aplicativo do Azure na caixa de pesquisa.

  3. Configure os parâmetros necessários para que a tarefa envie os valores-chave do arquivo de configuração para a App Configuration store. Explicações dos parâmetros estão disponíveis na seção Parâmetros abaixo e em dicas de ferramentas ao lado de cada parâmetro.

    A captura de tela mostra os parâmetros da tarefa push de configuração do aplicativo.

  4. Salve e enfileire uma compilação. O log de compilação exibirá quaisquer falhas que ocorreram durante a execução da tarefa.

Utilização em versões

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

  1. Navegue até a página do pipeline de liberação selecionando Pipelines>Releases. A documentação para pipelines de liberação pode ser encontrada aqui.
  2. Escolha um pipeline de liberação existente. Se não tiver um, selecione + Novo para criar um novo.
  3. Selecione o botão Editar no canto superior direito para editar o pipeline de versão.
  4. Na lista suspensa Tarefas, escolha o Palco ao qual você deseja adicionar a tarefa. Mais informações sobre as etapas podem ser encontradas aqui.

    A captura de tela mostra o estágio selecionado na lista suspensa Tarefas.

  5. Clique ao + lado do Trabalho ao qual você deseja adicionar uma nova tarefa.

    A captura de tela mostra o botão de adição ao lado do trabalho.

  6. Na caixa de diálogo Adicionar tarefas, digite Push de Configuração do Aplicativo do Azure na caixa de pesquisa e selecione-a.
  7. Configure os parâmetros necessários dentro da tarefa para enviar seus valores-chave do arquivo de configuração para a App Configuration Store. Explicações dos parâmetros estão disponíveis na seção Parâmetros abaixo e em dicas de ferramentas ao lado de cada parâmetro.
  8. Salve e enfileire uma versão. O log de liberação exibirá quaisquer falhas encontradas durante a execução da tarefa.

Parâmetros

Os seguintes parâmetros são usados pela tarefa App Configuration Push:

  • Assinatura do Azure: uma lista suspensa que contém suas conexões de serviço do Azure disponíveis. Para atualizar e atualizar sua 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 de configuração do aplicativo: uma lista suspensa que carrega o ponto de extremidade de armazenamento de configuração disponível sob a assinatura selecionada. Para atualizar e atualizar sua lista de pontos de extremidade de armazenamentos de configuração disponíveis, pressione o botão Refresh App Configuration Endpoint à direita da caixa de texto.
  • Caminho do arquivo de configuração: o caminho para o arquivo de configuração. O parâmetro Configuration File Path começa na raiz do repositório de arquivos. Você pode navegar pelo artefato de compilação para selecionar um arquivo de configuração. ...( à direita da caixa de texto). Os formatos de ficheiro suportados dependem do perfil de conteúdo do ficheiro. Para o perfil padrão, os formatos de arquivo suportados são yaml, json e propriedades. Para o perfil KvSet, o formato de arquivo suportado é json.
  • Perfil de conteúdo do arquivo: o perfil de conteúdo do arquivo de configuração. O valor padrão é Default.
    • Padrão: refere-se aos formatos de arquivo de configuração convencionais que são diretamente consumíveis pelos aplicativos.
    • Kvset: refere-se a um esquema de arquivo que contém todas as propriedades de um valor-chave de Configuração do Aplicativo, incluindo chave, valor, rótulo, tipo de conteúdo e tags. Os parâmetros de tarefa 'Separador', 'Rótulo', 'Tipo de conteúdo', 'Prefixo', 'Tags' e 'Profundidade' não são aplicáveis ao usar o perfil Kvset.
  • Modo de importação: o valor padrão é All. Determina o comportamento ao importar valores-chave.
    • Todos: Importa todos os valores-chave no arquivo de configuração para a Configuração do aplicativo.
    • Ignore-Match: importa apenas configurações que não têm nenhum valor de chave correspondente na Configuração do aplicativo. Os valores-chave correspondentes são considerados valores-chave com a mesma chave, rótulo, valor, tipo de conteúdo e tags.
  • Execução a seco: o valor padrão está desmarcado.
    • Verificado: Nenhuma atualização será realizada na Configuração do aplicativo. Em vez disso, todas as atualizações que teriam sido executadas em uma execução normal serão impressas no console para revisão.
    • Desmarcada: Executa quaisquer atualizações na Configuração do Aplicativo e não imprime no console.
  • Separador: o separador usado para nivelar .json e .yml arquivos.
  • Profundidade: a profundidade para a qual os arquivos .json e .yml serão nivelados.
  • Prefixo: uma cadeia de caracteres que é anexada ao início de cada tecla enviada por push para a App Configuration Store.
  • Label: uma cadeia de caracteres que é adicionada a cada valor-chave como o rótulo dentro da App Configuration Store.
  • Tipo de conteúdo: uma cadeia de caracteres que é adicionada a cada valor-chave como o tipo de conteúdo na loja de configuração de aplicativos.
  • Tags: Um objeto JSON no formato de , que define as tags que são adicionadas a cada valor-chave enviado para sua loja de configuração de {"tag1":"val1", "tag2":"val2"}aplicativos.
  • Exclua valores-chave que não estão incluídos no arquivo de configuração: o valor padrão é Desmarcado. O comportamento dessa opção depende do perfil de conteúdo do arquivo de configuração.
    • Confira:
      • Perfil de conteúdo padrão: Remove todos os valores-chave na loja de Configuração do Aplicativo que correspondem ao prefixo e ao rótulo especificados antes de enviar novos valores-chave do arquivo de configuração.
      • Perfil de conteúdo Kvset: Remove todos os valores-chave na App Configuration Store que não estão incluídos no arquivo de configuração antes de enviar novos valores-chave do arquivo de configuração.
    • Desmarcado: Envia todos os valores-chave do arquivo de configuração para a App Configuration Store e deixa todo o resto na App Configuration Store intacto.

Resolução de Problemas

Se ocorrer um erro inesperado, os logs de depuração podem ser habilitados definindo a variável system.debug de pipeline como true.

FAQ

Como posso carregar vários ficheiros de configuração?

Crie várias instâncias da tarefa Push de Configuração do Aplicativo do Azure dentro do mesmo pipeline para enviar vários arquivos de configuração para o repositório de Configuração de Aplicativos.

Como posso criar referências do Cofre da Chave ou sinalizadores de recursos usando essa tarefa?

Dependendo do perfil de conteúdo do arquivo selecionado, consulte exemplos no suporte da Configuração do Aplicativo do Azure para o arquivo de configuração.

Por que estou recebendo um erro 409 ao tentar enviar valores de chave para meu repositório de configuração?

Uma mensagem de erro de conflito 409 ocorrerá se a tarefa tentar remover ou substituir um valor-chave que está bloqueado na loja de configuração de aplicativos.