num projeto real e não apenas a teoria. Que vocês tenham uma ideia melhor de como essas práticas são empregadas e executadas, e como elas podem ser aplicadas em seus próprios projetos. 4
software que reduz o custo, tempo, e o risco da entrega de mudanças incrementais aos usuários.” Grupo da Prática de Entrega Contínua (TW) 6 "O software é construído de tal maneira que pode ser colocado em produção a qualquer momento.” Jez Humble / Martin Fowler
e repetibilidade de entrega de versão Automatize quase tudo Mantenha tudo sob controle de versão Se é difícil, faça com mais frequência e amenize o sofrimento A qualidade deve estar presente desde o início Pronto quer dizer versão entregue Todos são responsáveis pelo processo de entrega Melhoria contínua 7
no controle de versão Código da aplicação e micro-serviços Configuração da Infra-Estrutura Configuração do ambiente de desenvolvimento (Vagrant) Blog / Documentação Outras dependências (binários de linguagem, imagens de containers e etc) 18
Master Release Promoção Branches de funcionalidade curtos Master e Release não se distanciam Vamos remover o Smoke no futuro A aplicação é compilada em Staging
configurações dos servidores Gerencia o ambiente local (Vagrant) Gerencia as configurações dos containers É utilizado para configurar os builds dos usuários Executa scripts para CloudFormation (VPC, DNS, EC2, S3,…) Executa scripts para Deployments/Implantações (Azul/Verde) Rake Num eventual desastre somos capazes de reconstruir toda a infra-estrutura em aproximadamente duas horas.