Slide 1

Slide 1 text

DevOpsDays Brasília, 2017 Jenkins por dentro e por fora Fernando Boaglio

Slide 2

Slide 2 text

DevOpsDays Brasília, 2017 Quem é Fernando Boaglio?

Slide 3

Slide 3 text

DevOpsDays Brasília, 2017 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 - E tinha um problema...

Slide 4

Slide 4 text

DevOpsDays Brasília, 2017 O dia a dia do programador...

Slide 5

Slide 5 text

DevOpsDays Brasília, 2017 O problema... Kohsuke era o cara que quebrava o build toda hora !

Slide 6

Slide 6 text

DevOpsDays Brasília, 2017 O desafio... E queria escrever um programa que descobrisse que o build estava quebrado antes dos colegas dele!

Slide 7

Slide 7 text

DevOpsDays Brasília, 2017 Nasce o projeto Hudson

Slide 8

Slide 8 text

DevOpsDays Brasília, 2017 Hudson introduz alguns conceitos Job – tarefa configurada no Jenkins Build – a execução de uma tarefa Artefato – é o resultado de um build Executor – são as threads que rodam os jobs Workspace – área de trabalho de cada job Slaves – serviços remotos que se integram ao Hudsdon

Slide 9

Slide 9 text

DevOpsDays Brasília, 2017 Hudson controlando builds

Slide 10

Slide 10 text

DevOpsDays Brasília, 2017 Hudson ganha prêmios

Slide 11

Slide 11 text

DevOpsDays Brasília, 2017 Oracle compra Sun =(

Slide 12

Slide 12 text

DevOpsDays Brasília, 2017 Hudson como marca registrada

Slide 13

Slide 13 text

DevOpsDays Brasília, 2017 Jenkins 1.x

Slide 14

Slide 14 text

DevOpsDays Brasília, 2017 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.

Slide 15

Slide 15 text

DevOpsDays Brasília, 2017 Pipelines no Jenkins 1.x

Slide 16

Slide 16 text

DevOpsDays Brasília, 2017 Jenkins 1.x

Slide 17

Slide 17 text

DevOpsDays Brasília, 2017 Meetups de Jenkins

Slide 18

Slide 18 text

DevOpsDays Brasília, 2017 Livros de Jenkins

Slide 19

Slide 19 text

DevOpsDays Brasília, 2017 Presente

Slide 20

Slide 20 text

DevOpsDays Brasília, 2017 Jenkins 2.x ● 100% compatível com Jenkins 1.x ● Interface melhorada ● Suporte nativo ao pipeline ● Pipeline como código - Jenkinsfile

Slide 21

Slide 21 text

DevOpsDays Brasília, 2017 Jenkins 2.x – exemplo de pipeline

Slide 22

Slide 22 text

DevOpsDays Brasília, 2017 E para criar um plugin no Jenkins ?

Slide 23

Slide 23 text

DevOpsDays Brasília, 2017 Jenkins usa Jelly transforma um XML em um código executável.

Slide 24

Slide 24 text

DevOpsDays Brasília, 2017 Estrutura de um plugin

Slide 25

Slide 25 text

DevOpsDays Brasília, 2017 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

Slide 26

Slide 26 text

DevOpsDays Brasília, 2017 SQLPlus Script Runner Plugin

Slide 27

Slide 27 text

DevOpsDays Brasília, 2017 SQLPlus Script Runner Plugin

Slide 28

Slide 28 text

DevOpsDays Brasília, 2017 SQLPlus Script Runner Plugin

Slide 29

Slide 29 text

DevOpsDays Brasília, 2017 E o futuro ?

Slide 30

Slide 30 text

DevOpsDays Brasília, 2017 Futuro - Projeto Blue Ocean

Slide 31

Slide 31 text

DevOpsDays Brasília, 2017 Futuro - Projeto Blue Ocean Teste o Blue Ocean instalando o seu plugin

Slide 32

Slide 32 text

DevOpsDays Brasília, 2017 Futuro - Machine Learning Jenkins pode ser útil para treinar um modelo

Slide 33

Slide 33 text

DevOpsDays Brasília, 2017 Obrigado! @boaglio http://boaglio.com boaglio https://linkedin.com/in/boaglio