title: AWS - Installing bower components via npm install
body: <p>I am trying to spin up a node.js server using the git aws.push method</p>
  
  <p><a href="http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_nodejs.sdlc.html" rel="noreferrer">http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_nodejs.sdlc.html</a></p>
  
  <p>Similar to this solution, I'm trying to run 'bower install', though my solution is a bit different:</p>
  
  <p><a href="https://developer.ibm.com/answers/questions/16594/how-to-install-packages-on-nodejs/" rel="noreferrer">https://developer.ibm.com/answers/questions/16594/how-to-install-packages-on-nodejs/</a></p>
  
  <p>my implementation:</p>
  
  <p>"scripts": {
      "postinstall": "bower install -F"
    },</p>
  
  <p>this works fine locally - npm install also runs bower install with no problems.  when i deploy to aws, npm runs fine - i know that my server starts up fine because i can see messages from it in the logs, but none of the bower components are in place when i try to bring up the client.</p>
  
  <p>i'm using node v0.10.26, and i am sure that i don't have bower installed globally on my local machine.  i've tried this both with and without including bower in the dependencies section of my package.json.</p>
  
  <p>any ideas?  and thanks in advance.</p>
  
  <h1>package.json</h1>
  
  <pre><code>{
    "name": "smf",
    "version": "0.1.0",
    "dependencies": {
      "aws-sdk": "~2.0.0-rc.14",
      "base64-js": "0.0.6",
      "bookshelf": "~0.6.10",
      "bower": "*",
      "change-case": "~2.1.1",
      "crypto-js": "~3.1.2-3",
      "geojson": "~0.1.5",
      "handlebars": "~2.0.0-alpha.2",
      "js-base64": "~2.1.5",
      "lodash": "~2.4.1",
      "mathjs": "~0.21.0",
      "minify": "~0.5.1",
      "moment": "~2.6.0",
      "newrelic": "~1.5.3",
      "node-cryptojs-aes": "~0.4.0",
      "node-highcharts": "0.0.2",
      "node-uuid": "~1.4.1",
      "passport": "~0.2.0",
      "passport-http": "~0.2.2",
      "passport-local": "~1.0.0",
      "password-hash": "~1.2.2",
      "pg": "~3.0.3",
      "restify": "~2.7.0",
      "should": "~3.3.1",
      "socket.io": "~0.9.16",
      "sqlite3": "~2.2.3",
      "util": "~0.10.3",
      "when": "~3.1.0"
    },
    "devDependencies": {
      "grunt": "~0.4.2",
      "grunt-contrib-jshint": "^0.10.0",
      "grunt-mocha-test": "~0.9.0",
      "mocha-phantomjs": "~3.3.1"
    },
    "scripts": {
      "postinstall": "bower install -F"
    },
    "engines": {
      "node": "&gt;=0.6"
    }
  }
  </code></pre>
  
  <h1>LOG FILES</h1>
  
  <p>The entire log is too long, though I will paste it in multiple comments if you need.  Below is the only section that mentions bower at all.</p>
  
  <p>If I try to access the site, I can get access logs indicating that bower components are missing.</p>
  
  <p>There doesn't appear to be any execution of bower install happening.</p>
  
  <hr>
  
  <h2>/var/log/directory-hooks-executor.log</h2>
  
  <p>underscore.string@2.3.3 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/configstore/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string
  esprima@1.0.4 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/configstore/node_modules/js-yaml/node_modules/esprima
  object-assign@0.3.1 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/configstore/node_modules/object-assign
  uuid@1.4.1 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/configstore/node_modules/uuid
  latest-version@0.2.0 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version
  package-json@0.2.0 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json
  got@0.3.0 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/got
  object-assign@0.3.1 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/got/node_modules/object-assign
  registry-url@0.1.1 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url
  npmconf@2.0.2 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf
  config-chain@1.1.8 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf/node_modules/config-chain
  proto-list@1.2.3 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf/node_modules/config-chain/node_modules/proto-list
  ini@1.2.1 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf/node_modules/ini
  inherits@2.0.1 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf/node_modules/inherits
  mkdirp@0.3.5 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf/node_modules/mkdirp
  once@1.3.0 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf/node_modules/once
  uid-number@0.0.5 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url/node_modules/npmconf/node_modules/uid-number
  semver-diff@0.1.0 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/semver-diff
  string-length@0.1.2 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/string-length
  strip-ansi@0.2.2 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/string-length/node_modules/strip-ansi
  ansi-regex@0.1.0 /tmp/deployment/application/node_modules/bower/node_modules/update-notifier/node_modules/string-length/node_modules/strip-ansi/node_modules/ansi-regex
  which@1.0.5 /tmp/deployment/application/node_modules/bower/node_modules/which</p>