Palestra hudson

Preview:

DESCRIPTION

Uma breve introdução sobre integração contínua com hudson

Citation preview

Wende Mendes HiginoWende Mendes Higino

email: wende.mendes@bluesoft.com.bremail: wende.mendes@bluesoft.com.br

Integração Contínua com Integração Contínua com HudsonHudson

ObjetivoObjetivo

* Estimula a equipe a integrar se código no* Estimula a equipe a integrar se código norepositóriorepositório

- Em porções menores- Em porções menores

- Frequentemente- Frequentemente

Integração ContínuaIntegração Contínua

““O segredo para O segredo para solucionarsolucionar um problema rapidamente,um problema rapidamente,

é é encontrá-loencontrá-lo rapidamente.” rapidamente.”

(Martin Fowler)(Martin Fowler)

Integração ContínuaIntegração Contínua

Integração ContínuaIntegração Contínua

ExemploExemplo

Integração Contínua

Integração Contínua

Integração Contínua

Integração Contínua

Integração Contínua

Integração Contínua

Ferramentas Para ICFerramentas Para IC

* Automatização de ciclo de vida do projeto

- Maven 2- Gerencia e automatiza projetos Java

- Baseada em um modelo de convenção sobre confguração

- Utiliza repositórios para download de ferramentas e plugins comuns

- Facilita a tarefa de confguração de ferramentas pois sabe de antemão a localização de seus requisitos

Ferramentas Para ICFerramentas Para IC

* Análise estática de código

- FindBugs- Ferramenta open source

- Busca por padrões de código que sejam potenciais erros

- Possui centenas de padrões conhecidos

Ferramentas Para ICFerramentas Para IC

* Análise estática de código

- PMD- Semelhante ao FindBugs, procura po

padrões de código que potencialmente são falhas de codifcação

- Blocos vazios

- Variáveis não usadas

- Uso indevido de String em detrimento ao uso de StringBufer

- Códigos com alta Complexidade Ciclomática

Ferramentas Para ICFerramentas Para IC

* Análise estática de código- Checkstyle– Verifica padrões de codificação diretamente no código fonte– Gera um relatório com todas as violações encontradas

Ferramentas Para ICFerramentas Para IC

* Testes- Emma– É uma alternativa de ferramenta para cobertura de código fonte através de testes

unitários– Detecta coberturas parciais de uma linha– O usuário pode informar um nível mínimo de cobertura para e será alertado quando

esse nível não for atingido– Possibilita merge de relatórios de instrumentação

HudsonHudson

Integração ContínuaIntegração Contínua

* Frameworks de IC

Continuum

CruiseControl

HudsonBamboo

TeamCity

BuildBot

AnthillPro

Automated Build Studio

HudsonHudson

* Sistema automatizado de suporte à Integração Contínua

- Criado por Kohsuke Kawaguchi

- Mantido por uma ativa comunidade de desenvolvedores

* Open-source

* Fácil instalação e utilização

HudsonHudson

Hudson ( Instalação )Hudson ( Instalação )

Forma rápida:1- Faça download do war do Hudson2- Executar java -jar hudson.war (executa com o Winstone)

Forma menos rápida:1 - Faça download do war do Hudson2 - Instale no seu container (JBoss, Tomcat, etc).3 - A instalação é feita como a instalação de uma aplicação webnormal, seguindo as diferenças para cada container

ExemploExemplo

ObrigadoObrigado