SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
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

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

TDC2018SP | Trilha Testes - Testes de carga e performance com Gatling.io
TDC2018SP | Trilha Testes - Testes de carga e performance com Gatling.ioTDC2018SP | Trilha Testes - Testes de carga e performance com Gatling.io
TDC2018SP | Trilha Testes - Testes de carga e performance com Gatling.io
 
Integracao Continua com CruiseControl
Integracao Continua com CruiseControlIntegracao Continua com CruiseControl
Integracao Continua com CruiseControl
 
Cultura de testes em times mobile
Cultura de testes em times mobileCultura de testes em times mobile
Cultura de testes em times mobile
 
Novidades das Bibliotecas Jetpack do Android (2021)
Novidades das Bibliotecas Jetpack do Android (2021)Novidades das Bibliotecas Jetpack do Android (2021)
Novidades das Bibliotecas Jetpack do Android (2021)
 
Liberte sua arquitetura com Cloud Native - DEVSUMMIT IGTI
Liberte sua arquitetura com Cloud Native - DEVSUMMIT IGTILiberte sua arquitetura com Cloud Native - DEVSUMMIT IGTI
Liberte sua arquitetura com Cloud Native - DEVSUMMIT IGTI
 
C school Extended - Liberte sua arquitetura com Cloud Native
C school Extended - Liberte sua arquitetura com Cloud NativeC school Extended - Liberte sua arquitetura com Cloud Native
C school Extended - Liberte sua arquitetura com Cloud Native
 
Gitlab CI/CD com python
Gitlab CI/CD com pythonGitlab CI/CD com python
Gitlab CI/CD com python
 
Continuous Delivery na SoundCloud
Continuous Delivery na SoundCloudContinuous Delivery na SoundCloud
Continuous Delivery na SoundCloud
 
Integração continua sem traumas
Integração continua sem traumasIntegração continua sem traumas
Integração continua sem traumas
 
Monitoramento de containers Docker
Monitoramento de containers DockerMonitoramento de containers Docker
Monitoramento de containers Docker
 
Android apps ci
Android apps ciAndroid apps ci
Android apps ci
 
Infraestrutura imutável - A base das aplicações na nuvem
Infraestrutura imutável - A base das aplicações na nuvemInfraestrutura imutável - A base das aplicações na nuvem
Infraestrutura imutável - A base das aplicações na nuvem
 
Um mergulho nos containers windows
Um mergulho nos containers windowsUm mergulho nos containers windows
Um mergulho nos containers windows
 
Test Driven Infrastructure na Globo.com
Test Driven Infrastructure na Globo.comTest Driven Infrastructure na Globo.com
Test Driven Infrastructure na Globo.com
 
Automação dos processos para desenvolvedores. Você precisa disso!
Automação dos processos para desenvolvedores. Você precisa disso!Automação dos processos para desenvolvedores. Você precisa disso!
Automação dos processos para desenvolvedores. Você precisa disso!
 
Deu Match! - Azure DevOps e Seus Super Poderes
Deu Match! - Azure DevOps e Seus Super PoderesDeu Match! - Azure DevOps e Seus Super Poderes
Deu Match! - Azure DevOps e Seus Super Poderes
 
controle versão de banco de dados
controle versão de banco de dadoscontrole versão de banco de dados
controle versão de banco de dados
 
Dilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShellDilemas de um Desenvolvedor .NET na Terra do PowerShell
Dilemas de um Desenvolvedor .NET na Terra do PowerShell
 
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
 
GitHub Boas Práticas
GitHub Boas PráticasGitHub Boas Práticas
GitHub Boas Práticas
 

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

