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
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor
Search
Stefan Teixeira
April 16, 2016
Programming
0
55
Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor
Palestra apresentada no Agile Testers Conference 2016, no dia 16/04
Stefan Teixeira
April 16, 2016
Tweet
Share
More Decks by Stefan Teixeira
See All by Stefan Teixeira
Scrum Gathering Portugal 2016 - Containerizing Tests with Docker
stefanteixeira
0
76
Agile Brazil 2016 - 5 fundamentos essenciais de padrões xUnit
stefanteixeira
0
100
Latinoware 2016 - Continuous Delivery com ferramentas open source
stefanteixeira
0
58
Ágiles 2016 - Using open source tools to support Continuous Delivery
stefanteixeira
0
47
6º Encontro do Grupo de Testes Carioca - Testes em um contexto de Continuous Delivery
stefanteixeira
0
39
TDC 2016 SP - Desmistificando cobertura de código como métrica de qualidade
stefanteixeira
0
110
TDC 2016 SP - Continuous Delivery para aplicações Java com ferramentas open-source
stefanteixeira
0
79
TDC 2016 SP - Cobertura de código de procedures T-SQL com SQLCC
stefanteixeira
0
64
TDC 2016 SP - 5 libs de teste JavaScript que você deveria conhecer
stefanteixeira
0
57
Other Decks in Programming
See All in Programming
RailsConf 2024: Riffing on Rails: sketch your way to better designed code
kaspth
0
200
WebGLで始める コンピュータグラフィックス入門
heller77
0
370
Sheets API使ってみた
toshi0383
2
180
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
2
470
Go製Webアプリケーションのエラーとの向き合い方大全、あるいはやっぱりスタックトレース欲しいやん / Kyoto.go #50
utgwkk
6
2k
Ruby on Fails - effective error handling with Rails conventions
talyssonoc
0
280
Native Federation: The Future of Micro Frontends in Angular
manfredsteyer
PRO
0
170
otelcol receiver 自作RTA / Pepabo Tech Conference #22 春のSREまつり
arthur1
0
250
The Cutting Edge Of Versioning (LambdaConf 2024)
chriskrycho
0
250
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
0
110
Exploring Type-Informed Lint Rules in Rust based TypeScript Linters
unvalley
3
620
Productivity is Messing Around and Having Fun
hollycummins
1
170
Featured
See All Featured
Making Projects Easy
brettharned
109
5.5k
Navigating Team Friction
lara
179
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.7k
Designing on Purpose - Digital PM Summit 2013
jponch
111
6.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
81
44k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
jQuery: Nuts, Bolts and Bling
dougneiner
60
7.2k
Automating Front-end Workflow
addyosmani
1357
200k
Writing Fast Ruby
sferik
622
60k
The Brand Is Dead. Long Live the Brand.
mthomps
49
30k
Transcript
GoCD + Docker + Docker Compose : uma história de
amor ❤ Stefan Teixeira @stefan_teixeira
[email protected]
stefanteixeira.com.br stefanteixeira.com
• QA Engineer @ M4U • Entusiasta de Automação de
Testes, Agile Testing e DevOps • Blogs técnicos: stefanteixeira.com.br (pt-br) / stefanteixeira.com (en) Contatos: • E-mail:
[email protected]
• Twitter: twitter.com/stefan_teixeira • Facebook: facebook.com/stefan.teixeira • LinkedIn: linkedin.com/in/stefanteixeira • GitHub: github.com/stefanteixeira • SlideShare: slideshare.net/stefanteixeira Sobre
O que é GoCD?
Antes do GoCD
Depois do GoCD
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
Por que GoCD?
O poder das abstrações certas
Pipelines são first-class citizens
Como funciona?
Documentação https://docs.go.cd/current/
API Reference https://api.go.cd/current/
Plugins https://www.go.cd/community/plugins.html
Mas o Jenkins não faz isso tudo?
Faz, mas…
GoCD x Jenkins
GoCD x Jenkins
Build Pipeline Plugin
Build Pipeline Plugin
Build Flow Plugin
Build Flow Plugin É bom, mas não suporta steps manuais…
Pipeline Plugin (antigo Workflow) • TUDO em Job DSL (Groovy)
Pipeline Plugin (antigo Workflow) • TUDO em Job DSL (Groovy)
• Foco em Continuous Delivery
Pipeline Plugin (antigo Workflow) • TUDO em Job DSL (Groovy)
• Foco em Continuous Delivery • Visualização decente só na versão paga
https://www.thoughtworks.com/pt/radar/tools/jenkins-as-a-deployment-pipeline
GoCD + Docker
Imagens do GoCD no DockerHub https://hub.docker.com/r/gocd/gocd-server/ | https://hub.docker.com/r/gocd/gocd-agent/
Customizando imagens https://github.com/gocd/gocd-docker
GoCD + Docker Compose
GoCD + Docker Compose (v2)
GoCD + Docker Compose • Volumes: 2 opções possíveis
GoCD + Docker Compose • Volumes: 2 opções possíveis ➡
Mapeamento com host
GoCD + Docker Compose • Volumes: 2 opções possíveis ➡
Mapeamento com host (mais simples, menos portável)
GoCD + Docker Compose • Volumes: 2 opções possíveis ➡
Mapeamento com host (mais simples, menos portável) ➡ Data container
GoCD + Docker Compose • Volumes: 2 opções possíveis ➡
Mapeamento com host (mais simples, menos portável) ➡ Data container (menos simples, porém mais recomendado)
E se eu quiser 3 agents?
E se eu quiser 3 agents?
E pra rodar Docker dentro do GoCD?
None
None
OBS: Dependendo do OS, binding de algumas libs serão necessárias!
Outros Projetos
GoCD Monitor https://github.com/karmats/gocd-monitor
Build Window https://github.com/rouanw/build-window
CI Remote http://timoa.com/projects/ci-remote-for-go-server
"Quero ver se o GoCD é isso tudo…"
Demonstração • Exemplo real de pipeline • Menu admin •
Triggers manuais • Adicionando um novo pipeline • Verificando value stream map • Resources
Referências • https://highops.com/insights/continuous- delivery-pipelines-gocd-vs-jenkins/ • http://thoughtworks.github.io/p2/issue11/go- cd-the-right-tool-for-he-job/ • PS: Outras
referências estão nos slides, na parte de baixo
Obrigado! Stefan Teixeira @stefan_teixeira
[email protected]
stefanteixeira.com.br stefanteixeira.com