Importar configurações para a Configuração do Aplicativo com o Azure Pipelines
A tarefa Importar Configuração do Aplicativo do Azure importa valores-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, pois agora você pode exportar configurações da App Configuration Store e importar configurações para a App Configuration Store.
Pré-requisitos
- Subscrição do Azure - crie uma gratuitamente
- App Configuration store - crie um gratuitamente
- Azure DevOps project - crie um gratuitamente
- Agente do Azure Pipelines versão 2.144.0 ou posterior e Node versão 16 ou posterior para executar a tarefa em agentes auto-hospedados.
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.
No Azure DevOps, vá para o projeto que contém seu pipeline de destino. No canto inferior esquerdo, selecione Configurações do projeto.
Em Pipelines, selecione Ligações do serviço. No canto superior direito, selecione Nova conexão de serviço.
Em Nova conexão de serviço, selecione Gerenciador de Recursos do Azure.
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.
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.
Vá para Conexões do Serviço de Configurações>do Projeto.
Selecione a nova conexão de serviço.
Selecione Gerenciar entidade de serviço.
Observe o valor em Nome para exibiçã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.
Aceda à sua loja de Configuração de Aplicações de destino.
No menu à esquerda, selecione Controle de acesso (IAM).
No painel direito, selecione Adicionar atribuições de função.
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.
Selecione a entidade de serviço associada à conexão de serviço que você criou na seção anterior.
Selecione Rever + atribuir.
Uso em compilações
Esta seção aborda como usar a tarefa de Importação de Configuração do Aplicativo do Azure em um pipeline de compilação do Azure DevOps.
- Navegue até a página do pipeline de construção clicando em Pipelines>Pipelines. Para obter mais informações sobre pipelines de compilação, vá para Criar seu primeiro pipeline.
- 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.
- Se você estiver usando um pipeline de compilação existente, clique no botão Editar no canto superior direito.
- 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.
- Procure a Tarefa de Importação de Configuração do Aplicativo do Azure.
- Configure os parâmetros necessários para que a tarefa importe 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 e em dicas de ferramentas ao lado de cada parâmetro.
- Salve e enfileire uma compilação. O log de compilação exibe todas as falhas que ocorreram durante a execução da tarefa.
Utilização em versões
Esta seção aborda como usar a tarefa de Importação de Configuração do Aplicativo do Azure em um pipeline de lançamento do Azure DevOps.
- Navegue até a página do pipeline de liberação selecionando Pipelines>Releases. Para obter mais informações sobre pipelines de versão, vá para Criar seu primeiro pipeline de versão.
- Escolha um pipeline de liberação existente. Se não tiver um, selecione + Novo para criar um novo.
- Selecione o botão Editar no canto superior direito para editar o pipeline de versão.
- Na lista suspensa Tarefas, escolha o Palco ao qual você deseja adicionar a tarefa. Mais informações sobre estágios podem ser encontradas em Adicionar estágios, dependências, & condições.
- Clique ao + lado do Trabalho ao qual você deseja adicionar uma nova tarefa.
- Na caixa de diálogo Adicionar tarefas, digite Importação de Configuração do Aplicativo do Azure na caixa de pesquisa e selecione-a.
- Configure os parâmetros necessários dentro da tarefa para importar 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 e em dicas de ferramentas ao lado de cada parâmetro.
- Salve e enfileire uma versão. O log de liberação exibe todas as falhas encontradas durante a execução da tarefa.
Parâmetros
Os seguintes parâmetros são usados pela tarefa de Importação de Configuração do Aplicativo:
- 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 é executada na Configuração do aplicativo. Em vez disso, todas as atualizações que teriam sido executadas em uma execução normal são impressas no console para revisão.
- Desmarcado: 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 são nivelados.
- Prefixo: uma cadeia de caracteres anexada ao início de cada chave importada para a App Configuration Store.
- Label: uma cadeia de caracteres adicionada a cada valor-chave como o rótulo dentro da App Configuration store.
- Tipo de conteúdo: uma cadeia de caracteres 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 tags que são adicionadas a cada valor-chave importado 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 de Aplicativo que correspondem ao prefixo e rótulo especificados antes de importar 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 importar novos valores-chave do arquivo de configuração.
- Desmarcado: Importa todos os valores-chave do arquivo de configuração para a App Configuration Store e deixa todo o resto na App Configuration Store intacto.
- Confira:
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?
Para importar vários arquivos de configuração para o repositório de Configuração de Aplicativos, crie várias instâncias da tarefa Importar Configuração de Aplicativo do Azure dentro do mesmo pipeline.
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 importar valores-chave para meu repositório de configuração?
Uma mensagem de erro de conflito 409 ocorre se a tarefa tentar remover ou substituir um valor de chave que está bloqueado na loja de configuração de aplicativos.
Próximo passo
Para obter uma referência completa dos parâmetros ou para usar essa tarefa de pipeline em pipelines YAML, consulte o seguinte documento.
Para saber como exportar valores-chave da sua loja de Configuração de Aplicativos e defini-los como variáveis de pipeline do Azure, continue para o documento a seguir.
Para saber como criar instantâneo em uma loja de configuração de aplicativos, continue para o documento a seguir.