1

継続的展開システムを実装しようとしていますが、私たちの問題に対する適切な答えを見つけることができないようです。Jenkins を使用して Maven ビルドを実行し、アーティファクトを生成して Nexus にデプロイします。すべてを 1 つの war ファイルまたは tar ファイルにまとめて、Nexus から名前で要求ごとに 1 つのファイルを抽出し、それをアプリケーション サーバーに展開するプロジェクトをいくつか見ますが、これには、利用可能なバージョンを事前に知っておく必要があります。私のプロジェクトには、アプリケーション サーバーを使用してデプロイされない他のアーティファクトの中でもかなりの数の jar/wars/binary があります。私たちがやりたいことは、ソフトウェアのスナップショットまたはリリース リビジョンを nexus から引き出して、インストール パッケージを生成するか、リモート サーバーに直接配信できるようにすることです。

明確化: QA または開発で Jenkins からバージョンを選択できるようにしたい。ここで、Jenkins は利用可能なバージョンについて Nexus をポーリングし、Nexus からサーバーへの自動デプロイを実行します。

ソフトウェアをテストシステムに渡すための簡単なネクサス/Mavenの方法はありますか?

では、nexus をポーリングして、ant/ivy、Jenkins、maven、gradle を通じて利用可能なリビジョンを判断する方法はありますか? 何か参考になれば書きます。

同様の質問がここで尋ねられたことがわかります: Hudson / Jenkins ジョブで Nexus からアーティファクトを選択するにはどうすればよいですか? 、しかし、9か月後の時点ではまだ回答がありません。

4

1 に答える 1

0

Nexus は、標準の HTTP ブラウジング機能を提供します。HTTP を介してリポジトリを参照し、利用可能なものを確認できます。

私はまだあなたのユースケースを理解していません。必要なプロジェクトのバージョンがわかっている場合、何が問題なのですか?

最も簡単な方法は、アーティファクトに必要なバージョンの ${} プレースホルダーを含むインストーラー pom.xml を作成し、mvn を呼び出すことです。mvn package -Dproduct.version=1.0.0

コンテナーを使用する場合、PAX には、mvn:myGroup/myArtifact/myVersion などの特定のアーティファクトを許可するプラグインがあり、Maven から自動的にプルされます。

ネクサスは魔法をかけていません。groups/artifactId/versions の URL 上のすべての既知のパスです。

于 2012-07-11T21:46:43.577 に答える