Class: GemIsolator::Isolation
- Inherits:
-
Object
- Object
- GemIsolator::Isolation
- Defined in:
- lib/gem_isolator/isolation.rb,
lib/gem_isolator/isolation/gemfile.rb,
lib/gem_isolator/isolation/sandbox.rb,
lib/gem_isolator/isolation/environment.rb
Overview
Main class for setting up sandbox/isolation environment
Defined Under Namespace
Classes: Environment, Gemfile, Sandbox
Instance Method Summary collapse
-
#initialize(options) ⇒ Isolation
constructor
A new instance of Isolation.
- #system(*args) ⇒ Object
Constructor Details
#initialize(options) ⇒ Isolation
Returns a new instance of Isolation.
14 15 16 17 18 19 20 21 22 |
# File 'lib/gem_isolator/isolation.rb', line 14 def initialize() gem_defs = .fetch(:gems, [[]]) within_sandbox do @sandbox = Sandbox.new(gems: gem_defs) sandbox.setup environment = Environment.new(gem_home: sandbox.gem_home).to_hash yield(environment, self) end end |
Instance Method Details
#system(*args) ⇒ Object
24 25 26 |
# File 'lib/gem_isolator/isolation.rb', line 24 def system(*args) sandbox.system(*args) end |