Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TDC 2016 SP - Continuous Delivery para aplicaçõ...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Stefan Teixeira
July 07, 2016
Programming
86
0
Share
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-source
Palestra apresentada na trilha DevOps Java do TDC SP 2016, no dia 07/07.
Stefan Teixeira
July 07, 2016
More Decks by Stefan Teixeira
See All by Stefan Teixeira
Scrum Gathering Portugal 2016 - Containerizing Tests with Docker
stefanteixeira
0
86
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
stefanteixeira
0
110
Latinoware 2016 - Continuous Delivery com ferramentas open source
stefanteixeira
0
70
Ágiles 2016 - Using open source tools to support Continuous Delivery
stefanteixeira
0
59
6º Encontro do Grupo de Testes Carioca - Testes em um contexto de Continuous Delivery
stefanteixeira
0
48
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
stefanteixeira
0
130
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
stefanteixeira
0
77
TDC 2016 SP - 5 libs de teste JavaScript que você deveria conhecer
stefanteixeira
0
64
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
stefanteixeira
0
72
Other Decks in Programming
See All in Programming
My daily life on Ruby
a_matsuda
3
200
実践ハーネスエンジニアリング:ステアリングループを実例から読み解く / Practical Harness Engineering: Understanding Steering Loops Through Real-World Examples
nrslib
5
5k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
260
Agent Skills を社内で育てる仕組み作り
jackchuka
1
1.8k
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
4
450
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
340
KMP × Kotlin 2.3 - How Android Got Slower While iOS Builds Improved by 47%
rio432
0
170
ハーネスエンジニアリングとは?
kinopeee
13
6.9k
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
190
🦞OpenClaw works with AWS
licux
1
350
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
370
Firefoxにコントリビューションして得られた学び
ken7253
2
160
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Heart Work Chapter 1 - Part 1
lfama
PRO
6
35k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
120
Facilitating Awesome Meetings
lara
57
6.8k
Designing for Timeless Needs
cassininazir
0
220
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
230
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
300
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
240
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
690
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
790
The untapped power of vector embeddings
frankvandijk
2
1.7k
Transcript
Globalcode – Open4education Continuous Delivery para aplicações Java com ferramentas
open-source Stefan Teixeira
[email protected]
/ @stefan_teixeira
• QA Automation Engineer @ Toptal • Blogs técnicos: stefanteixeira.com.br
(pt-br) / stefanteixeira.com (en) • Co-organizador dos meetups DevOps Carioca e Grupo de Testes Carioca Contatos: • E-mail:
[email protected]
• Twitter: twitter.com/stefan_teixeira • LinkedIn: linkedin.com/in/stefanteixeira • GitHub: github.com/stefanteixeira • SlideShare: slideshare.net/stefanteixeira Sobre
Contexto
Contexto • Aplicação Java (Spring Boot)
Contexto • Aplicação Java (Spring Boot) • Apenas server-side
Contexto • Aplicação Java (Spring Boot) • Apenas server-side •
Muitas integrações com outros sistemas internos
Modelando pipelines
None
GoCD • Criado pela ThoughtWorks https://www.go.cd/ | https://github.com/gocd/gocd
GoCD • Criado pela ThoughtWorks • Open-source (desde Fev/2014) https://www.go.cd/
| https://github.com/gocd/gocd
GoCD • Criado pela ThoughtWorks • Open-source (desde Fev/2014) •
Foco em Continuous Delivery https://www.go.cd/ | https://github.com/gocd/gocd
O poder das abstrações certas
Pipelines são first-class citizens
Mas o Jenkins não faz isso tudo?
(Alguns dos) problemas do Jenkins • Plugin hell
(Alguns dos) problemas do Jenkins • Plugin hell • Falta
de maiores níveis de abstração
(Alguns dos) problemas do Jenkins • Plugin hell • Falta
de maiores níveis de abstração • Suporte a CD somente via plugins
https://www.thoughtworks.com/pt/radar/tools/jenkins-as-a-deployment-pipeline
Pipeline
Pipeline
Pipeline -> Passos manuais
None
None
None
None
None
None
None
None
None
None
None
docker-tag
docker-tag docker-push
None
None
None
None
None
None
None
X
App 1 App 2 Simulator App 2 X
None
None
None
None
X
App 1 App 2 Simulator App 2 X
None
None
None
None
None
SSH
SSH
App 1 SSH
None
None
App 1 App 2 App 3 App 4
None
None
SSH
SSH
SSH
SSH
SSH
SSH
https://github.com/cyberdyne-corp/skynet/tree/poc-bluegreen-nginx
https://github.com/cyberdyne-corp/skynet/tree/poc-bluegreen
Outros
None
Referências • Blue-Green deployment: • https://technologyconversations.com/2015/07/02/scaling-to-infinity-with- docker-swarm-docker-compose-and-consul-part-34-blue-green-deployment- automation-and-self-healing-procedure/ • https://github.com/cyberdyne-corp/skynet/tree/poc-bluegreen-nginx
• https://github.com/cyberdyne-corp/skynet/tree/poc-bluegreen • Ferramentas: • https://www.packer.io/ • https://www.go.cd/ • https://www.terraform.io/ • https://www.consul.io/ • https://www.ansible.com/ • http://gliderlabs.com/registrator/latest/ • http://pitest.org/ • http://rest-assured.io/ • http://sparkjava.com/
Globalcode – Open4education Stefan Teixeira @stefan_teixeira
[email protected]
Obrigado! stefanteixeira.com.br stefanteixeira.com