0

I'm very new to Heroku and deployd.

I managed to create an app and to create a mongoDBusing mongolab. I inserted the 3 files (ProcFile, server.js and package.json => see code bellow) to the root of my heroku app folder

My app has application errors. Here are the logs, when I git push to heroku master (I wonder why it says that there is no ProcFile).

Could anyone help me with this?

LOGS:

-----> Node.js app detected

-----> Reading application state package.json... build directory... cache directory... environment variables...

   Node engine:         0.8.x
   Npm engine:          1.2.x
   Start mechanism:     npm start
   node_modules source: package.json
   node_modules cached: true

   NPM_CONFIG_PRODUCTION=true
   NODE_MODULES_CACHE=true

-----> Installing binaries Resolving node version 0.8.x via semver.io... Downloading and installing node 0.8.28... Resolving npm version 1.2.x via semver.io... Downloading and installing npm 1.2.8000 (replacing version 1.2.30)... npm WARN package.json github-url-from-git@1.1.1 No repository field. npm WARN package.json assert-plus@0.1.2 No repository field. npm WARN package.json ctype@0.5.2 No repository field. npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/glob requires minimatch@'^0.3.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/minimatch, npm WARN unmet dependency which is version 0.3.0 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/glob requires once@'^1.3.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/once, npm WARN unmet dependency which is version 1.3.0 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/inflight requires once@'^1.3.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/once, npm WARN unmet dependency which is version 1.3.0 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/init-package-json requires glob@'^4.0.2' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/glob, npm WARN unmet dependency which is version 4.0.2 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/npm-install-checks requires semver@'^2.3.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/semver, npm WARN unmet dependency which is version 2.3.0 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/npm-registry-client requires graceful-fs@'^3.0.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/graceful-fs, npm WARN unmet dependency which is version 3.0.2 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/npm-registry-client requires npm-cache-filename@'^1.0.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/npm-cache-filename, npm WARN unmet dependency which is version 1.0.1 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/npmconf requires ini@'^1.2.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/ini, npm WARN unmet dependency which is version 1.2.1 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/npmconf requires osenv@'^0.1.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/osenv, npm WARN unmet dependency which is version 0.1.0 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/read-package-json requires glob@'^4.0.2' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/glob, npm WARN unmet dependency which is version 4.0.2 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/fstream-npm/node_modules/fstream-ignore requires minimatch@'^0.3.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/minimatch, npm WARN unmet dependency which is version 0.3.0 npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/read-package-json/node_modules/normalize-package-data requires github-url-from-username-repo@'^0.2.0' but will load npm WARN unmet dependency /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/.heroku/node/lib/node_modules/npm/node_modules/github-url-from-username-repo, npm WARN unmet dependency which is version 0.2.0

