Je suis à la recherche dans le Maven Wagon Plugin pour tenter de télécharger des artefacts à des partages distants UNC Server (\\servername\share\directory\to\put\to
), et je l'ai obtenu il configuré pour fonctionner comme si dans le POM:Maven Wagon plugin: Can wagon: télécharger le téléchargement à plusieurs endroits?
<build>
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-file</artifactId>
<version>1.0-beta-7</version>
</extension>
</extensions>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>wagon-maven-plugin</artifactId>
<version>1.0-beta-3</version>
<executions>
<execution>
<id>upload-jar-to-folder</id>
<phase>deploy</phase>
<goals>
<goal>upload</goal>
</goals>
</execution>
</executions>
<configuration>
<fromDir>${project.build.directory}</fromDir>
<includes>*</includes>
<url>file://localhost///${servername}/${sharename}</url>
<toDir>directory/to/put/artifact</toDir>
</configuration>
</plugin>
...
</build>
Cela fonctionne très bien pour un serveur lorsque je passe en -Dservername=x -Dsharename=y
, mais comment puis-je le faire évoluer afin de pouvoir déployer un déploiement pour QA ou Prod où j'ai plusieurs serveurs à déployer?
J'ai considéré (et écrit) un script pour exécuter mvn wagon:upload -Penvironment#
plusieurs fois - une fois pour chaque serveur - mais cela me semble imparfait. Si je m'explique à l'aide d'un script pour gérer ce processus, je pourrais tout aussi bien écrire tout le déploiement. Cependant, cela enlève de l'utilité du Wagon (et Maven) ...
Est-il possible d'exécuter plusieurs <executions>
pour un but? Par exemple, en exécutant plusieurs tâches configurées wagon:upload
de profil quand je viens d'exécuter mvn deploy -Pqa
?
Au lieu de télécharger individuellement, vos serveurs ne peuvent-ils pas simplement partager un lecteur réseau? Ils devraient probablement être dans le même réseau et se voir. Juste une suggestion. –
Je ne suis pas sûr que cela fonctionnerait. Le dossier sur lequel je déploie est le dossier 'autodeploy' de l'installation Weblogic, qui est spécifique à chaque instance. Je ne suis pas contre, mais je ne sais pas si je l'ai déjà vu et je ne sais pas comment le faire. –