.net 在teamcity中使用msbuild部署到远程服务器

.net 在teamcity中使用msbuild部署到远程服务器,.net,msbuild,teamcity,deployment,publish,.net,Msbuild,Teamcity,Deployment,Publish,好的,我已经搜索了几天了,仍然没有找到我认为是解决这个问题的一个好方法 这就是我想要发生的事情 我希望TeamCity构建我的代码 然后测试它 然后将其部署到远程服务器 前两个很简单,但似乎没有人有一个很好的部署选项。我已经使用web部署支持设置了服务器(以前称为msdeploy吗?),并且可以从本地机器将其发布到远程服务器 我希望teamcity能够在成功构建和测试后远程发布网站 请告诉我有人能解决这个问题!我很高兴现在快到星期五了,因为我快要哭了,需要酒精来帮助我 提前谢谢。我也在研究同

好的,我已经搜索了几天了,仍然没有找到我认为是解决这个问题的一个好方法

这就是我想要发生的事情

  • 我希望TeamCity构建我的代码
  • 然后测试它
  • 然后将其部署到远程服务器
前两个很简单,但似乎没有人有一个很好的部署选项。我已经使用web部署支持设置了服务器(以前称为msdeploy吗?),并且可以从本地机器将其发布到远程服务器

我希望teamcity能够在成功构建和测试后远程发布网站

请告诉我有人能解决这个问题!我很高兴现在快到星期五了,因为我快要哭了,需要酒精来帮助我


提前谢谢。

我也在研究同样的问题。到目前为止,我有两个丑陋的解决方案:

1) 使用固定的工作目录文件夹。然后代码总是编译到同一个地方。从bin\RELEASE文件夹到目标服务器或文件夹执行XCOPY/FTP

2) 编写一个脚本,使用一些较大的版本号(999)搜索工件文件夹,然后检查每个较小的版本号,直到找到具有该版本号的文件夹。如果您通过curl&工件web页面获取工件,也可以对URL执行此操作


3) 在类似这样的站点上发布问题,直到我可以找到一些msbuild属性、环境变量或其他类似设备,以获取工件URL或文件系统路径(了解teamcity支持在服务器场上构建,因此文件系统路径可能需要包含UNC名称,以确定其来源)

我们做了一些非常类似的事情,但将最后一个任务分离到它自己的构建中,该构建计划每晚部署最新的成功构建,以阻止每次开发人员提交时网站上下波动。我们没有使用msdeploy,但您可能会发现以下链接很有用:

我使用#1,一个固定的工作目录文件夹。如果创建分支,我将创建一个新的固定工作目录文件夹,然后通过生成后部署脚本使用分支的位置进行更新#3将是最优雅的,但在从msbuild到批处理再到powershell的过程中发现引用msbuild、teamcity和OS环境变量的正确方法仍然是我不擅长的。