Deploy su tomcat multipli con maven 2
Ciao tutti!
Gestire più tomcat server tramite maven è semplicissimo.
Nel vostro pom.xml aggiungete più profili, uno per ogni server su cui volete fare il deploy del vostro war, in questo modo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<project> ... <profiles> <profile> <id>tomcat-pre</id> <activation/> <properties> <tomcat-server>tomcat-1</tomcat-server> <tomcat-url>http://192.168.###.###:8080/manager</tomcat-url> </properties> </profile> <profile> <id>tomcat-prod</id> <activation/> <properties> <tomcat-server>tomcat-2</tomcat-server> <tomcat-url>http://192.168.###.###:8080/manager</tomcat-url> </properties> </profile> </profiles> ... </project> |
E configurare il tomcat-maven-plugin in questo modo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<project> ... <build> <pluginManagement> <plugins> ... <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <configuration> <server>${tomcat-server}</server> <url>${tomcat-url}</url> </configuration> </plugin> ... </plugins> </pluginManagement> </build> |
Fatto questo non vi resta che censire i server nel file ~/.m2/settings.xml. In questo modo le vostre credenziali di accesso ai server sono al sicuro perché non incluse dentro la vostra web application:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<settings> <servers> <server> <id>tomcat-1</id> <username>admin</username> <password>changeit1</password> </server> <server> <id>tomcat-2</id> <username>root</username> <password>changeit2</password> </server> </servers> ... </settings> |
Ora non vi resta che eseguire il target deploy di maven indicando quale sia il profilo e, quindi, il server su cui effettuare il deploy. Potete indicare il profilo semplicemente tramite l’opzione “-P” al comando mvn:
1 |
mvn tomcat:deploy -P tomcat-prod |
Alla prossima!
Fede