【发布时间】:2013-01-09 13:11:13
【问题描述】:
我正在尝试使用 MSDeploy 将 MVC 项目部署到使用 TeamCity 的服务器。当我在 powershell 中的计算机上执行此操作时,使用以下命令:
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 构建步骤在同一个文件上使用相同的参数(来自同一个工作目录)运行它时,它会构建项目但不会发布它。相反,它具有来自构建过程的常规输出(CoreCompile、_CopyFilesMarkedCopyLocal、GetCopyToOutputDirectoryItems、CopyFilesToOutputDirectory),但实际上并没有发布任何内容。
我需要对 TeamCity 中的设置进行哪些更改才能使其以与在我的计算机上使用 MSBuild 相同的方式发布部署?
(TeamCity 7.1、MSBuild 4.0、WebDeploy 3.0、Visual Studio 12、IIS 7。与my previous question 相关)
【问题讨论】:
-
您能展示您的 PublishProfile 的任何部分吗?我们有一个很好的 WebDeploy 配置,但我们不使用 PublishProfile,我想看看我是否可以让我的配置适合你。
-
在此处提供 PublishProfile 的净化版本:gist.github.com/7326d2a7f5523058d662
-
Yaakov,您当时是否放弃使用 PublishProfile 并改用附加参数?
标签: msbuild visual-studio-2012 teamcity msdeploy webdeploy