6

私の Hudson 構成には 2 つのジョブがあります。それらをAとBとしましょう。

ジョブ A は、特にフォルダーapplication_homeを生成するために作成されました。このフォルダーは、すぐに使用できるインストール済みアプリケーションのホームフォルダーです。

作業Bは、「設置用一括梱包作業」である。インストーラーを生成するには、ジョブ A によって生成されたapplication_homeをコピーする必要があります。私の問題は、いくつかの調査の後、これを簡単な方法で行うことができなかったことです。

シェル スクリプトを使用することもできますが、その場合、ジョブ A のパスと、そのワークスペースがapplication_homeフォルダーを取得する場所を知る必要があります。

これを行う簡単な方法はありますか?

編集

Copy Artifact Pluginを知っています。問題は、アーティファクトのみをコピーすることです。application_homeフォルダはインストーラで使用する構造になっているので、そのままコピーする必要があります。このプラグインを使用してフォルダーのみをコピーする方法がある場合、私はそれを見つけていません。

編集2.答え:

OK、 Copy Artifact Pluginを使用して実行できます。必要がある

  • その構成を「最新の完成ビルドのワークスペースからコピー」に設定します。
  • アーティファクトを次のようにフォルダにコピーするように設定します: target/application_home/**
  • ターゲット ディレクトリを、installation_bundle_folder/application_home のような場所に設定します。

そしてそれは完了です:)

4

1 に答える 1

4

Copy Artifact Pluginを試すことができます。

application_home次に、パッケージ ディレクトリにコピーする "pack-all-together-for-installation-job" にビルド ステップを追加できます。プロジェクト A の最新の安定ビルドのみを含めるオプションがあります。


もう 1 つの方法は、プロジェクト A のビルドを成功させるために、プロジェクト Bが使用するapplication_home場所へのコピーをスクリプト化するビルド後の手順を用意することです。環境変数を使用して、絶対位置を取得できます。(環境変数のリストについては、こちらを参照してください)。WORKSPACE

于 2013-01-30T13:23:05.563 に答える