1

サーバーの展開にはPuppetmCollectiveを使用しています。開発環境とテスト環境の両方で、アーティファクトを (2 つの異なるブランチから) 同じネクサス スナップショット リポジトリにリリースします (開発アーティファクトとテスト アーティファクトを区別するためにmaven を使用します)。アーティファクトの詳細は次のようになります。classifier

開発アーティファクト

<groupId>my.group</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>dev</classifier>

アーティファクトのテスト

<groupId>my.group</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>test</classifier>

これらのアーティファクトは、2 つの Jenkins ジョブを通じてリリースされます。Puppet/mCollectiveの場合LATEST、バージョンとして使用します。ただし、何らかの理由で、最新のものを決定する際に分類子を無視します。つまり、nexus スナップショット リポジトリで dev アーティファクトが で作成され21-July-2015 1PM GMT、テスト アーティファクトが で作成されたと仮定します21-July-2015 2PM GMT。サーバー上で開発デプロイを実行する場合、mCollective エージェントは nexus リポジトリからテスト アーティファクトをダウンロードします (devパペット設定のように分類子を提供した後でも)。

download-artifact-from-nexus.shnexus リポジトリからアーティファクトをダウンロードするために使用されると思われるスクリプトが表示されます。このスクリプトは、Nexus REST API を使用してアーティファクトをダウンロードします。maven-metadata.xmlこれらの REST API については知りませんが、分類子に基づいてどのアーティファクトが最新であるかを明確に示すこのスクリプトは使用されていないと思います。puppet/mCollective は初めてで、これを解決する方法がわかりません。誰かが助けを提供できるかどうかに感謝します。

4

0 に答える 0