-----> Building dependencies Npm version changed (2.2.0 => 1.2.8000); invalidating cache Installing node modules npm WARN package.json myappName@1.1.0 No repository field. npm WARN package.json myappName@1.1.0 No README data npm WARN engine deployd@0.7.0: wanted: {"node":">= 0.10.0"} (current: {"node":"v0.8.28","npm":"1.2.8000"})

   > ws@0.4.32 install /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/node_modules/deployd/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
   > (node-gyp rebuild 2> builderror.log) || (exit 0)

   make: Entering directory `/tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/node_modules/deployd/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/build'
     CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
     SOLINK_MODULE(target) Release/obj.target/bufferutil.node
     SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
     COPY Release/bufferutil.node
     CXX(target) Release/obj.target/validation/src/validation.o
     SOLINK_MODULE(target) Release/obj.target/validation.node
     SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
     COPY Release/validation.node
   make: Leaving directory `/tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/node_modules/deployd/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/build'

   > bson@0.0.6 install /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f/node_modules/deployd/node_modules/mongodb/node_modules/bson
   > node install.js

   ================================================================================
   =                                                                              =
   =  To install with C++ bson parser do <npm install mongodb --mongodb:native>   =
   =                                                                              =
   ================================================================================
   deployd@0.7.0 node_modules/deployd
   ????????? scrubber@0.0.0
   ????????? qs@0.6.6
   ????????? validation@0.0.1
   ????????? commander@2.6.0
   ????????? corser@1.1.2
   ????????? step@0.0.5
   ????????? wrench@1.3.9
   ????????? q@0.8.12
   ????????? underscore@1.7.0
   ????????? async@0.1.22
   ????????? ejs@0.7.2
   ????????? opener@1.3.0
   ????????? semver@1.1.4
   ????????? shelljs@0.0.6-pre2
   ????????? debug@2.1.1 (ms@0.6.2)
   ????????? cookies@0.5.0 (keygrip@1.0.1)
   ????????? mkdirp@0.5.0 (minimist@0.0.8)
   ????????? filed@0.1.0 (mime@1.2.11)
   ????????? send@0.0.2 (fresh@0.1.0, range-parser@0.0.4, mime@1.2.6)
   ????????? fstream@0.1.31 (inherits@2.0.1, graceful-fs@3.0.5, rimraf@2.2.8)
   ????????? doh@0.0.4 (ejs@0.8.8)
   ????????? tar@0.1.20 (block-stream@0.0.7, inherits@2.0.1)
   ????????? fstream-ignore@0.0.10 (inherits@2.0.1, minimatch@0.3.0)
   ????????? http-proxy@0.8.1 (colors@0.6.2, pkginfo@0.2.3, optimist@0.2.8)
   ????????? request@2.51.0 (json-stringify-safe@5.0.0, caseless@0.8.0, forever-agent@0.5.2, aws-sign2@0.5.0,

stringstream@0.0.4, oauth-sign@0.5.0, tunnel-agent@0.4.0, qs@2.3.3, mime-types@1.0.2, node-uuid@1.4.2, combined-stream@0.0.7, http-signature@0.10.1, tough-cookie@0.12.1, form-data@0.2.0, bl@0.9.4, hawk@1.1.1) ????????? socket.io@0.9.17 (base64id@0.1.0, policyfile@0.0.4, redis@0.7.3, socket.io-client@0.9.16) ????????? mongodb@1.0.2 (bson@0.0.6)

-----> Checking startup method No Procfile; Adding 'web: npm start' to new Procfile

-----> Finalizing build Creating runtime environment Exporting binary paths Cleaning npm artifacts Cleaning previous cache Caching results for future builds

-----> Build succeeded!

   myappName@1.1.0 /tmp/build_eda7353fa1e9a8af28d45ba384d0c26f
   ????????? deployd@0.7.0

   WARNING: This version of npm (1.2.8000) has several known issues - consider upgrading to the latest release (2.2.0)
   https://devcenter.heroku.com/articles/nodejs-support#specifying-an-npm-version

-----> Discovering process types Procfile declares types -> web

-----> Compressing... done, 11.1MB -----> Launching... done, v12 https://[myappName].herokuapp.com/ deployed to Heroku

ProcFile

web: node server

package.json

{
  "name": "my app",
  "version": "1.1.0",
  "description": "",
  "keywords": [],
  "homepage": "",
  "author": "Me",
  "contributors": [],
  "dependencies": {
    "deployd": ">= 0"
  },
  "scripts": {
    "start": "node server"
  },
  "engines": {
    "node": "0.8.x",
    "npm":  "1.2.x"
  }
}

server.js

// require deployd
var deployd = require('deployd');

// configure database etc.
var server = deployd({
  port: process.env.PORT || 5000,
  env: 'production',
  db: {
    host: 'something.mongolab.com',//my real host name
    port: 31601,
    name: 'heroku_appxxxxxx', //my real app name
    credentials: {
      username: process.env.MONGODB_USERNAME,
      password: process.env.MONGODB_PASSWORD
    }
  }
});

// heroku requires these settings for sockets to work
server.sockets.manager.settings.transports = ["xhr-polling"];

