私はOctopus Deploy(3.4.12)をトライアルしており、NuGetパッケージ名としてMSビルド名からビルド番号を自動的に使用したいと考えています。例えば、私の最新のMSBuildは、名前を削除した場合「MyAppのBuild_20161019.2」で、私のアプリ名がMyAppをで、その後、私は私のパッケージはMyApp.20161019.2.0.nupkg呼ばれるようにしたいですOctoPackを使用してNuGetパッケージの名前でMSBuildビルド番号を取得するには?
理由は、アプリケーションのアセンブリバージョンは変更されません(歴史的な理由、非ネゲ)ので、ビルド番号を毎回OctoPackにビルドパラメータとして手動で渡さない限りパッケージIMO)、私はパッケージをOctopusライブラリにロードできません。
私は古い学校のTFS XAMLビルド定義btwを使用しています。
私はのparamsは
String.Format("/p:SkipInvalidConfigurations=true {0} /p:OctoPackPackageVersion={1}", AdvancedBuildSettings.GetValue(Of String)("MSBuildArguments", String.Empty), BuildDetail.BuildNumber.Split(CChar("_"))(1))
であり、手順を追ったが、ビルドとに失敗したように、カスタムビルドテンプレートを作成し、ファイル名を指定して実行MSBuildの項目を変更するとブログを見つけたことを指摘しなければなりません次のエラー得られます
Validation Error: The private implementation of activity '1: DynamicActivity' has the following validation error: Compiler error(s) encountered processing expression "String.Format("/p:SkipInvalidConfigurations=true {0} /p:OctoPackPackageVersion={1}", AdvancedBuildSettings.GetValue(Of String)("MSBuildArguments", String.Empty), BuildDetail.BuildNumber.Split(CChar("_"))(1))". 'Microsoft.TeamFoundation.Build.Client.BuildDetail' is not accessible in this context because it is 'Friend'.
@ Cece-MSFTはい、私はそれをします。私は自分の質問に対する答えなので、2日間待たなければなりません。 – DeanOC