Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor

1,233 views

Published on

Palestra apresentada no Agile Testers Conference 2016, no dia 16/04

Published in: Software

Agile Testers Conference 2016 - GoCD + Docker + Docker Compose: uma história de amor

  1. 1. GoCD + Docker 🐳 + Docker Compose 🐙: uma história de amor ❤ Stefan Teixeira @stefan_teixeira stefanfk@gmail.com stefanteixeira.com.br stefanteixeira.com
  2. 2. • 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: stefanfk@gmail.com • Twitter: twitter.com/stefan_teixeira • Facebook: facebook.com/stefan.teixeira • LinkedIn: linkedin.com/in/stefanteixeira • GitHub: github.com/stefanteixeira • SlideShare: slideshare.net/stefanteixeira Sobre
  3. 3. O que é GoCD?
  4. 4. Antes do GoCD
  5. 5. Depois do GoCD
  6. 6. GoCD • Criado pela ThoughtWorks https://www.go.cd/ | https://github.com/gocd/gocd
  7. 7. GoCD • Criado pela ThoughtWorks • Open-source (desde Fev/2014) https://www.go.cd/ | https://github.com/gocd/gocd
  8. 8. GoCD • Criado pela ThoughtWorks • Open-source (desde Fev/2014) • Foco em Continuous Delivery https://www.go.cd/ | https://github.com/gocd/gocd
  9. 9. Por que GoCD?
  10. 10. O poder das abstrações certas
  11. 11. Pipelines são first-class citizens
  12. 12. Como funciona?
  13. 13. Documentação https://docs.go.cd/current/
  14. 14. API Reference https://api.go.cd/current/
  15. 15. Plugins https://www.go.cd/community/plugins.html
  16. 16. Mas o Jenkins não faz isso tudo?
  17. 17. Faz, mas…
  18. 18. GoCD x Jenkins
  19. 19. GoCD x Jenkins
  20. 20. Build Pipeline Plugin
  21. 21. Build Pipeline Plugin 💩
  22. 22. Build Flow Plugin
  23. 23. Build Flow Plugin É bom, mas não suporta steps manuais… 😞
  24. 24. Pipeline Plugin (antigo Workflow) • TUDO em Job DSL (Groovy) 👍
  25. 25. Pipeline Plugin (antigo Workflow) • TUDO em Job DSL (Groovy) 👍 • Foco em Continuous Delivery 👍
  26. 26. Pipeline Plugin (antigo Workflow) • TUDO em Job DSL (Groovy) 👍 • Foco em Continuous Delivery 👍 • Visualização decente só na versão paga 💩
  27. 27. https://www.thoughtworks.com/pt/radar/tools/jenkins-as-a-deployment-pipeline
  28. 28. GoCD + Docker
  29. 29. Imagens do GoCD no DockerHub https://hub.docker.com/r/gocd/gocd-server/ | https://hub.docker.com/r/gocd/gocd-agent/
  30. 30. Customizando imagens https://github.com/gocd/gocd-docker
  31. 31. GoCD + Docker Compose
  32. 32. GoCD + Docker Compose (v2)
  33. 33. GoCD + Docker Compose • Volumes: 2 opções possíveis
  34. 34. GoCD + Docker Compose • Volumes: 2 opções possíveis ➡ Mapeamento com host
  35. 35. GoCD + Docker Compose • Volumes: 2 opções possíveis ➡ Mapeamento com host (mais simples, menos portável)
  36. 36. GoCD + Docker Compose • Volumes: 2 opções possíveis ➡ Mapeamento com host (mais simples, menos portável) ➡ Data container
  37. 37. 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)
  38. 38. E se eu quiser 3 agents?
  39. 39. E se eu quiser 3 agents? 👏👏👏👏👏
  40. 40. E pra rodar Docker dentro do GoCD?
  41. 41. OBS: Dependendo do OS, binding de algumas libs serão necessárias!
  42. 42. Outros Projetos
  43. 43. GoCD Monitor https://github.com/karmats/gocd-monitor
  44. 44. Build Window https://github.com/rouanw/build-window
  45. 45. CI Remote http://timoa.com/projects/ci-remote-for-go-server
  46. 46. "Quero ver se o GoCD é isso tudo…"
  47. 47. Demonstração • Exemplo real de pipeline • Menu admin • Triggers manuais • Adicionando um novo pipeline • Verificando value stream map • Resources
  48. 48. 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 😃
  49. 49. Obrigado! Stefan Teixeira @stefan_teixeira stefanfk@gmail.com stefanteixeira.com.br stefanteixeira.com

×