Dev ops integração contínua com jenkins

26
DevOps Integração Contínua com Jenkins AGILE MARANHÃO Michel Cordeiro, CSPO, CSM, MBA Michel Cordeiro @code_shell

Transcript of Dev ops integração contínua com jenkins

Page 1: Dev ops integração contínua com jenkins

DevOpsIntegração Contínua com

Jenkins

AGILE MARANHÃO

Michel Cordeiro, CSPO, CSM, MBA

Michel Cordeiro@code_shell

Page 2: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Meu Background

DesenvolvedorEstagiário Analista de Sistemas Analista de Negócio Coord. de Desenvolvimento

java, java, java…

java, maven, spring, hibernate…

agile, SM, QA, times, arquiteturas…

MBA, PO, processos, negociação, cliente…

certificações, facilitação, projetos, devops…

Page 3: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Mini Bio: Sou Agilista, Coordenador de Projetos e Analista de Processos de Negócio, um apaixonado por essas áreas há alguns anos. Atuo no desenvolvimento de projetos, pessoas e processos.Certificações: CSPO, CSM

Qualificações:- Resolução de conflitos para representantes de empresas (ENAM/UnB)- Formação de Analista de Processos (Gart Capote)- Modelagem e Simulação de Processos (InnovoGroup)- MBA em Análise de Processos de Negócio (IGTI)- Gerenciamento de Projetos com base no PMBOK 4ª edição (TI Exames)- Instrutor de formação profissional (SENAI-MA)

https://github.com/MichelCordeiro

https://br.linkedin.com/in/michelcordeiro

@code_shell

http://pt.slideshare.net/michelcordeiro

Page 4: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

E aí ??

Page 5: Dev ops integração contínua com jenkins

AGILE MARANHÃO

Michel Cordeiro, CSPO, CSM, MBA

Ciclo de vida de um Dev ?

Page 6: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Page 7: Dev ops integração contínua com jenkins

AGILE MARANHÃO

Michel Cordeiro, CSPO, CSM, MBA

Como anda o seu proceso de deploy

??

Page 8: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Desenvolvimento Produção

Ambiente

Page 9: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Qual foi o problema ???

Page 10: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Hummm, mas em localhost

funciona….

Page 11: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Devs Operações

VS

entregar aplicações o mais rápido possível

ter a certeza que a aplicação está estável e não vai dar

problema

Page 12: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

DevOps

Page 13: Dev ops integração contínua com jenkins

AGILE MARANHÃO

Michel Cordeiro, CSPO, CSM, MBA

Integração Contínua CI

Page 14: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

"Integração continua e uma pratica de desenvolvimento de software onde os membros de um time integram seu trabalho frequentemente. Geralmente uma pessoa integra pelo menos uma vez ao dia - podendo haver multiplas integrações por dia. Cada integração e verificada por um build automatizado(Incluindo os testes) para detectar erros de integração o mais rápido possível. Muitos times acham que essa abordagem leva a diminuir significativamente os problemas de integração e permite que o time desenvolva software coeso mais rapidamente."

-Martin Fowler

Page 15: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

source code

commit

repository

ci server

ci process

build

test

report

Fluxo básico de CI

Page 16: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

“O unico pre-requisito para um desenvolvedor lançar suas alterações na versão principal e que ele consiga executar perfeitamente o código. Isso, claro, inclui passar pelos testes da build. Como com qualquer ciclo de lançamento de código, o desenvolvedor primeiro atualiza sua cópia de trabalho para coincidir com a versão principal, resolve qualquer conflito e então gera o build em sua máquina local. Se o build passar, então ele estará liberado para lançar suas alterações na versão principal.”

-Martin Fowler

Page 17: Dev ops integração contínua com jenkins

AGILE MARANHÃO

Michel Cordeiro, CSPO, CSM, MBA

Deploy Contínuo

Entrega Contínua

VS

Page 18: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Continuous Delivery

Continuous Deployment

Deploy to production

Deploy to production

manual

auto

Page 19: Dev ops integração contínua com jenkins

AGILE MARANHÃO

Michel Cordeiro, CSPO, CSM, MBA

Page 20: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

2004, Sun Microsystems

Linha do tempo…

2005, primeira versão

2007, Reconhecido como uma das

melhores opções de código aberto

2010, Oracle requereu direito ao nome para uma marca registrada

2004 2005 2007 2010 2011

2011, Surge o fork do Hudson. Enfim, JENKINS!

2013

2013, mais de 567 membros no GitHub,

cerca de 1.110 repositórios publicos.

O Hudson possui apenas 32 membros e 17

repositórios.

….

Atualmente são mais de 600 plugins e e a

ferramenta de CI mais popular

Page 21: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Um pouco de Jenkins na prática…

Page 22: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Demonstração prática do Jenkins com:

source code

commit

repository

ci server

ci process

build

test

report

atualização em código

Gitlab

Jenkins

Sonarqube e artifactory

Page 23: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Arquitetura de Exemplo

source code

servidor de buildservidor de webTecnologias:- Jenkins (https://jenkins.io/)- Sonarqueb (http://www.sonarqube.org/)- Artifactory (https://www.jfrog.com/open-source/)- Gitlab (https://about.gitlab.com/)

Tecnologias:- Apache Tomcat 7- (https://tomcat.apache.org/download-70.cgi)

Page 24: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

○ Builds periódicos○ Testes Automatizados○ Builds em ambientes diferentes do desenvolvedor○ Possibilita analise de código○ Possibilita customização○ Reduzir retrabalho○ Reduzir custo da entrega○ Identificar erros mais cedo○ Fácil de operar e configurar○ Comunidade ativa○ UI agradável○ O jenkins integra com outras ferramentas atraves de plugins existentes na própria aplicação

Vantagens

Page 25: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Page 26: Dev ops integração contínua com jenkins

Michel Cordeiro, CSPO, CSM, MBA

AGILE MARANHÃO

Referências

Livro: Jenkins - Automatize tudo sem complicações

Livro: DevOps na prática: entrega de software confiável e automatizada