Sha256: 4b94ee6674f7bddf984bee104c20e8040d6560f2b339778ee6395e30ee42bbc2
Contents?: true
Size: 1.38 KB
Versions: 1
Compression:
Stored size: 1.38 KB
Contents
#!/usr/bin/env ruby require 'optparse' require 'gem_repackager' options = { verbose: false } OptionParser.new do |opts| opts.banner = "Usage: gem_repackager DIRECTORY [options]" opts.on("--destination N", String, "Set custom directory for gems to be sent") do |v| options[:destination] = v end opts.on('--gems x,y,z', Array, 'Comma-separated list of gem-version') do |list| options[:gems] = list end opts.on("-v", "--[no-]verbose", "Run verbosely") do |v| options[:verbose] = v end opts.on_tail("--version", "Show version") do puts Gem::Repackager::VERSION exit end end.parse! directory = ARGV[0] options[:destination] ||= directory if directory packager = Gem::Repackager.new directory packager.silence_warnings unless options[:verbose] if options[:gems] options[:gems].each do |gem| name, version = gem.split '-' spec = packager.load_spec name: name, version: version filename = packager.package_gem spec if filename FileUtils.mv filename, options[:destination] puts "#{gem} created at #{options[:destination]}" else puts "#{gem} could not be repackaged." end end else packager.package_all options[:destination] puts "Gems repackaged: #{packager.gems_built.size}. Gems failed: #{packager.gems_failed.size}." end else puts "Usage: gem_repackager DIRECTORY [options]" end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
gem_repackager-0.1.0 | bin/gem_repackager |