ruby-on-rails – Heroku "failed to compile Multipack app" error

Question: Question:

It's been half a year since I started studying programming,
I'm thinking of deploying Heroku + Rails + Grunt.

The other day, I was told about this article ( http://qiita.com/icb54615/items/e5d4db164c5002e4b183 ).

    $ git push heroku master
Fetching repository, done.
Counting objects: 24, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (14/14), done.
Writing objects: 100% (24/24), 3.24 KiB | 0 bytes/s, done.
Total 24 (delta 14), reused 17 (delta 8)

-----> Fetching custom git buildpack... done
-----> Multipack app detected
=====> Downloading Buildpack: https://github.com/getgamba/heroku-buildpack-nodejs-grunt-compass.git

 !     Push rejected, failed to compile Multipack app

I get the error.

I would appreciate any advice.

Thank you.

/root/.buildpacks

https://github.com/getgamba/heroku-buildpack-nodejs-grunt-compass.git
https://github.com/heroku/heroku-buildpack-ruby.git

/root/front/package.json

    {
  "name": "front",
  "version": "0.0.0",
  "dependencies": {},
  "devDependencies": {
    "grunt": "^0.4.5",
    "grunt-autoprefixer": "^0.7.3",
    "grunt-concurrent": "^0.5.0",
    "grunt-connect-proxy": "^0.1.11",
    "grunt-contrib-clean": "^0.5.0",
    "grunt-contrib-compass": "^0.7.2",
    "grunt-contrib-concat": "^0.4.0",
    "grunt-contrib-connect": "^0.7.1",
    "grunt-contrib-copy": "^0.5.0",
    "grunt-contrib-cssmin": "^0.9.0",
    "grunt-contrib-htmlmin": "^0.3.0",
    "grunt-contrib-imagemin": "^0.8.1",
    "grunt-contrib-jshint": "^0.10.0",
    "grunt-contrib-uglify": "^0.4.0",
    "grunt-contrib-watch": "^0.6.1",
    "grunt-filerev": "^0.2.1",
    "grunt-google-cdn": "^0.4.0",
    "grunt-karma": "^0.10.1",
    "grunt-newer": "^0.7.0",
    "grunt-ng-annotate": "^0.4.0",
    "grunt-ngmin": "^0.0.3",
    "grunt-protractor-runner": "^1.1.0",
    "grunt-rails-server": "^0.1.0",
    "grunt-shell-spawn": "^0.3.0",
    "grunt-svgmin": "^0.4.0",
    "grunt-usemin": "^2.1.1",
    "grunt-wiredep": "^1.7.0",
    "jasmine-core": "^2.1.3",
    "jshint-stylish": "^0.2.0",
    "karma": "^0.12.31",
    "karma-jasmine": "^0.3.4",
    "karma-phantomjs-launcher": "^0.1.4",
    "load-grunt-tasks": "^0.4.0",
    "source-map": "^0.1.37",
    "time-grunt": "^0.3.1"
  },
  "engines": {
    "node": ">=0.10.0"
  },
  "scripts": {
    "test": "grunt test"
  }
}

Answer: Answer:

I had the same error, but it has been resolved so I will share it.

https://github.com/getgamba/heroku-buildpack-nodejs-grunt-compass/blob/master/bin/detect
Looking at the nodejs buildpack code above, the nodejs app will detect a directory named client. So I think you can fix it by changing the name of the directory containing the front end apps from front to client.

postscript

heroku's multi-buildpack seems to be officially supported https://devcenter.heroku.com/articles/using-multiple-buildpacks-for-an-app
You may want to use this method.
Also, package.json will not be installed when deploying unless you write dependencies not only in devDependencies but also in dependencieds.

Scroll to Top