Sha256: 1655a2508ca084c458ef2d8bf65c8722ba47638dc94daf273eadcd6cfe93cfa3
Contents?: true
Size: 1.21 KB
Versions: 1
Compression:
Stored size: 1.21 KB
Contents
require 'bundler' module Dockdev module Context class Rubygems def self.init_path(path) Rubygems.new(path) end def initialize(path) @path = path end def is_context? find_gemfile.length > 0 end def find_gemfile Dir.glob(File.join(@path,"Gemfile")) end def process_mount(mount_hash, dir_inside_docker = "/opt") if not mount_hash.nil? and mount_hash.is_a?(Hash) # # looking at source code # https://github.com/rubygems/rubygems/blob/master/bundler/lib/bundler/shared_helpers.rb#L246 # seems this is the way to set root for Bundler # ENV['BUNDLE_GEMFILE'] = find_gemfile.first Bundler.load.dependencies.each do |d| if not d.source.nil? src = d.source if src.path.to_s != "." mount_hash[src.path.expand_path.to_s] = File.join(dir_inside_docker, d.name) #res[d.name] = src.path.expand_path.to_s end end end end mount_hash end end end end Dockdev::Context::ContextManager.instance.register(:rubygems, Dockdev::Context::Rubygems)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
dockdev-0.3.2 | lib/dockdev/context/rubygems.rb |