rubygems / bundler

Manage your Ruby application's gem dependencies
https://bundler.io
MIT License
4.88k stars 1.99k forks source link

ERROR in bundle install #4394

Closed basicecon closed 8 years ago

basicecon commented 8 years ago

--- ERROR REPORT TEMPLATE -------------------------------------------------------

Error details

Errno::ENOTSUP: Operation not supported - /home/vagrant
  /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `mkdir'
  /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `fu_mkdir'
  /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:219:in `block (2 levels) in mkdir_p'
  /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:217:in `reverse_each'
  /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:217:in `block in mkdir_p'
  /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:203:in `each'
  /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:203:in `mkdir_p'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler.rb:281:in `block in mkdir_p'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/shared_helpers.rb:114:in `filesystem_access'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler.rb:280:in `mkdir_p'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/installer.rb:175:in `block in create_bundle_path'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/shared_helpers.rb:114:in `filesystem_access'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/installer.rb:174:in `create_bundle_path'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/installer.rb:57:in `run'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/installer.rb:21:in `install'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/cli/install.rb:105:in `run'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/cli.rb:172:in `install'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/cli.rb:10:in `start'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/exe/bundle:19:in `block in <top (required)>'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/lib/bundler/friendly_errors.rb:7:in `with_friendly_errors'
  /Library/Ruby/Gems/2.0.0/gems/bundler-1.11.2/exe/bundle:17:in `<top (required)>'
  /usr/local/bin/bundle:23:in `load'
  /usr/local/bin/bundle:23:in `<main>'

Environment

Bundler   1.11.2
Rubygems  2.0.14.1
Ruby      2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15]
GEM_HOME  /home/vagrant/.gem/ruby/2.0.0
GEM_PATH  
Git       2.7.4

Bundler settings

path
  Set for your local app (/Users/mengyao_wang/airlab/repos/airbnb/.bundle/config): "/home/vagrant/.gem"
disable_shared_gems
  Set for your local app (/Users/mengyao_wang/airlab/repos/airbnb/.bundle/config): "1"

--- TEMPLATE END ----------------------------------------------------------------

TimMoore commented 8 years ago

@kathy007 I think that path configuration is likely to be the problem. Is it intended on your part to install your gems to /home/vagrant/.gem? You might want to try deleting the .bundle/config file from your project and see if that works.

@bundler/contrib do we want to try to handle ENOTSUP in the same way that we do EACCES since #4016.

TimMoore commented 8 years ago

I haven't found anything definitive, but I suspect that ENOTSUP is what OS X Yosemite is raising for operations prevented by system integrity protection.

RochesterinNYC commented 8 years ago

I do think we should handle ENOTSUP via a new Bundler error class or picking an appropriate existing one.