Normalmente para realizar o deploy de uma aplicação no Tomcat, temos que entrar em seu painel e realizar o upload manualmente do arquivo .war
, esse processo é um pouco custoso e nem sempre temos acesso a esse painel em um ambiente de produção; Em busca de encontrar uma solução para automatizar esse procedimento com o Gradle
encontrei um plugin fantastico aonde é possível realizar deploy
, undeploy
, redeploy
em servidores remotos e local, inclusive uma funcionalidade muito interessante é iniciar e parar o serviço do Tomcat
localmente;
Segue o link do plugin: Gradle Cargo plugin
No próprio GitHub
(link acima) deles há uma documentação muito completa e bem feita, porém vou deixar uma implementação de exemplo que utilizei para realizar o deploy
em um Tomcat
remoto;
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.bmuschko:gradle-cargo-plugin:2.6.1'
}
}
apply plugin: 'com.bmuschko.cargo'
dependencies {
def cargoVersion = '1.4.5'
cargo "org.codehaus.cargo:cargo-core-uberjar:$cargoVersion",
"org.codehaus.cargo:cargo-ant:$cargoVersion"
}
cargo {
containerId = 'tomcat7x'
port = 8080
deployable {
context = 'my-project'
}
remote {
hostname = 'some.remote.server'
username = 'myUser'
password = 'myPass'
}
tasks:
cargoConfigureLocal
cargoDeployRemote
cargoRedeployLocal
cargoRedeployRemote
cargoRunLocal
cargoStartLocal
cargoStopLocal
cargoUndeployRemote