Recomendações para a integração contínua
Aplica-se a esta Power Platform recomendação de lista de verificação de Excelência Operacional bem arquitetada:
OE:04 | Otimize os processos de desenvolvimento de software e garantia de qualidade seguindo práticas comprovadas pela indústria para desenvolvimento e testes. Para uma designação de funções clara, normalize práticas em diversos componentes, tais como ferramentas, controlo de origem, padrões de estrutura da aplicações, documentação e guias de estilo. |
---|
A adoção da integração contínua/entrega contínua (CI/CD) pode aumentar a complexidade do desenvolvimento para desenvolvedores cidadãos. No entanto, um processo de desenvolvimento escalável e automatizado que possa incorporar rapidamente novas funcionalidades e correção de erros é fundamental para um processo de desenvolvimento de fusão fiável e sustentável.
Como programador, pode fazer pequenas alterações ao código, enviá-las para um repositório de código e obter comentários quase instantâneos sobre a qualidade, a cobertura dos testes e os erros introduzidos. Este processo permite trabalhar mais rapidamente, com mais confiança e menos riscos. A integração contínua é uma prática em que os sistemas de controle de origem e os pipelines de implantação são integrados para fornecer mecanismos automatizados de compilação, teste e feedback para as equipes de desenvolvimento de software.
Principais estratégias de design
A integração contínua é uma prática de desenvolvimento de software que os programadores utilizam para integrar atualizações de software num sistema de controlo de fontes com uma cadência regular.
O processo de integração contínua começa quando um engenheiro cria um pedido de pull no GitHub para sinalizar ao sistema de CI que as alterações de código estão prontas para serem integradas. Idealmente, o processo de integração valida o código em relação a várias linhas de base e testes. Em seguida, fornece feedback ao engenheiro requerente sobre o estado desses testes.
Se as verificações e os testes de base correrem bem, o processo de integração produz e prepara os ativos que implementam o software atualizado. Estes ativos incluem código compilado e imagens de contentores.
A integração contínua pode ajudá-lo a fornecer software de alta qualidade mais rapidamente, executando as seguintes ações:
- Execute testes automatizados em relação ao código para permitir a deteção precoce de alterações interruptivas.
- Execute a análise do código para garantir as normas, a qualidade e a configuração do código.
- Execute verificações de conformidade e segurança para garantir que o software não inclui vulnerabilidades conhecidas.
- Execute testes de aceitação ou funcionais para garantir que o software funciona como esperado.
- Forneça comentários rápidos sobre os problemas detetados.
- Se for caso disso, produza ativos ou pacotes implementáveis que incluam o código atualizado.
Ambientes
A definição e configuração do ambiente são fundamentais para uma CI/CD sustentável e fiável. Os ambientes do Power Platform podem ser configurados para isolar diferentes fases de desenvolvimento, teste e implementação de soluções. O processo de CI/CD move as alterações através dessas fases. Estabeleça uma estratégia ambiental com princípios orientadores para ambientes de programação.
Pipelines de integração contínua
Para conseguir a integração contínua, utilize ferramentas para gerir, integrar e automatizar o processo. Um pipeline de integração contínua fornece:
- Uma plataforma para executar testes automatizados
- Verificações de conformidade
- A Denunciar
- Todos os outros componentes que compõem o processo de integração contínua
Na maioria dos casos, o software de pipeline é anexado ao controle do código-fonte, de modo que, quando solicitações pull são criadas ou o software é mesclado em uma ramificação específica, o pipeline de integração contínua é executado. A integração do controlo de origens também oferece a oportunidade de enviar comentários à CI diretamente nos pedidos de pull.
Muitas soluções, como o Azure Pipelines ou o GitHub Actions, fornecem as capacidades de pipelines de integração contínua. Saiba mais em Criar CI/CD com o Azure para Microsoft Power Platform.
Integração do controlo de origens
A integração do seu pipeline de integração contínua com o seu sistema de controlo de origens é fundamental para permitir contribuições de código rápidas e de gestão personalizada.
O pipeline de CI é executado num pedido de pull recém-criado. O pipeline inclui todos os testes, avaliações de segurança e outras verificações. Os resultados dos testes de CI aparecem diretamente no pedido de pull para permitir comentários quase em tempo real sobre a qualidade.
Outra prática popular é a criação de pequenos relatórios ou emblemas que podem ser apresentados no controlo da origem para tornar visíveis os estados de construção atuais.
A imagem seguinte mostra a integração entre o GitHub e um pipeline do Azure DevOps. Neste exemplo, a criação de uma solicitação pull aciona o pipeline. O estado do pipeline aparece no pedido de pull.
Integração de testes
Um elemento chave da integração contínua é a criação e os testes contínuos de código à medida que os programadores fazem contribuições de código. Testar os pedidos de pull à medida que são criados dá feedback imediato de que a consolidação não introduziu alterações interruptivas. A vantagem é que os testes no pipeline de integração contínua podem ser os mesmos testes que são executados durante o desenvolvimento orientado por testes.
Controlos de qualidade para código personalizado
Ao incluir código personalizado nas suas soluções, adicione verificações de qualidade de código a um pipeline de validação para garantir que o código personalizado limpo está a ser confirmado no controlo de origem. Independentemente da linguagem de programação e dos padrões de sintaxe que está a utilizar, existem várias opções para manter a qualidade do código e aumentar a segurança e a governação.
Testes com falhas
Os testes com falhas devem bloquear temporariamente uma implementação e conduzir a uma análise mais profunda do que aconteceu. Os testes com falhas também devem levar a um aperfeiçoamento dos testes ou a uma melhoria da alteração que causou a falha dos testes.
Facilitação do Power Platform
Os pipelines visam Power Platform democratizar o gerenciamento do ciclo de vida dos aplicativos (ALM) para Power Platform e Dynamics 365 clientes, trazendo automação de ALM e recursos de integração contínua e entrega contínua (CI/CD) para o serviço.
Microsoft Power Platform O Build Tools for Azure DevOps pode ser usado para automatizar tarefas comuns de compilação e implantação relacionadas a aplicativos criados Power Platform.
Ações do GitHub para Power Platform permitir que os desenvolvedores criem fluxos de trabalho automatizados do ciclo de vida do desenvolvimento de software. Com as Ações GitHub para o Microsoft Power Platform, pode criar fluxos de trabalho no seu repositório para criar, testar, empacotar, lançar e implementar aplicações; executar automatização; e gerir bots e outros componentes criados no Microsoft Power Platform.
O ALM Accelerator é uma ferramenta de código aberto que consiste em um conjunto de aplicativos, scripts e pipelines projetados para automatizar o processo de integração contínua/entrega contínua.
Automatize testes com o Azure Pipelines.
Power Apps A API Web do verificador fornece um mecanismo para executar verificações de análise estática em relação a personalizações e extensões para a Microsoft Dataverse plataforma.
Microsoft Power Platform CLI (PAC CLI) é uma ferramenta de linha de comando que suporta a importação e exportação de Power Platform soluções, e empacotamento e descompactação de arquivos de origem de Power Platform soluções. A PAC CLI está disponível como uma ferramenta de linha de comando autônoma ou como uma extensão para o código Visual Studio .
Informações relacionadas
- Gerenciamento do ciclo de vida do aplicativo (ALM) com Microsoft Power Platform
- Crie CI/CD com o Azure para Microsoft Power Platform
- Power Platform ambientes
- Estabelecer uma estratégia ambiental
- Governação em matéria de codesenvolvimento
- Use cenários para implementar ALM íntegro com Microsoft Power Apps
- Automatize testes com o Azure Pipelines