Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Práticas de CICD com AWS Developer Tools

Práticas de CICD com AWS Developer Tools

Slides da apresentação realizada no AWS User Group Joinville, na trilha de DevOps do TDC São Paulo de 2019 e na Campus Party de 2019, sobre utilização das ferramentas para desenvolvedores da AWS para implementação de práticas de CI/CD.

Marcelo Palladino

July 23, 2019
Tweet

More Decks by Marcelo Palladino

Other Decks in Technology

Transcript

  1. Agenda • Problema e contextualização • Nomenclatura • Demonstrações •

    Leitura cuidadosa de um pipeline complexo • Conclusões • Pontos de atenção • Referências
  2. Ouvir primeiro para conversar depois. Automatize atendimentos e facilite sua

    vida. Fácil de conversar, simples de atender. omni social bot Plataforma SaaS para atendimento ao consumidor
  3. O que temos feito? Source Build Pre- Test Deploy Post-

    Test Continuous integration Continuous delivery Continuous deployment
  4. Encaixando o mínimo no AWS Codepipeline Source Build Deploy to

    integration stack Integration tests Deploy to production Source App CodeCommit Build Build CodeBuild Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest
  5. Encaixando o mínimo no AWS Codepipeline Source Build Deploy to

    integration stack Integration tests Deploy to production Source App CodeCommit Build Build CodeBuild Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest
  6. O processo no CodePipeline Source App CodeCommit Build Build CodeBuild

    Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Pipeline
  7. O processo no CodePipeline Source App CodeCommit Build Build CodeBuild

    Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Stage
  8. O processo no CodePipeline Source App CodeCommit Build Build CodeBuild

    Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Action
  9. O processo no CodePipeline Source App CodeCommit Build Build CodeBuild

    Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Transitions Códigos e Artefatos
  10. O processo de release no CodePipeline Source App CodeCommit Build

    Build CodeBuild Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest • Alteração no código ◦ Começa a rodar ◦ Cria artefatos que serão usados em outros ações
  11. O processo de release no CodePipeline Source App CodeCommit Build

    Build CodeBuild Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Alteração 1 • Alteração no código ◦ Começa a rodar ◦ Cria artefatos que serão usados em outros ações
  12. O processo de release no CodePipeline Source App CodeCommit Build

    Build CodeBuild Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Alteração 1 Pipeline rodando
  13. O processo de release no CodePipeline Source App CodeCommit Build

    Build CodeBuild Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Alteração 1 Pipeline rodando
  14. O processo de release no CodePipeline Source App CodeCommit Build

    Build CodeBuild Integration DeployToInteg CodeDeploy Production DeployToProd CodeDeploy IntegTest EndToEndTest Alteração 1 Pipeline rodando
  15. Sobre a estrutura na AWS • Imagens próprias para diminuir

    o tempo de provisionamento • IAM: Permissões, roles, policies, … • VPC (ações que requerem acesso à internet)
  16. Sobre entrega contínua • Código fonte versionado (qualquer tipo de

    código fonte, inclusive aqueles necessários para rodar build/deploy automatizados) • Fluxo claro e documentado de trabalho com GIT • Testes de unidade • Testes de integração/aceitação • Deploy para mais de uma instância
  17. Outras referências relacionadas • https://aws.amazon.com/pt/codepipeline/ • https://aws.amazon.com/pt/s3/ • https://aws.amazon.com/pt/cloudformation/ •

    https://www.terraform.io/ • https://martinfowler.com/bliki/BlueGreenDeployment.html • https://martinfowler.com/bliki/CanaryRelease.html
  18. • Encontros mensais regulares • Mão na massa • Desconferências

    • Palestras internacionais • Maratonas https://www.awsugsp.com/