2

目的: 複数のビルドのアーティファクトを 1 つの zip にパッケージ化する ant/cmd スクリプトをセットアップします。これらのいくつかのプロジェクトに依存する最終的なビルド構成を設定することで、これを行う予定です。

したがって、すべてのビルド構成が正常にビルドされ、ビルド サーバー @.BuildServer\system\artifacts{PROJECT}{several configurations} でビルド アーティファクトが生成されます。私の「アーティファクト アグリゲーション」構成では、何をどこで参照できるようにする必要があります。アーティファクトは、ant/cmd スクリプトで使用できる変数を使用しています。つまり、構成 w、x、および y のプロジェクト A があります。ビルド構成 z で参照できるこれらの構成 (w、x、y) の I 変数をどのように定義/構築しますか。現在の Teamcity のドキュメント、つまりhttp://www.jetbrains.net/confluence/display/TCD3/System+Properties+of+a+Build+Configuration#SystemPropertiesofaBuildConfiguration-refを見ました。しかし、これでクエリが解決されないことがわかりました。

w、x、y の構成のアーティファクト パスを設定して、最終的なタスクを簡単にする方法はありますか?

このタスクを達成するための最良の方法は何ですか? どんなアイデアでも大歓迎です。

4

1 に答える 1

2

これが私たちのやり方です。

  1. n+1 構成 (ZIP_ALL) を作成し、すべての n プロジェクトの依存関係を追加します。依存関係トリガーを参照してください。
  2. プロジェクトのビルド結果を集約するためのネットワーク共有 \\server\Build を作成します
  3. そのフォルダーのクリーンアップ戦略が必要です)-すべてをドロップするだけで、チームメイトはSVNリビジョン名でサブフォルダーを作成します(TCはリビジョン値で変数を設定します)
  4. 構成ごとに、msbuild (または ant、または rake) スクリプトを作成します。これにより、ビルドからのすべての出力がビルドおよび圧縮されます (必要な場合)。
  5. zip ファイルまたは完全な出力フォルダーを共通の場所 (\\server\Build) にコピーします。コピー タスクを参照してください。
  6. すべてのファイルを共通の場所に単純に圧縮する ZIP_ALL 構成用の ant スクリプトを作成します。
  7. Artifact Publishingを介して TeamCity に公開します
于 2009-12-18T10:14:55.590 に答える