Senhores
Depois de muito apanhar com o Jenkins + Deploy Plugin ( http://www.guj.com.br/java/301239-jenkins-deploy-plugin-jboss-5x ) resolvi testar o Hudson e consegui que ele
o plugin faça o deploy porém ele insiste em adicionar .war no final do meu pacote ou seja ele ele não reconhece que o pacote e um ear.
Plugin : http://wiki.hudson-ci.org/display/HUDSON/Deploy+Plugin
Versão 1.9 ( corrente )
cargo: 1.3.3
Configuração :
WAR/EAR files : projeto-packaging/target/projeto-packaging.ear
Context path :
Container: JBoss 5.1.x
Manager user name: user
Manager password : ****
JBoss URL : http://127.0.0.1:8080
JBoss JMX RMI port :1099
Obrigado!
O problema esta no plugin do hudson na classe CargoContainerAdapter ele sempre faz uso da classe WAR do cargo como apresentado no método abaixo:
/**
* Creates a Deployable object from the given file object.
* @param deployableFile The deployable file to create the Deployable from.
* @return A Deployable object.
*/
protected WAR createWAR(File deployableFile) {
return new WAR(deployableFile.getAbsolutePath());
}
fiz a correção , só não consegui da um push no repositório github =( mas fica a dica :
protected AbstractDeployable createDeployable(File deployableFile) {
String extension = FilenameUtils.getExtension(deployableFile.getAbsolutePath());
if(extension.equalsIgnoreCase(DeployableType.WAR.getType())){
return new WAR(deployableFile.getAbsolutePath());
}else if (extension.equalsIgnoreCase(DeployableType.EAR.getType()) ){
return new EAR(deployableFile.getAbsolutePath());
}else if (extension.equalsIgnoreCase(DeployableType.EJB.getType())){
return new EJB(deployableFile.getAbsolutePath());
}else if (extension.equalsIgnoreCase(DeployableType.SAR.getType()) ){
return new SAR(deployableFile.getAbsolutePath());
}else{
return new org.codehaus.cargo.container.deployable.File(deployableFile.getAbsolutePath());
}
}