【发布时间】:2016-12-28 10:44:42
【问题描述】:
我们正在尝试通过执行资源使用厨师配方中的“npm install”解决节点依赖关系。
这是我的厨师食谱:
execute "download dependancies from package.json" do
command "npm install --silent"
user "#{node['non_root_user']}"
end
这是我的 json 包:
"dependencies": {
"classnames": "^2.2.5",
"keymirror": "^0.1.1",
"moment": "^2.10.2",
"moment-timezone": "^0.4.0",
"node-sass": "^3.2.0",
"parse": "^1.4.2",
"react": "^0.13.2",
"react-swipeable": "^3.0.2"
},
"devDependencies": {
"babel-eslint": "^4.0.10",
"brfs": "^1.4.0",
"browser-sync": "^2.6.7",
"browserify": "^9.0.7",
"browserify-shim": "^3.8.5",
"classnames": "^2.2.5",
"dotenv": "^1.2.0",
"eslint": "^1.1.0",
"eslint-plugin-react": "^3.2.3",
npm install 只安装 dev-dependencies 而不是 dependencies。有没有使用npm install 自动安装所有依赖项的方法?我是否缺少 npm 的任何其他配置。
【问题讨论】:
-
尝试使用
--only=production选项和npm install。 -
如果我使用
--only=production,它只会安装dependencies而不是dev-dependencies,对吗?理想情况下,它应该安装所有dependencies和dev-dependencies不是npm install吗? -
你怎么知道'npm install'命令没有安装所有依赖?我认为“npm install”应该安装 devDepencies 和依赖项
-
理想情况下它应该同时安装。但是当我尝试构建代码时,缺少一些依赖项,例如
gulp缺少browser-sync所以我无法构建项目。我还发现 node_modules 丢失了。所以看起来npm install不一致 -
也许在没有
--silent的情况下尝试一下,看看是否有任何输出表明发生了什么?
标签: node.js npm chef-infra chef-recipe