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
Latinoware 2016 - Continuous Delivery com ferra...
Search
Stefan Teixeira
October 20, 2016
Programming
69
0
Share
Latinoware 2016 - Continuous Delivery com ferramentas open source
Palestra apresentada no Latinoware 2016, no dia 20/10.
Stefan Teixeira
October 20, 2016
More Decks by Stefan Teixeira
See All by Stefan Teixeira
Scrum Gathering Portugal 2016 - Containerizing Tests with Docker
stefanteixeira
0
83
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
stefanteixeira
0
110
Ágiles 2016 - Using open source tools to support Continuous Delivery
stefanteixeira
0
57
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 - Continuous Delivery para aplicações Java com ferramentas open-source
stefanteixeira
0
86
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
stefanteixeira
0
76
TDC 2016 SP - 5 libs de teste JavaScript que você deveria conhecer
stefanteixeira
0
63
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
stefanteixeira
0
70
Other Decks in Programming
See All in Programming
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
280
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
190
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
250
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
270
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
220
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
290
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
180
2026-03-27 #terminalnight 変数展開とコマンド展開でターミナル作業をスマートにする方法
masasuzu
0
270
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
2
470
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
210
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
900
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.8k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6k
The Cult of Friendly URLs
andyhume
79
6.8k
KATA
mclloyd
PRO
35
15k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Site-Speed That Sticks
csswizardry
13
1.1k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
340
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
The World Runs on Bad Software
bkeepers
PRO
72
12k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
800
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
320
Transcript
Continuous Delivery com ferramentas open source Stefan Teixeira @stefan_teixeira
[email protected]
stefanteixeira.com.br stefanteixeira.com
• QA Automation Engineer @ Toptal • Co-organizador dos Meetups
DevOps Carioca e Grupo de Testes Carioca • Blogs: stefanteixeira.com.br (pt-br) / stefanteixeira.com (en) 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) • Somente server-side
Contexto • Aplicação Java (Spring Boot) • Somente server-side •
Integrações com outras aplicações internas
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 tudo isso?
Alguns problemas • Plugin hell
Alguns problemas • Plugin hell • Falta de maiores níveis
de abstração
Alguns problemas • 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
Deployment Pipeline
Deployment Pipeline
Passos manuais
None
None
None
None
None
None
None
None
None
None
None
docker-tag
docker-tag docker-push
None
None
None
Exemplos de mutações (PIT)
None
None
None
None
X
App 1 App 2 App 2 Simulator 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
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
Outras ferramentas
None
http://locust.io/
https://github.com/dashing-io/dashing
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/ • http://locust.io/
Obrigado! Stefan Teixeira @stefan_teixeira
[email protected]
stefanteixeira.com.br stefanteixeira.com