Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!

Preview:

DESCRIPTION

Apresentação realizada no evento de 10 anos do GUMA-RS sobre Integração Contínua.

Citation preview

Desenvolvimento de builds automizados com

JenkinsEm Busca do build Perfeito!

Quem somos?

Guilherme Silveira Elias

• Desenvolvedor na • Entusiasta tecnológico• Fã de Agile MMA :-)• Atua nas comunidades de usuários• Formado em Sistemas de Informação

@guilhermelias

Quem somos?

Robson Bittencourt

• Desenvolvedor na • Procura estar aprendendo sempre• Jovem faixa branca em Agile• Curte debater sobre Engenharia de Software• Graduando em Sistemas de Informação

@rluizv

Entrega Contínua e adiantada de valor agregado!!!

Fluxo de Entrega Incremental

Sopa de letrinhas … não vivemos sem elas :-)

C.I. - Continuous Integration

C.D. - Continuous Delivery

Principais diferenças?

C.I. - Continuous Integration

… Builds frequentes … Pequenas integrações

… validação Constante

CONTINUOUS INTEGRATION

#ChuckNorrisPlugin

Integrar Código Continuamente

- Feedback contínuo … - integridade a cada novo commit ...

Boas práticas ...

Mecanismos de prevenção a bugs

Testes Unitários ... - Na correção de bugs; - Em novas funcionalidades;

- Sempre … XP!

#BabyStepsGame!! @JezHumble

Falando em integrar código ...

- Quantas vezes você integra código por dia?

- O que é um tempo aceitável entre commits?

…. O QUÃO ÁGIL seu time é?

c.d. - CONTINUOUS DELIVERY

Principais diferenças?

C.D - Continuous Delivery

… validações Recorrentes … Testes de aceitação … Entregas consistentes … Entregas constantes

One click deploy

Boas práticas de delivery

➔ Trunked base development➔ Feature toggle ➔ DB deployment➔ Bluegreen Deployment➔ Paralel deployment➔ Bootstrap

#DesignPatterns

E o planejamento do deploy?

Mas o que eu faço com o meu integrador??

Tá para tudo!! mas e o integrador?

Que tal dar nome a um servidor … Integrador server :-)

Ou então usa a criatividade !!

#Automacao #Infraestrutura #cloud

DEVOPS

Se dói … pratica! Se praticar … vai automatizar!

Automação

programador poliglota

Boas práticas ...

TESTES DE ACEITAÇÃO

Todo inicio é doloroso … mas #pensamentosistemico

análise estática de código

- Métricas

Acompanhar a evolução do código ...

Crie um ambiente de prevenções

#Dica: Acima de tudo descontraçÃo ...

“VAMO QUEBRA TUDO!”

FÔLEGO !!

Build a cada novo commit ...

Servidor de Integração Contínua

#PENSAMENTOSISTEMICO

Cultura da Melhoria Continua - Iniciativas - Criatividade

CULTURA CIPAT

#multidisciplinaridade#comprometimento#move the people around#poliglotismo#auto gestão#continuous learning

TeamWork !

jenkins … o escolhido!!

Rápido e prático de usar!

> java -jar jenkins.war

rest api

html publisher !

Fácil plugabilidade!!

nice to have plug-ins

# Git# Pipeline# Sonar# Chuck Norris :-)# IRC

referências

- http://www.infoq.com/br/interviews/martin-fowler-agile-brazil- http://jenkins-ci.org- http://umovme.cc- http://codingbyexample.org

@guilhermelias

OBRIGADO!

@rluizv

http://umovmelabs.cchttp://codingbyexample.orghttp://pingosdeagilidade.com.br