[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure
[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure
[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure
Jaqueline Ramos
 
DevOps na nuvem: Azure DevOps Projects
DevOps na nuvem: Azure DevOps ProjectsDevOps na nuvem: Azure DevOps Projects
DevOps na nuvem: Azure DevOps Projects
Qaladies
 

Semelhante a 7Masters - Devops - Do legado ao ci cd em 7 minutos (20)

Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
 
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWSAcelerando a entrega de software com as ferramentas de desenvolvimento da AWS
Acelerando a entrega de software com as ferramentas de desenvolvimento da AWS
 
Construindo pipelines com Azure DevOps
Construindo pipelines com Azure DevOpsConstruindo pipelines com Azure DevOps
Construindo pipelines com Azure DevOps
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
 
Go git - Presentation @Navita
Go git - Presentation @NavitaGo git - Presentation @Navita
Go git - Presentation @Navita
 
Deploy automático em projeto PHP - PHPSPIMA 2016
Deploy automático em projeto PHP - PHPSPIMA 2016Deploy automático em projeto PHP - PHPSPIMA 2016
Deploy automático em projeto PHP - PHPSPIMA 2016
 
Integração Contínua com Hudson
Integração Contínua com HudsonIntegração Contínua com Hudson
Integração Contínua com Hudson
 
Automatize seu processo de entrega de software com CI/CD na AWS
Automatize seu processo de entrega de software com CI/CD na AWSAutomatize seu processo de entrega de software com CI/CD na AWS
Automatize seu processo de entrega de software com CI/CD na AWS
 
De 0 a DevOps
De 0 a DevOpsDe 0 a DevOps
De 0 a DevOps
 
Dev Ops at Paguemenos
Dev Ops at PaguemenosDev Ops at Paguemenos
Dev Ops at Paguemenos
 
[Natal Nerd] IT Talks - NET Core
[Natal Nerd] IT Talks - NET Core[Natal Nerd] IT Talks - NET Core
[Natal Nerd] IT Talks - NET Core
 
[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure
[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure
[.NET Community Summit] CI & CD com ASP.NET Core, VSTS e Azure
 
.Net Community Summit 2018 - CI/CD com ASP.NET Core, VSTS e Azure - Jaqueline...
.Net Community Summit 2018 - CI/CD com ASP.NET Core, VSTS e Azure - Jaqueline....Net Community Summit 2018 - CI/CD com ASP.NET Core, VSTS e Azure - Jaqueline...
.Net Community Summit 2018 - CI/CD com ASP.NET Core, VSTS e Azure - Jaqueline...
 
[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs
 
[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs[O Palco é Delas!] Azure DevTest Labs
[O Palco é Delas!] Azure DevTest Labs
 
Docker, jenkins e gradle para tomar o controle de sua entrega
Docker, jenkins e gradle para tomar o controle de sua entregaDocker, jenkins e gradle para tomar o controle de sua entrega
Docker, jenkins e gradle para tomar o controle de sua entrega
 
DevOps na nuvem: Azure DevOps Projects
DevOps na nuvem: Azure DevOps ProjectsDevOps na nuvem: Azure DevOps Projects
DevOps na nuvem: Azure DevOps Projects
 
QA Ladies 2018 - Azure DevOps Projects
QA Ladies 2018 - Azure DevOps ProjectsQA Ladies 2018 - Azure DevOps Projects
QA Ladies 2018 - Azure DevOps Projects
 
SonarQube
SonarQubeSonarQube
SonarQube
 

Mais de iMasters

Mais de iMasters (20)

O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
 
Postgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio TellesPostgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio Telles
 
Por que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen MoraesPor que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen Moraes
 
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
 
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
 
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
 
Arquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra MartinsArquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra Martins
 
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
 
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana ChahoudDesenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
 
Use MDD e faça as máquinas trabalharem para você - Andreza Leite
 Use MDD e faça as máquinas trabalharem para você - Andreza Leite Use MDD e faça as máquinas trabalharem para você - Andreza Leite
Use MDD e faça as máquinas trabalharem para você - Andreza Leite
 
Entendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita BernardesEntendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita Bernardes
 
Backend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana ArnosBackend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana Arnos
 
Dicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato GroffeDicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato Groffe
 
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
 
Quem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio MaujorQuem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio Maujor
 
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaService Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
 
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto PascuttiErros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
 
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...
 
Construindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina KarklisConstruindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina Karklis
 
Monitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe RegalgoMonitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe Regalgo
 

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