Tutorial: Configurar CI/CD para um aplicativo do Service Fabric usando o Azure Pipelines

Este tutorial é a quarta parte de uma série. Ele mostra como configurar a integração contínua e a implantação contínua (CI/CD) para um aplicativo do Azure Service Fabric usando o Azure Pipelines. Para concluir o tutorial, você deve ter um aplicativo do Service Fabric existente. Este tutorial usa o aplicativo descrito na primeira parte da série de tutoriais.

Neste tutorial, irá aprender a:

  • Adicionar controlo de origem ao seu projeto
  • Criar um pipeline de compilação no Azure Pipelines
  • Criar um pipeline de versão no Azure Pipelines
  • Implementar e atualizar uma aplicação automaticamente

A série de tutoriais mostra como:

Pré-requisitos

Antes de começar este tutorial:

Transferir a aplicação de votação de exemplo

Se você não criou o aplicativo de exemplo de votação na primeira parte desta série, você pode baixá-lo. Numa janela do comando, execute o seguinte comando para clonar o repositório da aplicação de exemplo para o seu computador local.

git clone https://github.com/Azure-Samples/service-fabric-dotnet-quickstart

Preparar um perfil de publicação

Agora que você criou um aplicativo e implantou o aplicativo no Azure, está pronto para configurar a integração contínua. Primeiro, prepare um perfil de publicação em seu aplicativo para uso pelo processo de implantação que é executado no Azure Pipelines. O perfil de publicação deve ser configurado para direcionar o cluster criado anteriormente. Inicie o Visual Studio e abra um projeto de aplicação do Service Fabric existente. No Gerenciador de Soluções, clique com o botão direito do mouse no aplicativo e selecione Publicar.

Escolha um perfil de destino em seu projeto de aplicativo para usar em seu fluxo de trabalho de integração contínua, por exemplo, Cloud. Especifique o ponto final de ligação do cluster. Marque a caixa de seleção Atualizar o aplicativo para que seu aplicativo seja atualizado para cada implantação no Azure DevOps. Selecione o link Salvar perfil para salvar as configurações no perfil de publicação e, em seguida, selecione Cancelar para fechar a caixa de diálogo.

Captura de tela que mostra o envio de um perfil para publicar o aplicativo.

Partilhar a sua solução Visual Studio num novo repositório Git do Azure DevOps

Compartilhe seus arquivos de origem do aplicativo com um projeto no Azure DevOps para que você possa gerar compilações.

Para criar um novo repositório GitHub e repositório Azure DevOps no Visual Studio 2022, selecione Git>Create Git Repository no menu Git.

Selecione sua conta e insira o nome do repositório. Selecione Criar e enviar.

Captura de tela que mostra a criação de um novo repositório Git.

A publicação do repositório cria um novo projeto em sua conta dos Serviços de DevOps do Azure que tem o mesmo nome do repositório local.

Para visualizar o repositório recém-criado, vá para https://dev.azure.com/><organizationname>. Passe o cursor sobre o nome do seu projeto e selecione o ícone Repos .

Configurar a entrega contínua usando o Azure Pipelines

Um pipeline de compilação do Azure Pipelines descreve um fluxo de trabalho que tem um conjunto de etapas de compilação que são executadas sequencialmente. Para implantar em um cluster do Service Fabric, crie um pipeline de compilação que produza um pacote de aplicativo do Service Fabric e outros artefatos. Saiba mais sobre Pipelines de compilação do Azure Pipelines.

Um pipeline de versão do Azure Pipelines descreve um fluxo de trabalho que implementa um pacote de aplicação num cluster. Quando usados juntos, o pipeline de compilação e o pipeline de liberação executam todo o fluxo de trabalho, começando com arquivos de origem e terminando com um aplicativo em execução no cluster. Saiba mais sobre pipelines de versão do Azure Pipelines.

Criar um pipeline de compilação

Abra um navegador da Web e vá para seu novo projeto em https://dev.azure.com/<organization-name>/VotingSample.

Selecione a guia Pipelines e, em seguida, selecione Create Pipeline.

Captura de tela que mostra a criação de um novo pipeline.

Selecione Usar o editor clássico para criar um pipeline sem usar YAML.

Captura de tela que mostra o uso do editor clássico para criar um pipeline.

Para a origem, selecione Azure Repos Git. Para Projeto de equipe, selecione VotingSample. Em Repository, selecione VotingApplication. Deixe a ramificação padrão para compilações manuais e agendadas. Em seguida, selecione Continuar.

Captura de tela que mostra a seleção do repositório no Azure DevOps.

Em Selecione um modelo, selecione o modelo de aplicativo do Azure Service Fabric e selecione Aplicar.

Captura de tela que mostra a seleção e a criação de um modelo.

Em Tarefas, para Pool de agentes, insira Pipelines do Azure. Para Especificação do agente, insira windows-2022.

Captura de ecrã que mostra a seleção de tarefas.

