Automatizando a entrega/deploy de software

31
Automatizando a implantação de software

Transcript of Automatizando a entrega/deploy de software

Page 1: Automatizando a entrega/deploy de software

Automatizando a implantação de

software

Page 2: Automatizando a entrega/deploy de software

Cuidado, as práticas a seguir são assustadoras!

Page 3: Automatizando a entrega/deploy de software

Ctrl+c, Ctrl+v Deployment

Page 4: Automatizando a entrega/deploy de software
Page 5: Automatizando a entrega/deploy de software

Motoboy Delivery

Page 6: Automatizando a entrega/deploy de software
Page 7: Automatizando a entrega/deploy de software

Pepe Deploy

Pepe

Page 8: Automatizando a entrega/deploy de software
Page 9: Automatizando a entrega/deploy de software

Quando o processo de deploy é manual…

Page 10: Automatizando a entrega/deploy de software

Precisa ser documentado

Page 11: Automatizando a entrega/deploy de software

É tedioso e repetitivo

Page 12: Automatizando a entrega/deploy de software

É leeeeeento

Page 13: Automatizando a entrega/deploy de software

Ninguém dorme

Page 14: Automatizando a entrega/deploy de software

É o usuário quem encontra o

ERRO!

Page 15: Automatizando a entrega/deploy de software

Quanto maior o tempo, maior o desperdício

Page 16: Automatizando a entrega/deploy de software

Como deveriam ser as entregas?

ConfiáveisRápidas

Baratas

Previsíveis Frequentes

Page 17: Automatizando a entrega/deploy de software

http://pt.slideshare.net/jallspaw/ops-metametrics-the-currency-you-pay-for-change-4608108

Page 18: Automatizando a entrega/deploy de software

http://martinfowler.com/bliki/FrequencyReducesDifficulty.html

Page 19: Automatizando a entrega/deploy de software

Manifesto ágil

Entregar frequentemente software funcionando, de poucas semanas a poucos meses, com preferência à

menor escala de tempo.

Page 20: Automatizando a entrega/deploy de software

GIGANTE DAS REDES SOCIAIS

2 DEPLOYS POR DIA

1.5GB

http://blog.octo.com/pt-br/os-padroes-dos-gigantes-da-web-deploy-continuo/

Page 21: Automatizando a entrega/deploy de software

GIGANTE DA GESTÃO DE FOTOGRAFIAS

10+ DEPLOYS POR DIAhttp://blog.octo.com/pt-br/os-padroes-dos-gigantes-da-web-deploy-continuo/

Page 22: Automatizando a entrega/deploy de software

GIGANTE DOS JOGOS SOCIAIS50+ DEPLOYS POR DIA

1 milhão de testes por dia

http://blog.octo.com/pt-br/os-padroes-dos-gigantes-da-web-deploy-continuo/

Page 23: Automatizando a entrega/deploy de software
Page 24: Automatizando a entrega/deploy de software

ENTREGANDO FREQUENTEMENT

E DE FORMA AUTOMATIZADA

Page 25: Automatizando a entrega/deploy de software

Pipeline de Implantação

Integração Contínua

Do que precisamos?

Page 26: Automatizando a entrega/deploy de software

“Prática para manter o software em um estado funcional o tempo todo” – Jez Humble

Mudança no código

Compilação

Testes Automatizados

Integração Contínua

Page 27: Automatizando a entrega/deploy de software

“Manifestação automatizada do processo de levar o software do controle de versão até os usuários” – Jez Humble

Pipeline de Implantação

Page 28: Automatizando a entrega/deploy de software

Estágios de um Pipeline de Implantação

ESTÁGIO DE COMMIT

compilaçãotestes de unidadecriação de bináriosanálises de código

artefatos

ESTÁGIO DE TESTES DE ACEITAÇÃO

configuraçãoimplantaçãosmoke tests

testes de aceitação

ESTÁGIO DE TESTES MANUAIS

configuraçãoimplantaçãosmoke tests

testes de aceitação do

usuário

PRODUÇÃO

configuraçãoimplantaçãosmoke tests

DICA: Comece pequeno!

Page 29: Automatizando a entrega/deploy de software

DEMO

JENKINS

Page 30: Automatizando a entrega/deploy de software

ChatOps

Page 31: Automatizando a entrega/deploy de software

@stefanohs

[email protected]

Perguntas?