Do legado ao CI/CD
em 7 minutos
7Masters DevOps
Ter alguma coisa é
melhor que ter nada
Software Legado
• Se tiver controle de versão, todo mundo faz commit
no master
• Não possui testes
• Precisa pedir para alguém subir em produção
• Novos devs demoram dias para conseguirem rodar
em suas máquinas
CI
–Grady Booch (1991)
“continuous integration (CI) is the practice of
merging all developer working copies to a
shared mainline several times a day”
–Bob
“continuous integration (CI) é a prática de:
Devs fazem commit, servidor de integração
testa”
Como você testaria na
sua máquina?
Transforme isso em
scripts
–DEV muito ocupado
“Não tenho tempo para fazer testes.”
Testes de
comportamento com
selenium
Jenkins
apt-get install jenkins
Para todo commit, a
task de teste vai rodar
Você precisa de um
clone da produção
Parabéns, você tem CI
Só não ache que isso significa que acabou ;-)
–DEV com preguiça
“Mas meu banco muda toda hora e não quero
manter várias instâncias.”
Docker ao resgate
• Docker Compose sobe um conjunto de containers
• Migrations criam o schema do banco de dados
• Seeders inserem uma pequena quantidade de
dados selecionados no banco de dados
• Selenium executa os testes
• Tudo isso pode ser executado por um simples
bash script
Plus
Um novo dev tem sua máquina configurada em minutos
CD
–Wikipedia
“Continuos Delivery is: teams produce software
in short cycles, ensuring that the software can
be reliably released at any time”
–Bob
“Continuos Delivery é: Devs fazem commit,
servidor de integração testa e faz deploy (sob
demanda).”
Separar código de
produção do de
desenvolvimento
Gitflow
• develop = código em desenvolvimento
• feature/alguma-coisa = código em
desenvolvimento isolado
• release/1.2.3 = código pronto para beta
• hotfix/1.2.3 = código de correção de bug de
produção
• master = código para produção
Deploy fácil = git pull
na branch master
Crie uma task que pode
ser executada se a
anterior deu certo
Parabéns, você tem CD
Só não ache que isso significa que acabou ;-)
@GABRIELRCOUTO
GITHUB.COM/
GABRIELRCOUTO
TRABALHE COMIGO!
CONTATO@MEMED.COM.BR

7Masters - Devops - Do legado ao ci cd em 7 minutos