// start the server
server.listen();

// debug
server.on('listening', function() {
  console.log("Server is listening on port: " + process.env.PORT);
});

// Deployd requires this
server.on('error', function(err) {
  console.error(err);
  process.nextTick(function() { // Give the server a chance to return an error
    process.exit();
  });
});

Thanks a lot for your help.

Here's what the "heroku log -t" command returns:

2015-01-22T22:25:16.147815+00:00 app[web.1]: 2015-01-22T22:25:16.878293+00:00 heroku[web.1]: Process exited with status 1 2015-01-22T22:25:16.890633+00:00 heroku[web.1]: State changed from starting to c rashed 2015-01-22T23:37:30.079428+00:00 heroku[web.1]: State changed from crashed to st arting 2015-01-22T23:37:32.332481+00:00 heroku[web.1]: Starting process with command n pm start 2015-01-22T23:37:34.519186+00:00 app[web.1]: 2015-01-22T23:37:34.519203+00:00 app[web.1]: > myappname@1.1.0 start /app 2015-01-22T23:37:34.519207+00:00 app[web.1]: 2015-01-22T23:37:34.519205+00:00 app[web.1]: > node server 2015-01-22T23:37:35.071282+00:00 app[web.1]: 2015-01-22T23:37:35.071937+00:00 app[web.1]: Error: ENOENT, readdir 'resources' 2015-01-22T23:37:35.087520+00:00 app[web.1]: npm ERR! myappname@1.1.0 start: node s erver 2015-01-22T23:37:35.087700+00:00 app[web.1]: npm ERR! Exit status 1 2015-01-22T23:37:35.087840+00:00 app[web.1]: npm ERR! 2015-01-22T23:37:35.088495+00:00 app[web.1]: npm ERR! This is most likely a prob lem with the myappname package, 2015-01-22T23:37:35.087892+00:00 app[web.1]: npm ERR! Failed at the myappname@1.1.0 start script. 2015-01-22T23:37:35.091315+00:00 app[web.1]: npm ERR! cwd /app 2015-01-22T23:37:35.091657+00:00 app[web.1]: npm ERR! node -v v0.8.28 2015-01-22T23:37:35.095021+00:00 app[web.1]: npm ERR! code ELIFECYCLE 2015-01-22T23:37:35.094749+00:00 app[web.1]: npm ERR! npm -v 1.2.8000 2015-01-22T23:37:35.101035+00:00 app[web.1]: npm ERR! 2015-01-22T23:37:35.101194+00:00 app[web.1]: npm ERR! Additional logging details can be found in: 2015-01-22T23:37:35.101383+00:00 app[web.1]: npm ERR!
/app/npm-debug.log 2015-01-22T23:37:35.101550+00:00 app[web.1]: npm ERR! not ok code 0 2015-01-22T23:37:35.071573+00:00 app[web.1]: Error loading resources: 2015-01-22T23:37:35.089184+00:00 app[web.1]: npm ERR! not with npm itself. 2015-01-22T23:37:35.081587+00:00 app[web.1]: 2015-01-22T23:37:35.089921+00:00 app[web.1]: npm ERR! npm owner ls myappname 2015-01-22T23:37:35.090107+00:00 app[web.1]: npm ERR! There is likely additional logging output above. 2015-01-22T23:37:35.090358+00:00 app[web.1]: npm ERR! System Linux 3.13.0-40-gen eric 2015-01-22T23:37:35.090869+00:00 app[web.1]: npm ERR! command "node" "/app/.hero ku/node/bin/npm" "start" 2015-01-22T23:37:35.089349+00:00 app[web.1]: npm ERR! Tell the author that this fails on your system: 2015-01-22T23:37:35.089535+00:00 app[web.1]: npm ERR! node server 2015-01-22T23:37:35.089765+00:00 app[web.1]: npm ERR! You can get their info via : 2015-01-22T23:37:35.914172+00:00 heroku[web.1]: Process exited with status 1 2015-01-22T23:37:35.922884+00:00 heroku[web.1]: State changed from starting to c rashed 2015-01-23T01:07:57.421508+00:00 heroku[web.1]: Starting process with command n pm start 2015-01-23T01:07:59.976915+00:00 app[web.1]: 2015-01-23T01:07:59.976963+00:00 app[web.1]: > myappname@1.1.0 start /app 2015-01-23T01:07:59.976965+00:00 app[web.1]: > node server 2015-01-23T01:07:59.976967+00:00 app[web.1]: 2015-01-23T01:08:00.496965+00:00 app[web.1]: Error loading resources: 2015-01-23T01:08:00.507766+00:00 app[web.1]: 2015-01-23T01:08:00.497357+00:00 app[web.1]: Error: ENOENT, readdir 'resources' 2015-01-23T01:08:00.513161+00:00 app[web.1]: npm ERR! myappname@1.1.0 start: node s erver 2015-01-23T01:08:00.513403+00:00 app[web.1]: npm ERR! Exit status 1 2015-01-23T01:08:00.514599+00:00 app[web.1]: npm ERR! This is most likely a prob lem with the myappname package, 2015-01-23T01:08:00.513607+00:00 app[web.1]: npm ERR! 2015-01-23T01:08:00.514719+00:00 app[web.1]: npm ERR! not with npm itself. 2015-01-23T01:08:00.513749+00:00 app[web.1]: npm ERR! Failed at the myappname@1.1.0 start script. 2015-01-23T01:08:00.514853+00:00 app[web.1]: npm ERR! Tell the author that this fails on your system: 2015-01-23T01:08:00.496673+00:00 app[web.1]: 2015-01-23T01:08:00.514977+00:00 app[web.1]: npm ERR! node server 2015-01-23T01:08:00.515141+00:00 app[web.1]: npm ERR! You can get their info via : 2015-01-23T01:08:00.515245+00:00 app[web.1]: npm ERR! npm owner ls myappname 2015-01-23T01:08:00.515382+00:00 app[web.1]: npm ERR! There is likely additional logging output above. 2015-01-23T01:08:00.515563+00:00 app[web.1]: npm ERR! System Linux 3.13.0-40-gen eric 2015-01-23T01:08:00.515740+00:00 app[web.1]: npm ERR! command "node" "/app/.hero ku/node/bin/npm" "start" 2015-01-23T01:08:00.515914+00:00 app[web.1]: npm ERR! cwd /app 2015-01-23T01:08:00.516078+00:00 app[web.1]: npm ERR! node -v v0.8.28 2015-01-23T01:08:00.516321+00:00 app[web.1]: npm ERR! npm -v 1.2.8000 2015-01-23T01:08:00.516461+00:00 app[web.1]: npm ERR! code ELIFECYCLE 2015-01-23T01:08:00.517740+00:00 app[web.1]: npm ERR! 2015-01-23T01:08:00.517993+00:00 app[web.1]: npm ERR!
/app/npm-debug.log 2015-01-23T01:08:00.518222+00:00 app[web.1]: npm ERR! not ok code 0 2015-01-23T01:08:00.517870+00:00 app[web.1]: npm ERR! Additional logging details can be found in: 2015-01-23T01:08:01.307216+00:00 heroku[web.1]: Process exited with status 1 2015-01-23T01:08:01.315931+00:00 heroku[web.1]: State changed from starting to c rashed 2015-01-23T04:15:56.955682+00:00 heroku[web.1]: State changed from crashed to st arting 2015-01-23T04:16:00.763097+00:00 heroku[web.1]: Starting process with command n pm start 2015-01-23T04:16:04.864921+00:00 app[web.1]: 2015-01-23T04:16:04.864940+00:00 app[web.1]: > node server 2015-01-23T04:16:04.864942+00:00 app[web.1]: 2015-01-23T04:16:04.864939+00:00 app[web.1]: > myappname@1.1.0 start /app 2015-01-23T04:16:05.471847+00:00 app[web.1]: 2015-01-23T04:16:05.452400+00:00 app[web.1]: Error loading resources: 2015-01-23T04:16:05.476361+00:00 app[web.1]: npm ERR! 2015-01-23T04:16:05.476484+00:00 app[web.1]: npm ERR! Failed at the myappname@1.1.0 start script. 2015-01-23T04:16:05.477178+00:00 app[web.1]: npm ERR! not with npm itself. 2015-01-23T04:16:05.477054+00:00 app[web.1]: npm ERR! This is most likely a prob lem with the myappname package, 2015-01-23T04:16:05.477310+00:00 app[web.1]: npm ERR! Tell the author that this fails on your system: 2015-01-23T04:16:05.452048+00:00 app[web.1]: 2015-01-23T04:16:05.452756+00:00 app[web.1]: Error: ENOENT, readdir 'resources' 2015-01-23T04:16:05.475943+00:00 app[web.1]: npm ERR! myappname@1.1.0 start: node s erver 2015-01-23T04:16:05.476190+00:00 app[web.1]: npm ERR! Exit status 1 2015-01-23T04:16:05.477973+00:00 app[web.1]: npm ERR! System Linux 3.13.0-40-gen eric 2015-01-23T04:16:05.477435+00:00 app[web.1]: npm ERR! node server 2015-01-23T04:16:05.477558+00:00 app[web.1]: npm ERR! You can get their info via : 2015-01-23T04:16:05.477681+00:00 app[web.1]: npm ERR! npm owner ls myappname 2015-01-23T04:16:05.477804+00:00 app[web.1]: npm ERR! There is likely additional logging output above. 2015-01-23T04:16:05.478145+00:00 app[web.1]: npm ERR! command "node" "/app/.hero ku/node/bin/npm" "start" 2015-01-23T04:16:05.478311+00:00 app[web.1]: npm ERR! cwd /app 2015-01-23T04:16:05.478475+00:00 app[web.1]: npm ERR! node -v v0.8.28 2015-01-23T04:16:05.480171+00:00 app[web.1]: npm ERR!
/app/npm-debug.log 2015-01-23T04:16:05.480292+00:00 app[web.1]: npm ERR! not ok code 0 2015-01-23T04:16:05.480111+00:00 app[web.1]: npm ERR! Additional logging details can be found in: 2015-01-23T04:16:05.478856+00:00 app[web.1]: npm ERR! npm -v 1.2.8000 2015-01-23T04:16:05.478967+00:00 app[web.1]: npm ERR! code ELIFECYCLE 2015-01-23T04:16:05.480021+00:00 app[web.1]: npm ERR! 2015-01-23T04:16:06.250211+00:00 heroku[web.1]: Process exited with status 1 2015-01-23T04:16:06.261424+00:00 heroku[web.1]: State changed from starting to c rashed

vpx
  • 380
  • 1
  • 5
  • 14
  • try command `heroku logs -t` to check app logs, since app is deployed successfully but it seems it crashes or something else happens when you hit app-url in browser. Copy app logs here for further understanding. – Zeeshan Hassan Memon Jan 23 '15 at 09:38
  • Thank you, I just added the heroku logs to the end of my message. – vpx Jan 23 '15 at 11:07
  • I see that the git push command says: "Checking startup method No Procfile; Adding 'web: npm start' to new Procfile" isn't it the problem? – vpx Jan 23 '15 at 11:13

1 Answers1

0

I solved my issues. :)

I needed to update the node and nmp version in package.json

"engines": { "node": "0.10.x", "npm": "2.2.x" } And I also had to create a "resources" folder in the root of my heroku app folder. Note that the resources folder, as it is empty might be ignored by git, so I added an empty file into it.

I hope it can help someone has I lost a couple of hours trying to solve these issues.

vpx
  • 380
  • 1
  • 5
  • 14