Pergunta

Alguém tentou esse recurso e tem algum feedback? Ou alguém conhece algumas amostras úteis para procurar?

Foi útil?

Solução

Eu tentei esse recurso há alguns meses, mas não o uso mais (só porque não preciso, não porque não é um bom recurso).

Basicamente, você define o eixo n, cada eixo é uma propriedade com vários valores.

Vamos com um exemplo: você define o eixo "JDK", com possível valor "1.4", "1.5", "1.6", e você define outro banco de dados de propriedade ", sempre que possível valores" Oracle "," MySQL ".

Assim, Hudson lançará sua construção 6 vezes:

  • Com o JDK 1.4, com o banco de dados da propriedade = Oracle (ou seja, a JVM é lançada com -ddatabase = Oracle)
  • com o JDK 1.5, com o banco de dados de propriedades = Oracle
  • com JDK 1.6, com o banco de dados de propriedades = Oracle
  • com o JDK 1.4, com o banco de dados de propriedades = mysql
  • com o JDK 1.5, com o banco de dados de propriedades = mysql
  • com o JDK 1.6, com o banco de dados de propriedades = mysql

Então, quando tudo terminar, você poderá ver os resultados para cada iteração.

Esse recurso pode ser realmente útil quando você precisa testar seu aplicativo em vários ambientes (no meu exemplo, com diferentes versões de JDK ou banco de dados).

Observe que, exceto pelo eixo JDK, você deve gerenciar por si mesmo a propriedade dada como entrada da Hudson. No meu exemplo, o aplicativo deve levar em consideração a própria propriedade "banco de dados". Eventualmente, uma boa idéia é usar essa propriedade para permitir um perfil específico na configuração do MAVEN2, se você projetar, é monited (ver aqui Para mais detalhes sobre isso).

Espero que minhas explicações sejam claras o suficiente :)

Outras dicas

As compilações da matriz têm vários problemas:

  • É amplamente incompatível com os plugins - eles estão melhorando, mas você precisa manter -se muito atualizado.
  • Os artefatos - muito mais difíceis de se esquivar - os URLs são um pouco mais estranhos, encontrá -los no FS (que você deve evitar de qualquer maneira) agora é um pesadelo.

O que é uma pena, porque o conceito é muito bom e muito útil onde funciona.


Editar

  • Incapacidade de iniciar pontos únicos.

Nossa maneira habitual em torno disso é ter construções parametrizadas configuradas para executar simultaneamente - o que vem com seus próprios problemas, mas nos salva tendo muitos empregos com o mesmo código e constantes diferentes.

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