npm在ci和server上安装不同

时间:2016-06-25 13:26:38

标签: npm gitlab-ci

对此有任何建议将不胜感激。

我试图通过gitlab部署https://github.com/erikras/react-redux-universal-hot-example,但是当我的服务器部署该版本时,我一直收到错误。

我的gitlab-ci.yml如下:

image: ubuntu:14.04

before_script:
  - apt-get update -y
  - apt-get install -y libssl-dev libfontconfig build-essential wget python-pip
  - wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash
  - . ~/.nvm/nvm.sh
  - nvm install 4.4.6
  - nvm use 4.4.6
  - pip install awscli
  - npm install

deploy:
  script:
    - npm run build
    - sh zip-and-upload-to-s3.sh

然后我的服务器检查s3是否有新版本,下载并提取它。

在我的服务器上完成同样的操作(上传到s3除外)它可以正常工作,但是如果构建是来自ci服务器的,则会出现以下错误:

> react-redux-universal-hot-example@0.9.0 dev /var/www/html
> concurrent --kill-others "npm run watch-client" "npm run start-dev"

module.js:327
    throw err;
    ^

Error: Cannot find module 'rx'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/var/www/html/node_modules/.bin/concurrent:3:10)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)

npm ERR! Linux 3.13.0-88-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "dev"
npm ERR! node v4.4.6
npm ERR! npm  v2.15.5
npm ERR! code ELIFECYCLE
npm ERR! react-redux-universal-hot-example@0.9.0 dev: `concurrent --kill-others "npm run watch-client" "npm run start-dev"`
npm ERR! Exit status 1
npm ERR! 
...

我能看到的两台机器之间的唯一区别是ci是一个docker容器,我的服务器是运行最新ubuntu 14.04 ami的ec2实例。

提前致谢。

0 个答案:

没有答案