假设我有一个用JS编写的项目,它是通过类似Node.js和快递这样的框架编写的。它还使用摩卡咖啡作为测试框架,使用大口吞下作为构建系统。
我想知道向用户公开安装、测试和部署的最佳方法是什么。
我的意思是,用户通常需要做以下事情:
哪些任务应该通过构建系统(在本例中是Gulp)来处理,哪些任务应该由npm来处理?
我想有两种方法:
gulp install将安装所有npm和bower依赖项,gulp preprocess将预处理CSS / JS /映像,gulp test将运行Mocha等。无论如何,npm start应该单独处理,因为运行web服务器并不是典型的构建系统任务。 "scripts": {
"ins": "npm install && bower install && gulp preprocess",
"test": "gulp test",
"start": "node --harmony server.js",
"deploy": "npm run ins && gulp --harmony"
}是的,无论如何,它都是在引擎盖下使用吞咽器,但是它对用户是隐藏的,所以看起来他只使用npm。我认为限制用户使用npm是很酷的,所以他们不需要知道任何关于其他工具的知识,我们可以在以后的任何时候切换到另一个构建系统,w/o重写部署过程手册。
你认为如何?是否有任何与此问题有关的最佳做法?
发布于 2017-03-02 09:10:51
不要用口服液。狼吞虎咽是浪费时间。使用npm安装依赖项,使用postinstall npm脚本运行预处理程序,并使用npm脚本或普通的旧文档告诉用户要运行node tests和node main的文件。我相信类似的事情也可以通过保龄球来完成。
有关为什么停止使用咕噜或吞咽的更多信息,请在这里阅读:https://www.keithcirkel.co.uk/why-we-should-stop-using-grunt/
https://softwareengineering.stackexchange.com/questions/328932
复制相似问题