2. Oracle Code São Paulo São Paulo, 2018
Quem é Fernando Boaglio?
3. Oracle Code São Paulo São Paulo, 2018
Passado (2004)
Quem é Kohsuke Kawaguchi ?
- Funcionário da Sun
- Gostava de Lego
- Programava em Java
- Queria programar em Java EE
- Gostava de programar projeto Open
Source
- No seu dia dia tinha um problema...
4. Oracle Code São Paulo São Paulo, 2018
O dia a dia do programador...
5. Oracle Code São Paulo São Paulo, 2018
O problema...
Kohsuke era o cara que quebrava o build toda hora !
6. Oracle Code São Paulo São Paulo, 2018
O desafio...
E queria escrever um programa que descobrisse que o build
estava quebrado antes dos colegas dele!
7. Oracle Code São Paulo São Paulo, 2018
Nasce o projeto Hudson em 2004
8. Oracle Code São Paulo São Paulo, 2018
Hudson introduz alguns conceitos
Job – tarefa configurada no Jenkins
(app web)
Build – a execução de uma tarefa (gerar pacote)
Artefato – é o resultado de um build (o pacote WAR)
Executor – são as threads que rodam os jobs
Workspace – área de trabalho de cada job (arquivos)
Slaves – serviços remotos que se integram ao
Hudsdon
9. Oracle Code São Paulo São Paulo, 2018
Hudson controlando builds
10. Oracle Code São Paulo São Paulo, 2018
Hudson ganha prêmios (2008)
11. Oracle Code São Paulo São Paulo, 2018
Oracle compra Sun em 2009
12. Oracle Code São Paulo São Paulo, 2018
Hudson como marca registrada
(2011)
14. Oracle Code São Paulo São Paulo, 2018
Jenkins 1.x
● existe há mais de 10 anos no mercado
● mais de 1000 plugins para suportar construção
● build e testes de “qualquer” tipo de projeto
● 2011 Kohsuke Kawaguchi recebeu o prêmio
Google-O'Reilly Open Source Award.
15. Oracle Code São Paulo São Paulo, 2018
Pipelines no Jenkins 1.x
● Gera pacote WAR
● Armazena no Artifactory
● Atualiza base de dados aceite (flyway)
● Deploy em aceite
● Atualiza base de dados produção (flyway)
● Deploy em produção
20. Oracle Code São Paulo São Paulo, 2018
Jenkins 2.x
● 100% compatível com
Jenkins 1.x
● Interface melhorada
● Suporte nativo ao pipeline
● Pipeline como código - Jenkinsfile
21. Oracle Code São Paulo São Paulo, 2018
Jenkins 2.x – exemplo de pipeline
22. Oracle Code São Paulo São Paulo, 2018
E para criar um plugin no Jenkins ?
23. Oracle Code São Paulo São Paulo, 2018
Jenkins não usa banco de dados
24. Oracle Code São Paulo São Paulo, 2018
Passo 1 de 3 – criar de um template
25. Oracle Code São Paulo São Paulo, 2018
Passo 2 de 3 – Desenhe a tela
- Jelly transforma um XML em um código executável (Jelly)
- XML cuidará do input de dados
Passo 3 de 3 : Codifique a lógica e publique no Jenkins
26. Oracle Code São Paulo São Paulo, 2018
Como criei um novo plugin
https://github.com/jenkinsci/sqlplus-script-runner-plugin
● Dos mais de 1000 plugins existentes, não tinha
nenhum que suportasse o Oracle SQL*Plus
● Facilidade de implementação
● Depois de criado, o plugin foi incorporado ao
projeto Jenkins CI
27. Oracle Code São Paulo São Paulo, 2018
SQLPlus Script Runner Plugin
28. Oracle Code São Paulo São Paulo, 2018
SQLPlus Script Runner Plugin
29. Oracle Code São Paulo São Paulo, 2018
SQLPlus Script Runner Plugin