Processo de desenvolvimento para o Azure

Gorjeta

Este conteúdo é um excerto do eBook, Architect Modern Web Applications with ASP.NET Core e Azure, disponível no .NET Docs ou como um PDF transferível gratuito que pode ser lido offline.

Architect Modern Web Applications with ASP.NET Core and Azure eBook cover thumbnail.

"Com a nuvem, indivíduos e pequenas empresas podem estalar os dedos e configurar instantaneamente serviços de classe empresarial."
- Roy Stephan

Visão

Desenvolva aplicativos ASP .NET Core bem projetados da maneira que desejar, usando o Visual Studio ou a CLI dotnet e o Visual Studio Code ou seu editor de escolha.

Ambiente de desenvolvimento para aplicativos ASP.NET Core

Opções de ferramentas de desenvolvimento: IDE ou editor

Quer prefira um IDE completo e poderoso ou um editor leve e ágil, a Microsoft dá-lhe cobertura ao desenvolver aplicações ASP.NET Core.

Visual Studio 2022. O Visual Studio 2022 é o melhor IDE da categoria para desenvolver aplicativos para o ASP.NET Core. Ele oferece uma série de recursos que aumentam a produtividade do desenvolvedor. Você pode usá-lo para desenvolver o aplicativo e, em seguida, analisar seu desempenho e outras características. O depurador integrado permite pausar a execução do código e percorrer o código em tempo real enquanto ele é executado. Seu suporte para recarregamentos a quente permite que você continue trabalhando com seu aplicativo de onde parou, mesmo depois de fazer alterações de código, sem ter que reiniciar o aplicativo. O executor de teste integrado permite que você organize seus testes e seus resultados e pode até mesmo realizar testes de unidade ao vivo enquanto você está codificando. Usando o Live Share, você pode colaborar em tempo real com outros desenvolvedores, compartilhando sua sessão de código perfeitamente pela rede. E quando você estiver pronto, o Visual Studio inclui tudo o que você precisa para publicar seu aplicativo no Azure ou onde quer que você possa hospedá-lo.

Baixar Visual Studio 2022

Visual Studio Code e dotnet CLI (Ferramentas de plataforma cruzada para Mac, Linux e Windows). Se preferir um editor leve e multiplataforma que suporte qualquer linguagem de desenvolvimento, você pode usar o Microsoft Visual Studio Code e a CLI dotnet. Esses produtos fornecem uma experiência simples, mas robusta, que simplifica o fluxo de trabalho do desenvolvedor. Além disso, o Visual Studio Code oferece suporte a extensões para C# e desenvolvimento web, fornecendo intellisense e tarefas de atalho dentro do editor.

Transferir o SDK do .NET

Transferir o Visual Studio Code

Fluxo de trabalho de desenvolvimento para aplicativos ASP.NET Core hospedados no Azure

O ciclo de vida de desenvolvimento do aplicativo começa na máquina de cada desenvolvedor, codificando o aplicativo usando seu idioma preferido e testando-o localmente. Os desenvolvedores podem escolher seu sistema de controle de origem preferido e podem configurar a Integração Contínua (CI) e/ou a Entrega/Implantação Contínua (CD) usando um servidor de compilação ou com base em recursos internos do Azure.

Para começar a desenvolver um aplicativo ASP.NET Core usando CI/CD, você pode usar os Serviços de DevOps do Azure ou o Team Foundation Server (TFS) da sua própria organização. As Ações do GitHub fornecem outra opção para criar e implantar facilmente aplicativos no Azure, para aplicativos cujo código está hospedado no GitHub.

Configuração inicial

Para criar um pipeline de liberação para seu aplicativo, você precisa ter o código do aplicativo no controle do código-fonte. Configure um repositório local e conecte-o a um repositório remoto em um projeto de equipe. Siga estas instruções:

Crie um Serviço de Aplicativo do Azure onde você implantará seu aplicativo. Crie um Aplicativo Web acessando a folha Serviços de Aplicativo no portal do Azure. Clique em +Adicionar, selecione o modelo de Aplicativo Web, clique em Criar e forneça um nome e outros detalhes. A aplicação Web estará acessível a partir de {name}.azurewebsites.net.

AzureWebApp

Figura 10-1. Criar um novo Aplicativo Web do Serviço de Aplicativo do Azure no Portal do Azure.

