如何使用TFS 2017生成服务器进行Visual Studio发布?

如何使用TFS 2017生成服务器进行Visual Studio发布?,tfs,msbuild,web-config,Tfs,Msbuild,Web Config,我有一台正在设置CI的TFS 2017服务器,但是在获取生成定义以“发布”我的项目时遇到问题,我的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.TeamFou

我有一台正在设置CI的TFS 2017服务器,但是在获取生成定义以“发布”我的项目时遇到问题,我的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创建发布生成?

如果使用Visual Studio buildMSBuild步骤,则只需在步骤和生成时指定配置,它将根据您自动指定的配置转换web.config

例如,在VS构建步骤中,我使用一个构建变量进行配置。然后我将这个变量的值设置为“release”。当构建运行时,它将转换为发布版本


MSBuild参数:
/p:DeployOnBuild=true/p:WebPublishMethod=Package/p:packageassingfile=true/p:SkipInvalidConfigurations=true/p:PackageLocation=“$(build.artifactstagingdirectory)\\”

是的,我以为我在尝试让它工作时做了大部分工作,我认为我的问题归结为缺乏部署经验,我需要在obj文件夹中查找几个目录,以在packagetmp目录中找到我需要的内容。我确实需要添加/p:DeployOnBuild=true。它压缩文件的方式不适用于AWS,因此我使用7zip添加了更多的构建步骤。这绝对让我走上了正确的道路,谢谢!