Automatize a compilação e a implantação para fluxos de trabalho de aplicativos lógicos padrão com o Azure DevOps
Para fluxos de trabalho de aplicativos lógicos padrão executados em Aplicativos Lógicos do Azure de locatário único, você pode usar o Visual Studio Code com a extensão Aplicativos Lógicos do Azure (Padrão) para desenvolver, testar e armazenar localmente seu projeto de aplicativo lógico usando qualquer sistema de controle de origem. No entanto, para obter todos os benefícios da implantação fácil e consistente de seus fluxos de trabalho em diferentes ambientes e plataformas, você também deve automatizar seu processo de compilação e implantação.
A extensão Aplicativos Lógicos do Azure (Padrão) fornece ferramentas para você criar e manter processos automatizados de compilação e implantação usando o Azure DevOps. No entanto, antes de iniciar essa automação, considere os seguintes elementos:
O recurso do aplicativo lógico do Azure onde você cria seus fluxos de trabalho
As conexões hospedadas no Azure que os fluxos de trabalho usam e são criadas a partir de conectores gerenciados pela Microsoft.
Essas conexões diferem das conexões que são executadas direta e nativamente com o tempo de execução dos Aplicativos Lógicos do Azure.
As configurações e parâmetros específicos para os diferentes ambientes onde você deseja implantar
A extensão ajuda você a concluir as seguintes tarefas necessárias para automatizar a compilação e a implantação:
Parametrizar referências de conexão em tempo de design. Esta tarefa simplifica o processo de atualização de referências em diferentes ambientes sem interromper a funcionalidade de desenvolvimento local.
Gere scripts que automatizam a implantação para seu recurso de aplicativo lógico padrão, incluindo todos os recursos dependentes.
Gere scripts que automatizam a implantação para conexões hospedadas no Azure.
Prepare parâmetros específicos do ambiente que você pode injetar no pacote de Aplicativos Lógicos do Azure durante o processo de compilação sem interromper a funcionalidade de desenvolvimento local.
Gere pipelines sob demanda usando o Azure DevOps para dar suporte à implantação de infraestrutura junto com os processos de compilação e lançamento.
Este guia mostra como concluir as seguintes tarefas:
Crie um espaço de trabalho e um projeto de aplicativo lógico no Visual Studio Code que inclui os arquivos que criam pipelines para implantação de infraestrutura, integração contínua (CI) e implantação contínua (CD).
Crie uma conexão entre seu espaço de trabalho e o repositório Git no Azure DevOps.
Crie pipelines no Azure DevOps.
Para obter mais informações, veja a seguinte documentação:
Problemas e limitações conhecidos
Esse recurso suporta apenas projetos de aplicativos lógicos padrão. Se o espaço de trabalho Visual Studio Code contiver um projeto de aplicativo lógico Standard e um projeto de código personalizado Functions, ambos terão scripts de implantação gerados, mas os projetos de código personalizado serão ignorados no momento. A capacidade de criar pipelines de compilação para código personalizado está no roteiro.
A extensão cria pipelines para implantação de infraestrutura, integração contínua (CI) e implantação contínua (CD). No entanto, você é responsável por conectar os pipelines ao Azure DevOps e criar os gatilhos relevantes.
Atualmente, a extensão suporta apenas modelos de Gerenciamento de Recursos do Azure (modelos ARM) para scripts de implantação de infraestrutura. Outros modelos estão em planejamento.
Pré-requisitos
Uma conta e subscrição do Azure. Se não tiver uma subscrição, inscreva-se numa conta do Azure gratuita.
Visual Studio Code com a extensão Azure Logic Apps (Standard). Para atender a esses requisitos, consulte os pré-requisitos para Criar fluxos de trabalho padrão com o Visual Studio Code.
Tarefas de compilação e liberação de aplicativos lógicos do Azure (padrão) para tarefas de DevOps do Azure. Você pode encontrar essas tarefas no Azure DevOps Marketplace.
Um repositório Git existente no Azure DevOps onde você pode armazenar seu projeto de aplicativo lógico.
Uma conexão de serviço do Azure Resource Manager com uma entidade de serviço existente.
Um grupo de recursos do Azure existente onde você deseja implantar seu aplicativo lógico.
Criar um espaço de trabalho, projeto e fluxo de trabalho de aplicativo lógico
No Visual Studio Code, na barra de atividades, selecione o ícone do Azure.
Na janela do Azure, na barra de ferramentas Espaço de trabalho, abra o menu Aplicativos Lógicos do Azure e selecione Criar novo espaço de trabalho de aplicativo lógico.
Siga as instruções para concluir as seguintes tarefas:
Selecione a pasta para criar seu espaço de trabalho.
Insira o nome do seu espaço de trabalho.
Selecione o tipo de projeto: Aplicativo lógico
Insira o nome do projeto do aplicativo lógico.
Selecione o modelo de fluxo de trabalho. Insira o nome do fluxo de trabalho.
Selecione se deseja abrir seu espaço de trabalho na janela atual do Visual Studio Code ou em uma nova janela.
O Visual Studio Code mostra seu novo projeto de espaço de trabalho e aplicativo lógico.
Siga estas etapas para abrir o designer de fluxo de trabalho:
Em seu projeto de aplicativo lógico, expanda a pasta com o nome do fluxo de trabalho.
Se ainda não estiver aberto, abra o arquivo workflow.json , abra o menu de atalho do arquivo e selecione Abrir Designer.
Quando você for solicitado a permitir parametrizações para conexões quando o projeto for carregado, selecione Sim.
Essa seleção permite que seu projeto use parâmetros em definições de conexão para que você possa automatizar a compilação e a implantação para diferentes ambientes.
Siga as instruções para selecionar estes itens:
Usar conectores do Azure
Nota
Se você pular esta etapa, poderá usar apenas os conectores internos hospedados em tempo de execução. Para habilitar os conectores hospedados pelo Azure gerenciados pela Microsoft posteriormente, siga estas etapas:
Abra o menu de atalho para o arquivo workflow.json e selecione Usar conectores do Azure.
Selecione um grupo de recursos do Azure existente que você deseja usar para seu aplicativo lógico.
Recarregue o designer de fluxo de trabalho.
O grupo de recursos do Azure existente que você deseja usar para seu aplicativo lógico
Quando terminar, recarregue o designer de fluxo de trabalho. Se solicitado, entre no Azure.
Agora você pode editar o fluxo de trabalho da maneira que desejar e testar localmente seu fluxo de trabalho ao longo do caminho. Para criar e testar um fluxo de trabalho de exemplo, consulte Criar fluxos de trabalho padrão com o Visual Studio Code.
Gerar scripts de implantação
Depois de criar e testar localmente seu fluxo de trabalho, crie seus scripts de implantação.
Na área em branco abaixo de todos os arquivos do projeto, abra o menu de atalho do projeto e selecione Gerar scripts de implantação.
Siga as instruções para concluir estas etapas:
Selecione o grupo de recursos do Azure existente a ser usado para seu aplicativo lógico.
Insira um nome exclusivo para seu recurso de aplicativo lógico.
Insira um nome exclusivo para o recurso da conta de armazenamento.
Insira um nome exclusivo para usar no seu Plano do Serviço de Aplicativo.
Selecione a pasta do espaço de trabalho onde deseja gerar os arquivos.
Local da pasta de implantação Description Nova pasta de implantação (padrão) Crie uma nova pasta no espaço de trabalho atual. Escolha uma pasta diferente Selecione uma pasta diferente no espaço de trabalho atual.
Quando terminar, o Visual Studio Code criará uma pasta chamada deployment/{logic-app-name} na raiz do seu espaço de trabalho. Esta pasta usa o mesmo nome de aplicativo lógico que você forneceu nestas etapas.
Nota
Os valores de variáveis, configurações do aplicativo e parâmetros nos arquivos a seguir são pré-preenchidos com base na entrada fornecida nessas etapas. Quando você segmentar um ambiente diferente, certifique-se de atualizar os valores para os parâmetros criados e arquivos variáveis.
Na pasta {logic-app-name}, você tem a seguinte estrutura:
Nome da pasta Nome e descrição do ficheiro ADOPipelineScripts - CD-pipeline.yml: O pipeline de entrega contínua que contém as instruções para implantar o código do aplicativo lógico no recurso do aplicativo lógico no Azure.
- CD-pipeline-variables.yml: Um arquivo YAML que contém as variáveis usadas pelo arquivo CD-pipeline.yml .
- CI-pipeline.yml: O pipeline de integração contínua que contém as instruções para criar e gerar os artefatos necessários para implantar o recurso de aplicativo lógico no Azure.
- CI-pipeline-variables.yml: Um arquivo YAML que contém as variáveis usadas pelo arquivo CI-pipeline.yml .
- infrastructure-pipeline.yml: Um pipeline YAML "Infrastructure-as-Code" que contém as instruções para carregar todos os modelos ARM no Azure e executar as etapas no arquivo infrastructure-pipeline-template.yml .
- infrastructure-pipeline-template.yml: Um arquivo de pipeline YAML que contém as etapas para implantar um recurso de aplicativo lógico com todas as dependências necessárias e implantar cada conexão gerenciada exigida pelo código-fonte.
- infrastructure-pipeline-variables.yml: Um pipeline YAML que contém todas as variáveis necessárias para executar as etapas no arquivo infrastructure-pipeline-template.yml .ArmModelos - {connection-type}.parameters.json: um arquivo de parâmetros do Gerenciador de Recursos que contém os parâmetros necessários para implantar uma conexão hospedada no Azure chamada {connection-type} no Azure. Esse arquivo existe para cada conexão hospedada pelo Azure em seu fluxo de trabalho.
- {connection-type}.template.json: um arquivo de modelo do Gerenciador de Recursos que representa uma conexão hospedada no Azure chamada {connection-reference} e contém as informações usadas para implantar o recurso de conexão correspondente no Azure. Esse arquivo existe para cada conexão hospedada pelo Azure em seu fluxo de trabalho.
- {logic-app-name}.parameters.json: um arquivo de parâmetros do Gerenciador de Recursos que contém os parâmetros necessários para implantar o recurso de aplicativo lógico padrão chamado {logic-app-name} no Azure, incluindo todas as dependências.
- {logic-app-name}.template.json: um arquivo de modelo do Gerenciador de Recursos que representa o recurso de aplicativo lógico padrão chamado {logic-app-name} e contém as informações usadas para implantar o recurso de aplicativo lógico no Azure.WorkflowParameters parameters.json: Este arquivo JSON é uma cópia do arquivo de parâmetros locais e contém uma cópia de todos os parâmetros definidos pelo usuário, além da versão em nuvem de quaisquer parâmetros criados pela extensão para parametrizar conexões hospedadas no Azure. Esse arquivo é usado para criar o pacote que implanta no Azure.
Conecte seu espaço de trabalho ao repositório Git
Siga estas etapas para inicializar o repositório:
No Visual Studio Code, na barra de atividades, selecione o ícone Controle do código-fonte.
Na janela Controle do código-fonte, selecione Inicializar repositório.
No menu de prompt, selecione Escolher pasta. Selecione a pasta raiz do espaço de trabalho e, em seguida, selecione Inicializar repositório.
Na janela Controle do código-fonte, selecione Abrir repositório.
No menu de prompt, selecione o repositório que você acabou de criar.
Para obter mais informações, consulte Visual Studio Code - Initialize a repository in a local folder.
Siga estas etapas para obter a URL do seu repositório Git para que você possa adicionar um controle remoto:
No Azure DevOps, abra o projeto de equipe para sua organização do Azure DevOps.
No menu à esquerda, expanda Repositórios e selecione Arquivos.
Na barra de ferramentas do painel Arquivos , selecione Clonar.
Na janela Clone Repository, copie a versão HTTPS da URL do clone.
Para obter mais informações, consulte Obter a URL de clone para seu repositório Git no Azure Repos.
Siga estas etapas para adicionar um controle remoto ao seu repositório Git:
No prompt, cole o URL copiado e insira um nome para o controle remoto, que geralmente é de origem.
Agora você criou uma conexão entre o Visual Studio Code e seu repositório.
Antes de configurar seus pipelines na próxima seção, abra o arquivo de CD-pipeline.yml e renomeie o pipeline de CI no
source
atributo para corresponder ao nome do pipeline de CI que você deseja usar.Na janela Controle do código-fonte, confirme as alterações e publique-as no repositório.
Para obter mais informações, consulte Preparar e confirmar alterações de código.
Criar pipelines no Azure DevOps
Para criar a infraestrutura junto com os pipelines de CI e CD no Azure DevOps, repita as seguintes etapas para cada um dos seguintes arquivos de pipeline:
- infrastructure-pipeline.yml para o pipeline "Infraestrutura como código".
- CI-pipeline.yml para o pipeline de Integração Contínua.
- CD-pipeline.yml para o pipeline de Entrega Contínua.
Configurar um pipeline
No Azure DevOps, volte para seu projeto de equipe e para o painel Arquivos de Repos>.
No painel Arquivos, selecione Configurar compilação.
No painel Inventariar seu pipeline, confirme as informações do repositório e selecione Configurar pipeline.
No painel Configurar seu pipeline, selecione Arquivo YAML do Azure Pipelines Existente.
No painel Selecione um arquivo YAML existente, siga estas etapas para selecionar seu arquivo Infrastructure-pipeline.yml:
Em Ramificação, selecione a ramificação onde você confirmou suas alterações, por exemplo, ramificação principal ou ramificação.
Em Path, selecione o caminho a ser usado para seu pipeline. O caminho a seguir é o valor padrão:
deployment/{logic-app-name}/ADOPipelineScripts/{infrastructure-pipeline-name}.yml
Quando estiver pronto, selecione Continuar.
No painel Configurar seu pipeline, selecione Revisar pipeline.
No painel Revisar seu pipeline governado, forneça as seguintes informações:
- Nome do pipeline: insira um nome para o pipeline.
- Pasta de pipeline: selecione a pasta onde salvar o pipeline, que é chamada ./deployment/{logic-app-name}/pipelines.
Quando tiver terminado, selecione Guardar.
Exibir e executar pipeline
Para localizar e executar seu pipeline, siga estas etapas:
No menu esquerdo do seu projeto de equipe, expanda Pipelines e selecione Pipelines.
Selecione a guia Todos para exibir todos os pipelines disponíveis. Encontre e selecione seu pipeline.
Na barra de ferramentas do pipeline, selecione Executar pipeline.
Para obter mais informações, consulte Criar seu primeiro pipeline.