Seu processo de compilação de CI executará uma compilação automatizada sempre que um novo código for confirmado no repositório de controle de origem do projeto. Esse processo fornece feedback imediato de que o código cria (e, idealmente, passa em testes automatizados) e pode ser implantado. Esta compilação de CI produzirá um artefato de pacote de implantação da Web e o publicará para consumo pelo seu processo de CD.

Defina seu processo de compilação de CI

Certifique-se de habilitar a integração contínua para que o sistema enfileire uma compilação sempre que alguém da sua equipe confirmar um novo código. Teste a compilação e verifique se ela está produzindo um pacote de implantação da Web como um de seus artefatos.

Quando uma compilação for bem-sucedida, seu processo de CD implantará os resultados da compilação de CI em seu aplicativo Web do Azure. Para configurar esta etapa, crie e configure uma Versão, que será implantada no seu Serviço de Aplicativo do Azure.

Implantar um aplicativo Web do Azure

Depois que o pipeline de CI/CD estiver configurado, você poderá facilmente fazer atualizações em seu aplicativo Web e confirmá-las no controle do código-fonte para implantá-las.

Fluxo de trabalho para desenvolver aplicativos ASP.NET Core hospedados no Azure

Depois de configurar sua conta do Azure e seu processo de CI/CD, desenvolver aplicativos ASP.NET Core hospedados no Azure é simples. A seguir estão as etapas básicas que você geralmente executa ao criar um aplicativo ASP.NET Core, hospedado no Serviço de Aplicativo do Azure como um Aplicativo Web, conforme ilustrado na Figura 10-2.

EndToEndDevDeployWorkflow

Figura 10-2. Fluxo de trabalho passo a passo para criar aplicativos ASP.NET Core e hospedá-los no Azure

Passo 1. Loop interno do ambiente de desenvolvimento local

Desenvolver seu aplicativo ASP.NET Core para implantação no Azure não é diferente de desenvolver seu aplicativo de outra forma. Use o ambiente de desenvolvimento local com o qual você se sente confortável, seja o Visual Studio 2019 ou a CLI dotnet e o Visual Studio Code ou seu editor preferido. Você pode escrever código, executar e depurar suas alterações, executar testes automatizados e fazer confirmações locais no controle do código-fonte até estar pronto para enviar as alterações para o repositório de controle do código-fonte compartilhado.

Passo 2. Repositório de código de aplicativo

Sempre que estiver pronto para compartilhar seu código com sua equipe, você deve enviar suas alterações do repositório de origem local para o repositório de código-fonte compartilhado da equipe. Se você estiver trabalhando em uma ramificação personalizada, essa etapa geralmente envolve mesclar seu código em uma ramificação compartilhada (talvez por meio de uma solicitação pull).

Passo 3. Build Server: Integração contínua. construir, testar, empacotar

Uma nova compilação é acionada no servidor de compilação sempre que uma nova confirmação é feita no repositório de código do aplicativo compartilhado. Como parte do processo de CI, essa compilação deve compilar totalmente o aplicativo e executar testes automatizados para confirmar que tudo está funcionando conforme o esperado. O resultado final do processo de CI deve ser uma versão empacotada do aplicativo Web, pronta para implantação.

Passo 4. Build Server: Entrega contínua

Uma vez que uma compilação tenha sido bem-sucedida, o processo de CD pegará os artefatos de construção produzidos. Esse processo incluirá um pacote de implantação da Web. O servidor de compilação implantará esse pacote no Serviço de Aplicativo do Azure, substituindo qualquer serviço existente pelo recém-criado. Normalmente, esta etapa destina-se a um ambiente de preparação, mas alguns aplicativos são implantados diretamente na produção por meio de um processo de CD.

Passo 5. Aplicação Web do Serviço de Aplicações do Azure

Depois de implantado, o aplicativo ASP.NET Core é executado no contexto de um Aplicativo Web do Serviço de Aplicativo do Azure. Este Aplicativo Web pode ser monitorado e configurado usando o Portal do Azure.

Passo 6. Monitorização e diagnóstico da produção

Enquanto o aplicativo Web está em execução, você pode monitorar a integridade do aplicativo e coletar dados de diagnóstico e comportamento do usuário. O Application Insights está incluído no Visual Studio e oferece instrumentação automática para aplicativos ASP.NET. Ele pode fornecer informações sobre uso, exceções, solicitações, desempenho e logs.

Referências

Crie e implante seu aplicativo ASP.NET principal no Azure
https://learn.microsoft.com/azure/devops/build-release/apps/aspnet/build-aspnet-core