Octopress --> Heroku error env: bundle: no such

2019-06-07 09:31发布

问题:

I have an Octopress blog running on Heroku using a buildpack (https://github.com/jgarber/heroku-buildpack-ruby-octopress). It was working fine up until a few days ago, when I started getting the error below on deployment (everything works fine on local). I reverted to a working git and tried to deploy again but no dice.

env: bundle: no such file or directory error. 

Here is the deployment log

-----> Deleting 0 files matching .slugignore patterns.
-----> Fetching custom git buildpack... done
-----> Octopress app detected
-----> Using Ruby version: ruby-2.0.0
-----> Installing dependencies using Bundler version 1.3.2
       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
       Fetching gem metadata from http://rubygems.org/.......
       Fetching gem metadata from http://rubygems.org/..
       Installing rake (10.1.1)
       Installing RedCloth (4.2.9)
       Installing chunky_png (1.2.9)
       Installing fast-stemmer (1.0.2)
       Installing classifier (1.3.4)
       Installing fssm (0.2.10)
       Installing sass (3.2.13)
       Installing compass (0.12.2)
       Installing directory_watcher (1.5.1)
       Installing haml (3.1.8)
       Installing kramdown (0.14.2)
       Installing liquid (2.3.0)
       Installing maruku (0.7.0)
       Installing posix-spawn (0.3.8)
       Installing yajl-ruby (1.1.0)
       Installing pygments.rb (0.3.7)
       Installing jekyll (0.12.1)
       Installing rack (1.5.2)
       Installing rack-protection (1.5.1)
       Installing rdiscount (1.6.8)
       Installing rubypants (0.2.0)
       Installing sass-globbing (1.0.0)
       Installing tilt (1.4.1)
       Installing sinatra (1.4.4)
       Installing stringex (1.4.0)
       Using bundler (1.3.2)
       Your bundle is complete! It was installed into ./vendor/bundle
       Cleaning up the bundler cache.
       Removing bundler (1.3.0.pre.5)
-----> Building Octopress site
       env: bundle: No such file or directory
-----> Discovering process types
       Procfile declares types -> (none)

Gemfile

source "http://rubygems.org"

gem 'rake'
gem 'jekyll', '~> 0.12'
gem 'rdiscount', '~> 1.6.8'
gem 'pygments.rb', '~> 0.3.4'
gem 'RedCloth', '~> 4.2.9'
gem 'haml', '~> 3.1.7'
gem 'compass', '~> 0.12.2'
gem 'sass-globbing', '~> 1.0.0'
gem 'rubypants', '~> 0.2.0'
gem 'stringex', '~> 1.4.0'
gem 'liquid', '~> 2.3.0'
gem 'sinatra', '~> 1.4.2'

group :development do
  gem 'rb-fsevent', '~> 0.9'
end

Gemfile.lock

GEM
remote: http://rubygems.org/
specs:
  RedCloth (4.2.9)
  chunky_png (1.2.9)
  classifier (1.3.3)
    fast-stemmer (>= 1.0.0)
  compass (0.12.2)
    chunky_png (~> 1.2)
    fssm (>= 0.2.7)
    sass (~> 3.1)
  directory_watcher (1.5.1)
  fast-stemmer (1.0.2)
  fssm (0.2.10)
  haml (3.1.8)
  jekyll (0.12.1)
    classifier (~> 1.3)
    directory_watcher (~> 1.1)
    kramdown (~> 0.14)
    liquid (~> 2.3)
    maruku (~> 0.5)
    pygments.rb (~> 0.3.2)
  kramdown (0.14.2)
  liquid (2.3.0)
  maruku (0.7.0)
  posix-spawn (0.3.8)
  pygments.rb (0.3.7)
    posix-spawn (~> 0.3.6)
    yajl-ruby (~> 1.1.0)
  rack (1.5.2)
  rack-protection (1.5.1)
    rack
  rake (10.1.1)
  rb-fsevent (0.9.3)
  rdiscount (1.6.8)
  rubypants (0.2.0)
  sass (3.2.13)
  sass-globbing (1.0.0)
    sass (>= 3.1)
  sinatra (1.4.4)
    rack (~> 1.4)
    rack-protection (~> 1.4)
    tilt (~> 1.3, >= 1.3.4)
  stringex (1.4.0)
  tilt (1.4.1)
  yajl-ruby (1.1.0)

  PLATFORMS
    ruby

  DEPENDENCIES
    RedCloth (~> 4.2.9)
    compass (~> 0.12.2)
    haml (~> 3.1.7)
    jekyll (~> 0.12)
    liquid (~> 2.3.0)
    pygments.rb (~> 0.3.4)
    rake
    rb-fsevent (~> 0.9)
    rdiscount (~> 1.6.8)
    rubypants (~> 0.2.0)
    sass-globbing (~> 1.0.0)
    sinatra (~> 1.4.2)
    stringex (~> 1.4.0)

I have searched up and down but nothing seems to work for me. Any help would be much appreciated.

回答1:

I removed and add the BUILDPACK_URL again.

heroku config:remove BUILDPACK_URL
heroku config:set BUILDPACK_URL=https://github.com/nicholasmott/heroku-buildpack-octopress.git

And created a Procfile with content:

web: bundle exec rackup config.ru -p $PORT

I don't know which resolves the problem, but now it works.

I tried Simply set the url again: Nothing. Freeze the ruby version: Nothing. Create a Profile without bundle: Nothing.

Then I removed the Buildpack and I got my site down. I added again the buildpack and I created a Procfile and after that it just runs :)



回答2:

Try creating another application and Git remote using an updated version of the buildpack. It takes into account the way Heroku wants you to specify Ruby version in the Gemfile, which is new since Jason wrote his original buildpack.



回答3:

I had a similar thing happen to me on my jekyll site when I updated my gems.

I had to roll back my heroku to the "stock" heroku buildpack. Then everything started to work again.