Simon H
Simon H

Reputation: 21005

Openshift failing to load npm modules?

I'm trying to deploy an app that works on my local machine to openshift, and get this error repeatedly in the openshift logs.

DEBUG: Program node app.js exited with code 8
DEBUG: Starting child process with 'node app.js'
Thu, 28 Aug 2014 12:41:39 GMT express-session deprecated undefined resave option; provide resave option at app.js:34:11
Thu, 28 Aug 2014 12:41:39 GMT express-session deprecated undefined saveUninitialized option; provide saveUninitialized option at app.js:34:11
js-bson: Failed to load c++ bson extension, using pure JS version
module.js:340
    throw err;
          ^
Error: Cannot find module './lib'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/var/lib/openshift/53ff14425973ca8c8600046a/app-root/runtime/repo/node_modules/request/node_modules/qs/index.js:1:80)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
DEBUG: Program node app.js exited with code 8
DEBUG: Starting child process with 'node app.js'

the package.json file I am using is

{
  "name": "restodb",
  "version": "0.1.0",
  "description": "Backend for AF resto database",
  "main": "app.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "async": "^0.9.0",
    [snip],
    "path": "^0.4.9",
    "request": "^2.40.0"
  },
  "devDependencies": {
    "grunt-shell-spawn": "^0.3.0"
  }
}

I logged into the app and can see that while there is a qs directory in the request node_modules it does not have a ./lib directory, which is very strange. Grateful for suggestions to try.

Upvotes: 0

Views: 417

Answers (1)

Simon H
Simon H

Reputation: 21005

O, I solved this by logging into the app, and running npm update from the relevant subdirectory

Upvotes: 1

Related Questions