これを達成する方法はいくつかあります。どちらのオプションでも、圧縮を行うためにサーバーで使用可能な zip ツールが必要です。私は 7za.exe ( 7zipのコマンド ライン バージョン)を使用します。
このファイルはリポジトリにチェックインされるため、Bamboo はソースと共にファイルをダウンロードし、スクリプトまたは msbuild からアクセスできます。
1 - ビルド タスクの後にスクリプト タスクを追加します。これを、次のような PowerShell インライン スクリプトとして実行します。
Start-Process -FilePath "bamboo.build.working.directory\7za.exe" -ArgumentList "a","pathToYourArchive.zip", "folderToZip\*" -NoNewWindow -Wait
ビルド出力を圧縮するスクリプト タスクを追加し、ビルド アーティファクトとして構成した場所にドロップします。
2 - msbuild でリリース ビルド構成をカスタマイズして圧縮を行う
.csproj ファイルを変更し、AfterBuild ターゲットのコメントを外します。Exec タスクを使用して 7za を起動するか、 msbuild 拡張パックなどのカスタム タスクを使用します。
1 の方がおそらく高速なオプションですが、ベスト プラクティスとして、スクリプトをソース管理された ps1 ファイルに入れ、スクリプトを変更して ps1 ファイルを呼び出すようにします。そうすれば、ビルド コードをバージョン管理できます。