如何触发 TeamCity 项目部署到服务器

How to trigger a TeamCity project to deploy to a server

我正在使用 TeamCity(版本 9.1.5,如果重要的话),我正在尝试弄清楚如何创建一个将项目部署到服务器的触发器。或者也许有一种方法可以在不使用 TeamCity 上的触发器的情况下将项目部署到服务器。

这是一个非常广泛的问题,但我将分享我在几个场景中使用的方法:

1) 为了在执行代码签入时进行部署,我设置了一个执行部署的构建配置,添加了执行编译和打包的构建配置作为快照和人工制品依赖项,然后使用 Finish 触发构建触发器 https://confluence.jetbrains.com/display/TCD9/Configuring+Finish+Build+Trigger

2) 要在一天中的给定时间进行部署,但只有在签入新代码时,我已经设置了一个构建配置,但使用 Schedule Trigger https://confluence.jetbrains.com/display/TCD9/Configuring+Schedule+Triggers 确保 select Build Changes 部分中的相关构建。

关于如何执行部署有很多选择,我使用 WebDeploy 用于 ASP.Net 应用程序和由远程 Powershell 脚本执行的 MSI 包用于 Windows 服务,但也可以使用其他选项可用取决于您拥有的技术。

JetBrains 在其在线文档中提供了 ASP.Net 的端到端示例,请搜索 "Continuous Delivery to Windows Azure Web Sites (or IIS)"