É simples com o Maven no mundo Java
mvn clean deploy
Em nossa configuração, isso faz toda a construção necessária do arquivo WAR (puxando as dependências JAR conforme necessário), a implantação no servidor da web dev e a criação de dados de teste enlatados no banco de dados dev. Uma vez instalado, o Maven lida com os testes funcionais abrangentes através do SeleniumRC para verificar se o aplicativo funciona.
Esse comando único faz com que o aplicativo seja totalmente implantado no cluster do servidor dev, para que esteja prontamente disponível para outros desenvolvedores trabalharem imediatamente (supondo que ele tenha passado nos testes). É incomum uma falha na implantação do desenvolvedor, pois os desenvolvedores verificaram que ela trabalha localmente mvn clean install
.
O artefato de captura instantânea (WAR) é então copiado no repositório Maven para compartilhamento com outros desenvolvedores (conforme o deploy
comportamento padrão do Maven ).
OK, mas você implantou apenas uma captura instantânea no dev, e quanto a teste e produção?
A distribuição para os servidores de teste e de produção (mais tarde) é realizada através do processo de liberação do Maven, que gostamos de manipular manualmente para garantir que alguém esteja atento a qualquer saída suspeita. Os testadores trabalham apenas com artefatos liberados, não instantâneos.
Depois de lançado, um script de construção simples é usado para enviar o arquivo WARTP para o cluster do servidor de teste por SFTP, novamente com alguém assistindo o processo para garantir que nada dê errado.
Finalmente, depois que todos os testadores ficam satisfeitos, o arquivo WAR inalterado é transferido por SFTP até o cluster de servidores de produção de failover, com alguém vigiando de perto e uma posição imediata de reversão em caso de desastre.