class Rubypack::BundlerController

Public Class Methods

new(path:) click to toggle source
# File lib/rubypack/bundler_controller.rb, line 4
def initialize(path:)
  @path = path
end

Public Instance Methods

install() { |out| ... } click to toggle source
# File lib/rubypack/bundler_controller.rb, line 22
def install
  begin
    Dir.chdir(@path) do 
      IO.popen(['bundle', 'install', '--local', '--deployment', err: [:child, :out]]) do |out|
        yield(out)
      end
      fail("bundle install failed: #{$?.exitstatus}") unless $?.exitstatus == 0
      true
    end
  rescue => error
    fail("Error executing bundle install: #{error.message}")
  end
end
package() { |out| ... } click to toggle source
# File lib/rubypack/bundler_controller.rb, line 8
def package
  begin
    Dir.chdir(@path) do 
      IO.popen(['bundle', 'package', '--all-platforms', '--all', err: [:child, :out]]) do |out|
        yield(out)
      end
      fail("bundle package failed: #{$?.exitstatus}") unless $?.exitstatus == 0
      true
    end
  rescue => error
    fail("Error executing bundle package: #{error.message}")
  end
end