com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot...

77
Escalando times e salvando casamentos com continuous delivery Bruno Ghisi @brunogh shipit.resultadosdigitais.com.br

Upload: others

Post on 17-Aug-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Escalando times e salvando casamentos

com continuous delivery

Bruno Ghisi@brunogh

shipit.resultadosdigitais.com.br

Page 2: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Bruno GhisiCTO, Resultados Digitais

@brunogh

Page 3: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

RD Station

Page 4: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

2012

2011 2012

2013 2014hoje

Page 5: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

2015

Page 6: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

+2000 Clientes

Page 7: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

+110 RDoers

Page 8: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

2012

2011 2012

2013 2014hojeCASEI

Page 9: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 10: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

2014

Page 11: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

300 clientes

Page 12: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

300 clientes7 devs1 time

Page 13: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

1. branch do master2. dev, dev, dev3. abrir PR4. review5. teste em staging6. merge master7. deploy

Page 14: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

EU fazia review, teste, merge e

deploy!

Page 15: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

1. branch do master2. dev, dev, dev3. abrir PR4. review5. teste em staging6. merge master7. deploy

Page 16: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

WAT?

Page 17: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 18: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 19: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 20: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Não escala!

Page 21: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Merge/deploy dos outros não é simples

Page 22: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Merge/deploy dos outros não é simples

Centralizar é falta de confiança

Page 23: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Merge/deploy dos outros não é simples

Centralizar é falta de confiançaGargalo para gerar valor

Page 24: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Merge/deploy dos outros não é simples

Centralizar é falta de confiançaGargalo para gerar valor

Cultura ruim

Page 25: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Empower People

Page 26: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

as pessoas irão fazer cagadas

Page 27: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

#1 Melhorar o processo

Page 28: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Testese

Cobertura

Page 29: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Integração Contínua

Page 30: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Circle CI

Page 31: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 32: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Métricas

Page 33: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Code Climate

Page 34: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 35: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Code review

Page 36: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 37: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 38: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

as pessoas irão fazer

cagadas #2

Page 39: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

#2 Automatizar

Page 40: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

TheCapybot

Page 41: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 42: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

+

Page 43: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 44: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 45: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

viaslack.com

Page 46: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

slack > hubot interpreta com hubot deploy > API deployment

do Github > avisa Heaven > deploy Heroku

https://github.com/github/hubot: enginehttps://github.com/ResultadosDigitais/hubot-deploy: integração com Github

https://github.com/atmos/heaven: app para deploy

Page 47: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

1. branch do master2. dev, dev, dev3. abrir PR4. review por alguém do time5. deploy via Capybot6. merge master

Page 48: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Quem abriu o PR é responsável por levá-lo a produção

Page 49: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 50: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Todos felizes

Page 51: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

as pessoas irão fazer

cagadas #3

Page 52: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

#3 nova cultura

Page 53: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Devops

Page 54: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

QA

Page 55: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

compartilharaprendizado

entre os times

Page 56: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

#1 processo #2 automatizar #3 cultura

Page 57: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

e como se recuperar dos problemas?

Page 58: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

localstaging

prod

Page 59: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

1) TestesDatabase forks

Page 60: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

1) TestesDatabase forks

PRs incrementais

Page 61: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

1) Testes Database forks

PRs incrementaisCanary deployment

Page 62: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

2) Plano BHorário agendado e

roteiro

Page 63: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

2) Plano BHorário agendado e

roteiroEstratégia de rollback (automático e scripts)

Page 64: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

In God we trust,all the others must bring

DATA

Page 65: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

New Relic

Librato

Page 66: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Don't call us,we will call you

Page 67: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Log Entries

Rollbar

Page 68: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

mesmo assim um dia você irá falhar feio

Page 69: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 70: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

não é uma praga, é o custo de

andar rápido e crescer

Page 71: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

seja transparente e saiba pedir

desculpas

Page 72: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine
Page 73: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

gera ainda mais confiança no

processo

Page 74: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Para você que não acompanhou

até agora:

Page 75: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

se você está fazendo algo que não escala, comece a mudar hoje

Page 76: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

se você está fazendo algo que não escala, comece a mudar hoje

e salve seu relacionamento!

Page 77: com continuous delivery salvando casamentos shipit ......slack > hubot interpreta com hubot deploy > API deployment do Github > avisa Heaven > deploy Heroku  engine

Bruno Ghisi@brunogh

bruno.ghisi@resultadosdigitais.com.brshipit.resultadosdigitais.com.br