TeamCity + Node.JS持续部署

时间:2016-01-05 14:21:05

标签: node.js continuous-integration sails.js teamcity continuous-deployment

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

我已经成功设置了TeamCity和Build Agent,并创建了一个基本上只进行npm安装的简单构建配置,我们要采取的下一步是为我们的Dev设置成功构建的持续交付(最终产品服务器。

然而,网上关于使用TeamCity进行持续交付的信息似乎很少,而且我发现的大多数内容都与使用MSDeploy的.NET项目和IIS有关,而且(根据我的理解,最好的)赢得了'真的对我们有用。

我正在考虑编写一组自定义脚本,将构建文件复制到Dev服务器,重新启动服务等,但我不确定构建应该如何与这些脚本交互(对于例如,如何获得项目建立的路径?)。

有没有人有设置TeamCity来部署NodeJS代码(或任何其他非.NET代码)的经验,这可以指引我朝着正确的方向发展?

谢谢, 丹

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

我不认为TeamCity旨在用于持续交付/部署。你考虑过使用Thoughtworks GO吗?我们将它用于40多种产品部署并且非常喜欢它。其目的是:

  

无忧无虑地自动化和简化构建测试发布周期,   持续交付您的产品。

它有许多可能满足您需求的插件,让您更轻松地过渡到CD。最重要的是免费!

答案 2 :(得分:0)

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

TeamCity经常使用的常见部署软件是Octopus Deploy。正如您所提到的,很多文档都是以.NET为重点的,但是如果您需要为不同的环境自定义值,则版本3及更高版本的Octopus Deploy可以部署到Windows和Linux主机以及管理部署时间变量。