C# 使用TeamCity部署网站项目

C# 使用TeamCity部署网站项目,c#,msbuild,teamcity,msdeploy,webdeploy,C#,Msbuild,Teamcity,Msdeploy,Webdeploy,我有一个包含大量类库项目和IIS网站的解决方案。我正在尝试配置teamcity,以便通过MSBuild/web deploy编译和部署网站项目 这些项目都构建得很好,但似乎忽略了将站点推送到指定服务器的命令行参数 我的问题是,是否有可能实现我期待的目标?或者,这只能通过web应用程序项目来实现吗 /P:Configuration=Release /P:DeployOnBuild=True /P:DeployTarget=MSDeployPublish /P:MsDeployServiceUrl=

我有一个包含大量类库项目和IIS网站的解决方案。我正在尝试配置teamcity,以便通过MSBuild/web deploy编译和部署网站项目

这些项目都构建得很好,但似乎忽略了将站点推送到指定服务器的命令行参数

我的问题是,是否有可能实现我期待的目标?或者,这只能通过web应用程序项目来实现吗

/P:Configuration=Release
/P:DeployOnBuild=True
/P:DeployTarget=MSDeployPublish
/P:MsDeployServiceUrl=https://localhost:8172/msdeploy.axd
/P:AllowUntrustedCertificate=True
/P:MSDeployPublishMethod=WMSvc
/P:CreatePackageOnPublish=True
/P:UserName=SNIPPED
/P:Password=SNIPPED

我已使用上述参数尝试了MSBUILD和Visual Studio运行程序

这些MSBUILD参数对于仅限网站的web应用程序不起作用。您仍然可以使用MSDeploy对网站进行打包和部署,但必须手动完成

这里有一篇博文进一步解释了这一点


当然有可能。但是,从你的问题来看,你还不清楚自己被困在了哪里。“忽略命令行参数”是什么意思?您使用的是哪种类型的脚本(纯MSBuild文件、.bat文件、Powershell、Gulp、Grunt等),我以前从未使用过网站。。但是web应用程序很容易通过特定的MSBuild参数打包为web部署(msdeploy)包。@NightOwl888我正在使用MSBuild。我的意思是,它构建应用程序,只是跳过应该部署的部分。我已经添加了命令行参数Hanks man!有没有一种方法可以将所有这些都构建到命令本身中?将变量传递到清单文件会有点棘手。我在考虑可能使用powershell来查找和修改其中的文本,但我想我更喜欢明确地使用命令行是的,我想这将是下一个问题。您可以使用WebDeploy参数化,使用MSDeploy命令行中的ProviderPath类来声明/设置参数。