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
Stefan Teixeira
July 07, 2016
Programming
0
82
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
Tweet
Share
More Decks by Stefan Teixeira
See All by Stefan Teixeira
Scrum Gathering Portugal 2016 - Containerizing Tests with Docker
stefanteixeira
0
81
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
stefanteixeira
0
110
Latinoware 2016 - Continuous Delivery com ferramentas open source
stefanteixeira
0
66
Ágiles 2016 - Using open source tools to support Continuous Delivery
stefanteixeira
0
53
6º Encontro do Grupo de Testes Carioca - Testes em um contexto de Continuous Delivery
stefanteixeira
0
43
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
73
TDC 2016 SP - 5 libs de teste JavaScript que você deveria conhecer
stefanteixeira
0
60
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
stefanteixeira
0
67
Other Decks in Programming
See All in Programming
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
440
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
0
130
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
990
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
4
17k
One Enishi After Another
snoozer05
PRO
0
170
マイベストのシンプルなデータ基盤の話 - Googleスイートとのつき合い方 / mybest-simple-data-architecture-google-nized
snhryt
0
100
Vue 3.6 時代のリアクティビティ最前線 〜Vapor/alien-signals の実践とパフォーマンス最適化〜
hiranuma
1
140
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
320
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
260
Amazon Verified Permissions実践入門 〜Cedar活用とAppSync導入事例/Practical Introduction to Amazon Verified Permissions
fossamagna
2
100
Devoxx BE - Local Development in the AI Era
kdubois
0
150
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
330
Featured
See All Featured
Bash Introduction
62gerente
615
210k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.9k
The World Runs on Bad Software
bkeepers
PRO
72
11k
How GitHub (no longer) Works
holman
315
140k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Optimizing for Happiness
mojombo
379
70k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Documentation Writing (for coders)
carmenintech
75
5.1k
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