TeamCity + Node.JS持续部署

我们正在尝试为我们正在开发的几个NodeJS项目(主要基于Sails.JS框架)设置一个CI / CDpipe道。

我已经成功地设置了TeamCity和一个Build Agent,并创build了一个基本上只是npm install的简单的构buildconfiguration,下一步我们要设置成功的构build的连续交付到我们的Dev(并最终Prod)服务器。

然而,似乎很less有关于使用TeamCity进行持续交付的信息,而且我发现的大部分内容都与.NET项目和使用MSDeploy的IIS相关,这些信息(据我所知)并不适合我们。

我正在考虑编写一套自定义脚本,将构build文件复制到开发服务器,重新启动服务等,但我不知道如何构build应该与这些脚本交互(例如,如何获得项目build成的path?)。

有没有人有经验设置TeamCity部署NodeJS代码(或任何其他非.NET代码的事情),可以指出我在正确的方向吗?

谢谢,丹

我对ThoughtWorks GO并不熟悉,但我设法通过使用TeamCity部署者插件来实现我所需要的。 对于Linux来说,这是相当简单的(将SCP文件构build到服务器上的暂存文件夹中,然后运行远程脚本来合并任何需要合并的内容并重新启动所需的服务),但是我仍在使用Windows版本。

我不认为TeamCity是用来连续交付/部署的。 你有没有考虑使用Thoughtworks GO! 我们将其用于40多个产品部署,并且非常喜欢它。 其目的是:

自动化和简化构build – testing – 发布周期,让您无忧,持续交付产品。

它有很多插件可能会满足您的需求,并使您更容易转换到CD。 最好的是免费的!

正如您所发现的,通过一些脚本,您可以使用常见任务types或自定义脚本轻松部署到Windows或Linux。

常用于TeamCity的部署软件是Octopus Deploy。 正如你所提到的,很多文档都是以.NET为中心的,但是如果你需要为不同的环境定制值,那么在3版本和更高版本中的Octopus Deploy可以部署到Windows和Linux主机以及pipe理部署时间variables。