Em Triggers, marque a caixa de seleção Habilitar integração contínua. Em Filtros de ramificação, a especificação de ramificação assume como padrão mestre. Selecione Guardar e colocar em fila de espera para iniciar manualmente uma compilação.

Captura de tela que mostra a seleção de um gatilho.

As compilações também são acionadas após push ou dar entrada. Para verificar o progresso da compilação, selecione a guia Compilações . Depois de verificar se a compilação é executada com êxito, defina um pipeline de liberação que implante seu aplicativo em um cluster.

Criar um pipeline de versão

Selecione a guia Pipelines e, em seguida, selecione Releases>New pipeline. Em Selecione um modelo, selecione o modelo de Implantação do Azure Service Fabric e selecione Aplicar.

Captura de tela que mostra a seleção de um modelo de versão.

Selecione Tarefas Novas> para adicionar uma nova conexão de cluster.

Captura de tela que mostra a adição de uma conexão de cluster.

Em Nova Conexão do Service Fabric, selecione Autenticação de credenciais Baseada em Certificado ou Microsoft Entra. Especifique um ponto de extremidade de cluster de tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000 (ou o ponto de extremidade do cluster no qual você está implantando).

Para autenticação baseada em certificado, adicione a impressão digital do certificado do servidor usado para criar o cluster. Em Certificado de cliente, adicione a codificação base 64 do ficheiro de certificado de cliente. Consulte as informações de ajuda desse campo para saber como obter essa representação codificada em base 64 do certificado. Além disso, adicione a senha para o certificado. Você pode usar o certificado de cluster ou o certificado de servidor se não tiver um certificado de cliente separado.

Para credenciais do Microsoft Entra, adicione um valor para impressão digital do certificado do servidor. Use o certificado de servidor usado para criar o cluster e as credenciais que deseja usar para se conectar ao cluster em Nome de usuário e Senha.

Selecione Guardar.

Em seguida, adicione um artefato de compilação ao pipeline para que o pipeline de liberação possa encontrar a saída da compilação. Selecione Adicionar artefatos>de pipeline.> Em Origem (Definição de compilação), selecione o pipeline de compilação criado anteriormente. Selecione Adicionar para salvar o artefato de compilação.

Captura de tela que mostra a adição de um artefato.

Habilite um gatilho de implantação contínua para que uma versão seja criada automaticamente quando a compilação for concluída. Selecione o ícone de relâmpago no artefato, habilite o gatilho e selecione Salvar para salvar o pipeline de liberação.

Captura de tela que mostra a ativação do gatilho.

Selecione Create Release Create (Criar>versão) para criar manualmente uma versão. Para monitorar o progresso da versão, selecione a guia Versões .

Verifique se a implantação foi bem-sucedida e se o aplicativo está sendo executado no cluster. Abra um navegador da Web e vá para https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Observe a versão do aplicativo. Neste exemplo, é 1.0.0.20170616.3.

Consolidar e emitir alterações para acionar uma versão

Para verificar se o pipeline de integração contínua está funcionando, verifique algumas alterações de código no Azure DevOps.

À medida que você escreve seu código, o Visual Studio controla as alterações de arquivo em seu projeto na seção Alterações do painel Alterações do Git.

Em Alterações, introduza uma mensagem para descrever a atualização e, em seguida, confirme as alterações.

Captura de tela que mostra a confirmação das alterações mais recentes.

Em Alterações do Git, selecione Push (a seta para cima) para atualizar seu código no Azure Pipelines.

Captura de tela que mostra a opção Push.

Enviar as alterações para o Azure Pipelines aciona uma compilação. Para verificar o progresso da compilação, selecione a guia Pipelines no aplicativo em https://dev.azure.com/organizationname/VotingSample.

Quando a compilação termina, uma versão é criada automaticamente e começa a atualizar o aplicativo no cluster.

Verifique se a implantação foi bem-sucedida e se o aplicativo está sendo executado no cluster. Abra um navegador da Web e vá para https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/. Observe a versão do aplicativo. Neste exemplo, é 1.0.0.20170815.3.

Captura de tela que mostra o aplicativo Votação no Service Fabric Explorer em execução em um navegador, com a versão do aplicativo realçada.

Atualizar a aplicação

Efetue alterações de código na aplicação. Salve e confirme as alterações.

Quando a atualização do aplicativo começar, você poderá acompanhar o progresso da atualização no Service Fabric Explorer:

Captura de tela que mostra o aplicativo Votação no Service Fabric Explorer em execução em um navegador, com mensagens de status realçadas.

A atualização do aplicativo pode levar vários minutos. Quando a atualização estiver concluída, o aplicativo estará executando a próxima versão. Neste exemplo, está executando a versão 1.0.0.20170815.4.

Captura de tela que mostra o aplicativo de votação no Service Fabric Explorer em execução em um navegador, com a versão atualizada do aplicativo realçada.

Próximo passo

Avance para o tutorial seguinte: