OPS05-BP04 Usar sistemas de gerenciamento de compilação e de implantação - Pilar Excelência operacional

OPS05-BP04 Usar sistemas de gerenciamento de compilação e de implantação

Use sistemas de gerenciamento de compilação e implantação. Esses sistemas reduzem os erros causados pelos processos manuais e o nível de esforço para implantar as alterações.

Na AWS, é possível criar pipelines de integração contínua/implantação contínua (CI/CD) usando serviços como Ferramentas de desenvolvedor da AWS (por exemplo, AWS CodeCommit, AWS CodeBuild, o AWS CodePipeline, o AWS CodeDeploye o AWS CodeStar).

Resultado desejado: Seus sistemas de gerenciamento de compilação e implantação oferecem suporte ao sistema de integração contínua (CI/CD) de sua organização, que fornece recursos para automatizar implementações seguras com as configurações corretas.

Antipadrões comuns:

  • Depois de compilar o código no sistema de desenvolvimento e copiar o executável nos sistemas de produção, há uma falha na inicialização. Os arquivos de log locais indicam que a falha ocorreu devido à ausência de dependências.

  • Você cria a aplicação com êxito com os novos recursos em seu ambiente de desenvolvimento e fornece o código à garantia de qualidade (QA). Ele falha no QA porque não há ativos estáticos.

  • Na sexta-feira, após muito esforço, você consegue criar a aplicação manualmente em seu ambiente de desenvolvimento, incluindo os recursos recém-codificados. Na segunda-feira, você não consegue repetir as etapas que permitiram criar a aplicação com êxito.

  • Você executa os testes que criou para a nova versão. Então você passa a próxima semana configurando um ambiente de teste e executando todos os testes de integração existentes, seguidos pelos testes de performance. O novo código tem um impacto inaceitável na performance e deve ser desenvolvido e testado novamente.

Benefícios de estabelecer esta prática recomendada: Ao fornecer mecanismos para gerenciar atividades de criação e implantação, você reduz o nível de esforço para executar tarefas repetitivas, libera os membros da equipe para se concentrarem em tarefas criativas de alto valor e limita o surgimento de erros provenientes de procedimentos manuais.

Nível de risco exposto se esta prática recomendada não for estabelecida: Médio

Orientação para implementação

Os sistemas de gerenciamento de compilação e implantação são usados para rastrear e implementar mudanças, reduzir erros causados por processos manuais e reduzir o nível de esforço necessário para implantações seguras. Automatize totalmente o pipeline de integração e implantação desde o check-in do código até a compilação, o teste, a implantação e a validação. Isso reduz o tempo de espera, diminui os custos, incentiva o aumento da frequência de mudanças, reduz o nível de esforço e aumenta a colaboração.

Etapas da implementação

Diagrama mostrando um pipeline de CI/CD usando o AWS CodePipeline e serviços relacionados

Diagrama mostrando um pipeline de CI/CD usando o AWS CodePipeline e serviços relacionados

  1. Use o AWS CodeCommit para controlar versões, armazenar e gerenciar ativos (como documentos, código-fonte e arquivos binários).

  2. Use o CodeBuild para compilar seu código-fonte, executar testes de unidade e produzir artefatos prontos para serem implantados.

  3. Use CodeDeploy como serviço de implantação que automatiza as implantações de aplicações para Amazon EC2 instâncias, instâncias on-premises, funções do AWS Lambda sem servidorou Amazon ECS.

  4. Monitore suas implantações.

Recursos

Práticas recomendadas relacionadas:

Documentos relacionados:

Vídeos relacionados: