使用像Grunt inproduction这样的构建过程

时间:2015-03-21 16:30:02

标签: javascript node.js gruntjs build-process

我在过去8个月左右的时间里构建了一个非常大的nodeJS应用程序,直到最近我们的文件夹结构设置得很好。为了使整个系统更具可扩展性和“企业化”,我正在重新构建整个构建过程。

我已经修改过的文件系统看起来像这样:

 |
 +-- Gruntfile.js
 |    
 +-- pub
 |  |  
 |  +-- dist
 |  |  |  
 |  |  +-- assets
 |  |  |  |  +-- images/fonts/etc..
 |    
 +-- sites
 |  |  
 |  +-- site1
 |  |  |
 |  |  +-- assets
 |  |  |  |  +-- images/fonts/etc..
 |
 |  +-- site2
 |  |  |
 |  |  +-- assets
 |  |  |  |  +-- images/fonts/etc..

每个网站(site1, site2)都在他们自己的回购中,只有在需要时才会被提取。这允许我不重复任何代码并使不同的站点相互继承。当应用程序启动时,我只需要通过NODE_SITE site1并在开发中grunt负责所有构建/复制所有资产,并将所有正确的文件放在dist中,以便我可以在我的grunt copy上使用它们站点。

由于Grunt不应该用于生产,可能是另一种选择吗?或者只使用{{1}}任务好吗?

1 个答案:

答案 0 :(得分:0)

Grunt应该作为构建过程其余部分的一部分运行。因此,如果gruntfile的默认任务对应于deve环境,则为prod环境创建任务。这个“prod”任务,应该缩小JS,CSS和其他东西,将资源复制到所需的位置,就是这样。与构建脚本的其余部分一起运行一次。