有没有类似于用JavaScript编写的Fabric的部署工具?

我把一个几乎全部在node.js上使用Javascript的移动开发堆栈放在一起。 除了SASS(只选LESS)和Fabric之外。 我不想污染我的开发目录,因为我必须结合和缩小JS和CSS,我想我也可以使用node.js来服务我的代码。

我想减less对Ruby和/或Python的依赖。 我没有真正使用Fabric的所有function,所以我有希望replace它。 但是我找不到任何用Javascript编写的类似工具。

我所需要的是:

  • 从git仓库拉。
  • 在本地安装依赖关系。
  • 将JS / CSS调用require.js / SASS进行缩小和组合。
  • 运行testing套件。
  • 通过node.js为代码提供动手或使用Ripple进行testing。

结构可能已经是矫枉过正,我只用于我的Python Web项目,因为必要的服务器不能在我的机器上运行,但这不是这种情况。 如果没有Fabric,最好的办法是什么?

我一直在琢磨同样的问题。

目前我发现的最有希望的直接候选人是推出( https://github.com/bengourley/launch )。 然而,这一年没有更新,这让我对其未来的地位有些怀疑。

在没有明显好的解决scheme的情况下,我最终以如下方式逐个解决了整个构build/部署问题:

  • 经过一些试验和错误,我从.gitignore删除了node_modules 。 其中一个含义是,你不必在本地安装依赖关系,删除第二步( 尝试如果读取这也说服你)。
    • 编辑:我不再这样做,而是保持node_modules.gitignore 。 只要确保package.json保持最新(有关提示,请参阅“使用Shrinkwrappipe理Node.js依赖项” )
  • 我结束了自动化JS / CSS处理,linting和grunt运行的testing套件。 强烈推荐。
  • 我很懒,现在我正在把缩小的东西join到git中(希望我会在某些时候改变它)。
    • 编辑:我不再将缩小的东西添加到git中,而是部署时执行缩小运行grunt

通过这样做,我完全消除了对Fabric的一些需求,只留下了实际部署的问题:

  1. 最好的解决scheme(部署方式)是避免运行自己的服务器,并使用现成的云解决scheme,如Heroku或Nodejitsu
  2. 或者,您可以托pipe自己的node.js部署工具。 例如,您可以在您自己的服务器上安装Nodester ,并使用提供的API和工具。
  3. 在一个Linux机器上,编写单行程序来重新部署一个node.js应用程序非常简单,所以我觉得我不需要使用任何额外的工具(除了bash)。

话虽如此,我也很乐意听到更好的解决办法。

编辑:刚刚发现有关部署( https://github.com/visionmedia/deploy )。 看起来很有希望。 你也可以尝试一下!

Flightplan看起来非常有趣,并受Fabric的启发。 它的文档有很多例子,值得一读。

stagecoach做暂存和部署,支持依赖安装和新贵脚本。

这是一篇关于使用Stagecoach部署节点&mongo 的博客文章 。

另一个JavaScript部署工具是shipitjs

从自述:

Shipit是为node / iojs编写的自动化引擎和部署工具。

对于不了解ruby的人,或者遇到过一些问题的人来说,Shipit是Capistrano的替代品。 如果您想用JavaScript编写任务并享受节点生态系统,那么Shipit也适合您。