Failed to build and deploy node.js project with Travis-ci - No Rakefile found

heroku, heroku-toolbelt, node.js, travis-ci

Solution

Your `.travis.yml` file does not validate; you can validate it at http://lint.travis-ci.org/.

Found an issue with the node_js key:

Detected unsupported Node.js versions. For an up-to-date list of supported Node.js versions, see Travis CI documentation at http://bit.ly/travis-ci-environment

Try using `0.8.x`.

Problem

I am trying to build a `node.js` project in travis-ci. this is my `.travis.yml` file: ``` language: node_js node_js: - 0.8 after_script: # Install the Heroku package (or the Heroku toolbelt) - npm install heroku # Add your Heroku git repo: - git remote add heroku git@heroku.com:*****.git # Add your Heroku API key: - export HEROKU_API_KEY=KEYHERE # Turn off warnings about SSH keys: - echo "Host heroku.com" >> ~/.ssh/config - echo " StrictHostKeyChecking no" >> ~/.ssh/config - echo " CheckHostIP no" >> ~/.ssh/config - echo " UserKnownHostsFile=/dev/null" >> ~/.ssh/config # Clear your current Heroku SSH keys: - heroku keys:clear # Add a new SSH key to Heroku - yes | heroku keys:add # Push to Heroku! - yes | git push heroku master ``` I get the following build error right on the beginning: No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb) Probably because there's something wrong with my yml file and it tries to use the default ruby builder. I don't think the file is not valid yml file as I have checked it with yml validator at http://yamllint.com/ Something wrong with my Travis specific conf ? My `package.json` looks like this : ``` { "name": "csnc", "description": "csnc", "version": "0.0.1", "private": true, "dependencies": { "express": "3.x", "ejs": ">=0.0.0", "express-partials": ">=0.0.0" }, "engines": { "node": "0.8.x", "npm": "1.1.x" } } ``` EDIT: If you are looking for a way to automatically deploy node.js app to Heroku using Travis-CI, look for the answer I included for a working `.travis.yml` file

Original source

Related problems