Maven Wagon プラグインを調べて、アーティファクトをリモート UNC サーバー共有 ( \\servername\share\directory\to\put\to
) にアップロードしようとしています。POM で次のように動作するように構成しました。
<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>
を渡すと、これは 1 つのサーバーでうまく機能しますが-Dservername=x -Dsharename=y
、複数のサーバーにデプロイする QA または Prod のデプロイを実行できるように、スケールアウトするにはどうすればよいですか?
サーバーごとに1回ずつ、複数回実行するスクリプトを検討(および作成)しましたmvn wagon:upload -Penvironment#
が、これには欠陥があるようです。このプロセスを処理するためにスクリプトを作成する場合は、デプロイ全体をスクリプト化することもできます。ただし、これは Wagon (および Maven) の有用性を損ないます...
<executions>
1つの目標のために複数を実行する方法はありますか? たとえば、実行wagon:upload
したときにプロファイルで構成された複数のタスクを実行mvn deploy -Pqa
する