我想使用MSDeploy将MVC项目部署到使用TeamCity的服务器。当我在PowerShell中这样做我的电脑上,使用以下命令:WebDeploy MSBuild不从TeamCity部署
msbuild.exe .\mvc.csproj /p:PublishProfile=DevServer /p:VisualStudioVersion=11.0
/p:DeployOnBuild=True /p:Password=MyPassword /p:AllowUntrustedCertificate=true
它生成项目并将其部署到服务器(信息在DevServer定义发布配置文件)完美。输出结果显示MSDeployPublish
部分,其中我看到Starting Web deployment task from source...
等文本,然后用行告诉我哪些文件已更新等。
当我在TeamCity上运行此操作时,使用MSBuild Build步骤,在相同文件,具有相同的参数(来自同一工作目录),它构建项目但不发布它。相反,它具有构建过程(CoreCompile,_CopyFilesMarkedCopyLocal,GetCopyToOutputDirectoryItems,CopyFilesToOutputDirectory)的常规输出,但实际上并不会发布任何内容。
我需要对TeamCity中的设置进行哪些更改才能让它以与我的计算机上使用MSBuild相同的方式发布部署?
(TeamCity的7.1,4.0的MSBuild,WebDeploy 3.0时,Visual Studio 12,IIS 7.有关my previous question)
你可以显示PublishProfile的任何部分吗?我们已经有了一个很好的WebDeploy配置,但是我们不使用PublishProfile,我想看看我能否让我适合你。 –
PublishProfile的消毒版本可以在这里找到:https://gist.github.com/7326d2a7f5523058d662 –
Yaakov,你放弃了使用PublishProfile然后使用额外的参数吗? –