我有一台TFS 2017服务器,我正在设置CI,但是我无法让构建定义“发布”我的项目,我的MSBuild步骤如下所示:
##[command]"C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe" "FILEPATHTOMYSLN" /nologo /nr:false /dl:CentralLogger,"SOMEPATHANDGUID\1.0.45\ps_modules\MSBuildHelpers\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll";"RootDetailId=SOMEGUID|SolutionDir=RootofSolution"*ForwardingLogger,"SOMEPATHANDGUID\1.0.45\ps_modules\MSBuildHelpers\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll" /p:platform="any cpu" /p:configuration="Debug" /p:VisualStudioVersion="14.0" /p:_MSDeployUserAgent="SOMEGUID"
如何让MSBuild创建仅包含dll和转换后的web.config的发布版本?
答案 0 :(得分:2)
如果您使用 Visual Studio Build 或 MSBuild 步骤,则只需在步骤中指定配置,在构建时,它将进行转换web.config根据您自动指定的配置。
例如,在VS Build步骤中,我使用构建变量进行配置。然后我将此变量的值设置为" release"。构建运行时,它将转换为发布版本。
MSBuild参数:/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"