TeamCity でアーティファクト パスをスクリプトに渡すにはどうすればよいですか。シナリオはこれ
- ビルドプロジェクト
- プロジェクトのデプロイ (#1 へのアーティファクト依存関係あり)
ステップ 2 は aa スクリプトで構成され、
- サービスを停止します (ファイルのロックを解除するため)
- ビルド成果物をサーバーにコピーします
- サービスを再起動します
ステップ 2 に苦労しています。ビルド アーティファクトのパスをスクリプトに渡す必要があると思いますが、その方法がわかりません。
TeamCity でアーティファクト パスをスクリプトに渡すにはどうすればよいですか。シナリオはこれ
ステップ 2 は aa スクリプトで構成され、
ステップ 2 に苦労しています。ビルド アーティファクトのパスをスクリプトに渡す必要があると思いますが、その方法がわかりません。
私たちはこのようなことをします。100% 明確ではありませんが、TeamCity で 2 つの別個のビルドとしてビルドとデプロイを行いたいようで、メイン ビルドのデプロイ ビルドからアーティファクトの依存関係があります。これはまさに私たちが行っていることです。これが私たちのやり方です。
すでに完了しているように聞こえるメインビルドからアーティファクトをセットアップします。
例: **\bin\release\*.* => ビン
アーティファクトの依存関係をセットアップして (スナップショットの依存関係も行いますが、その必要はありません)、アーティファクトをメイン ビルドからプルし、デプロイ ビルドのローカル フォルダーに配置します。
例: 成果物のパス: bin\**\*.* 宛先パス: bin\
実際の展開作業を行うために、MSBuild と PowerShell を組み合わせて使用します。いずれの場合も、相対パスを使用してアーティファクトを参照できます。
ビルド作業フォルダーが次のようになっている場合:
根 |- bin (メイン ビルドから取り込まれたアーティファクト) |- ソース |- ビルド (ビルドおよびデプロイ スクリプトが存在する場所)
次のようなビルド フォルダーにあるデプロイ スクリプトから bin ファイルにアクセスします。
..\bin\[あなたのファイル]
次に、このようにビルド成果物へのパスを渡すことができます
%teamcity.build.checkoutDir%\bin\