是否有人试图将使用https://github.com/bower/bower的应用程序部署到Nodejitsu主机上?
问题是npm pack命令,nodejitsu使用它来部署app。它忽略了所有以点开始的文件,特别是.bowerrc,这就是为什么我不能将bower install作为post部署脚本运行的原因。
有什么建议吗?或者使用空的.npmignore文件?
谢谢!
发布于 2013-05-28 16:27:22
在创建应用程序时,应该提交components文件夹。这也是国家预防机制的推荐做法。这样,您就可以确保只在本地部署所拥有的内容。Bower最终会得到一个shrinkwrap命令,但现在这是一条道路。
发布于 2013-08-08 11:56:14
我也遇到了同样的问题,(不知怎么的)我解决了这个问题,而没有提交bower_components文件夹。由于Bower达到了1.0,所以可以编程地使用API,而不是通过命令行接口。因此,您可以创建一个小脚本,如下所示:
var bower = require('bower'),
path = require('path');
bower.commands
.install([path.resolve(".")])
.on('end', function (installed) {
console.log(installed);
});在Nodejitsu上,可以使用script字段在package.json中触发部署前后的命令。因此,我可以通过以下方式触发后置部署时的bower安装:
{
"name": "myapp",
"version": "0.0.1",
"description": "",
"main": "app.js",
"scripts" : {
"predeploy": "echo This will be run before deploying the app",
"postdeploy": "node bower_install.js",
"start": "node app.js"
},
"dependencies": {
...
}
}其中bower_install.js是上面的脚本。
https://stackoverflow.com/questions/16795677
复制相似问题