Pergunta

Eu acho que o título resume tudo. Eu só quero saber por que um ou o outro é melhor para a integração contínua constrói de projetos Java do SVN.

Foi útil?

Solução

Como um longo tempo CruiseControl committer e alguém que nunca tenha usado Hudson Estou muito inclinado, mas minha opinião sobre ele é:

Hudson é muito mais fácil de se levantar e correr (em grande parte a partir de uma interface web agradável) e tem uma comunidade de desenvolvimento de plug-in muito ativa.

CruiseControl tem o apoio de muitos 3 material do partido e tem a vantagem de fazendo alguns truques com a configuração XML como plugin de pré-configuração e include.projects que permite versão as informações de configuração com o projeto.

Se você só vai ter alguns constrói Acho Hudson é o vencedor claro. Se você estiver indo para ter lotes - e não se importa o xml - então eu acho que truques de configuração XML do CruiseControl se tornar uma força real

.

Outras dicas

Eu concordo com esta resposta , mas queria acrescentar alguns pontos.

Em suma, Hudson (atualização: Jenkins ) é provavelmente a melhor escolha agora. Em primeiro lugar porque a criação e configuração de trabalhos ( "projetos" no vocabulário CC) é apenas muito mais rápido através de interface Web do Hudson, em comparação com a edição de arquivo de configuração XML do CruiseControl (que usamos para manter em controle de versão apenas para acompanhar melhor). Este último não é especialmente difícil -. Ele simplesmente é mais lento e tedioso

CruiseControl tem sido grande, mas como observado no Dan Dyer apropriadamente chamado post, Por que você ainda não estiver usando Hudson? , ele sofre de ser o primeiro. (Hum, como Grã-Bretanha, se você vai, mais tarde, para a revolução industrial, quando os outros começaram a ultrapassar-lo com as tecnologias mais recentes.)

Nós usamos CruiseControl fortemente e tem gradualmente mudado ao longo de Hudson, finalmente usá-lo exclusivamente. E mais fortemente: no processo que já começou a usar o servidor de CI para muitas outras coisas do que antes, porque a criação e gerenciamento de tarefas Hudson é tão útil. (Agora temos alguns 40+ empregos em Hudson: os habituais Build & teste empregos para os ramos estáveis ??e de desenvolvimento; trabalhos relacionados à liberação (construção de instaladores etc); empregos que correm algum (experimental) métricas contra a base de código; os que run (lento ) testes de interface do usuário ou de integração contra uma versão banco de dados específico;. e assim por diante)

A partir desta experiência eu diria que, mesmo se você tem um monte de compilações, incluindo as complicadas, Hudson é uma escolha bastante seguro porque, como CC, você pode usá-lo para fazer qualquer , basicamente, . Basta configurar o seu trabalho para executar quaisquer que sejam os alvos do Ant ou Maven, scripts shell UNIX ou Windows .bat roteiros, na ordem que desejar.

Como para o material 3rd party ( aqui mencionado por Jeffrey Fredrick ) - que é um ponto bom, mas a minha impressão é que Hudson está se aproximando rapidamente, e que já existe um número muito grande de plugins disponíveis para ele.

Para mim, as duas coisas que eu posso nome que eu perca cerca de CruiseControl são:

  1. Seus e-mails de alerta sobre quebrado constrói foram mais informativo do que aqueles de Hudson. Na maioria dos casos a causa raiz era evidente do próprio e-mail HTML bem formatada do CC, enquanto que com Hudson I geralmente precisam seguir o link para UI web Hudson, e clique em torno de um pouco para obter os detalhes.
  2. CruiseControl painel é mais adequada, fora da caixa, como um " informações radiador "(mostrado em um monitor público, ou projetada em uma parede, de modo que você sempre pode ver rapidamente o status de todos os projetos). Com a primeira página do Hudson, que precisávamos alguns truques Greasemonkey para obter linhas de trabalho tudo bem verde / vermelho.

Minor disclaimer: Eu não têm vindo a seguir o projeto CC de perto para o último ano ou assim. (Mas de um rápida olhada , ele não mudou de alguma forma dramática.)

Nota (2011-02-03): Hudson tem sido renomeado / bifurcada como Jenkins (por Hudson criador Kohsuke Kawaguchi e outros). parece que a Oracle-que controla o nome-vai Hudson manter " Hudson " ao redor também, mas a minha recomendação pessoal é ir com Jenkins , não importa o que a Oracle afirma.

O meu último projeto, que começou em CruiseControl. Que abalou. Em seguida, mudou-se para Hudson, que abalou ainda mais. As coisas que eu gostei sobre Hudson:

  • O montante ea jusante projetos. Assim, uma comprometer com o seu código de acesso a dados, eventualmente, também desencadear uma compilação da camada de apresentação.

  • Use facilmente um projeto existente como ponto de um novo começando - por isso, se você tem o hábito de criar filiais de desenvolvimento, em seguida, tornando-se estes estão sob integração contínua é um piscar de olhos

Uma diferença é que Hudson é o produto de um único gênio intelecto-Kohsuke Kawaguchi. Por causa disso, é consistente, coerente e sólida como uma rocha. A desvantagem poderia haver alguma limitação na taxa de progresso. No entanto, Kohsuke é extremamente prolífica, então eu não estaria muito preocupado com isso. E, é extensível, por isso, se há algo que Kohsuke não tem tempo para (ou não quer), você provavelmente pode fazê-lo.

Eu olhei para ambos Cruise Control and Hudson, mas escolher Hudson como era muito mais fácil de instalar e configurar. Hudson parece muito utilizado nos dias de hoje com as versões regulares e muita extensiblity através de plugins. Eu recomendo-lo.

Hudson é a alternativa mais user-friendly na minha opinião. Ele pode ser configurado e mantido completamente através da interface web (além da instalação inicial do webapp, é claro).

A única maneira isso poderia ser dito sobre CruiseControl é se você contar o built-in editor de arquivos XML.

Ainda assim, depois de ter usado tanto, eu ainda prefiro qualquer um sobre ter compilação não automatizado.

Eu tentei Controle de velocidade ... É bom ... Mas documentos são fragmentados. Painel é confuso. criação Widget também é confuso. Nunca tentou hudson. Vai tentar no fim de semana.

Recentemente configuração Jenkins para a construção de Borland BDS 2006 projetos fazendo uso de Subversion e estou muito feliz com isso. Eu nunca usei CruiseControl ainda, então não posso comparar. Leia meu blog para mais informações.

integração contínua de projeto Delphi com Jenkins

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top