Module Isolate
In: lib/isolate.rb
lib/isolate/events.rb
lib/isolate/sandbox.rb
lib/isolate/entry.rb

Restricts GEM_PATH and GEM_HOME and provides a DSL for expressing your code‘s runtime Gem dependencies. See README.rdoc for rationale, limitations, and examples.

Methods

disable   env   now!   sandbox  

Classes and Modules

Module Isolate::Events
Class Isolate::Entry
Class Isolate::Sandbox

Constants

VERSION = "3.0.0"   Duh.

Public Class methods

Disable Isolate. If a block is provided, isolation will be disabled for the scope of the block.

What environment should be isolated? Consults environment variables ISOLATE_ENV, RAILS_ENV, and RACK_ENV. Defaults to <tt>development"/tt> if none are set.

Declare an isolated RubyGems environment, installed in path. Any block given will be instance_evaled, see Isolate::Sandbox#gem and Isolate::Sandbox#environment for the sort of stuff you can do.

Valid options:

:cleanup:Should obsolete gems be removed? Default is true.
:file:Specify an Isolate file to instance_eval. Default is Isolate or config/isolate.rb, whichever is found first. Passing false disables file loading.
:install:Should missing gems be installed? Default is true.
:multiruby:Should Isolate assume that multiple Ruby versions will be used simultaneously? If so, gems will be segregated by Ruby version. Default is true.
:path:Where should isolated gems be kept? Default is tmp/isolate", and a Ruby version specifier suffix will be added if :multiruby is true.
:system:Should system gems be allowed to satisfy dependencies? Default is true.
:verbose:Should Isolate be chatty during installs and nukes? Default is true.

A singleton instance of Isolate::Sandbox.

[Validate]