Sha256: 396a5a28fac1d5194f2de3bf143bef3ec663296d45f63794c80efe44eeafec3a

Contents?: true

Size: 980 Bytes

Versions: 1

Compression:

Stored size: 980 Bytes

Contents

require 'bundler/geminabox/config'

module Bundler
  module Geminabox
    class CLI::Gem
      attr_reader :options, :gem_name, :thor
      def initialize(options, gem_name, thor)
        @options = options
        @gem_name = gem_name
        @thor = thor
      end

      def run
        name = gem_name.chomp("/") # remove trailing slash if present
        target = File.join(Dir.pwd, name)
        underscored_name = name.tr('-', '_')
        opts = {
          :geminabox        => Config.geminabox,
          :gem_tasks        => Config.gem_tasks,
          :name             => name,
          :underscored_name => underscored_name,
          :test             => options[:test],
          :ext              => options[:ext]
        }
        opts[:force] = true
        thor.template(File.join("newgem/Gemfile.tt"), File.join(target, "Gemfile"), opts)
        thor.template(File.join("newgem/Rakefile.tt"), File.join(target, "Rakefile"), opts)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bundler-geminabox-1.0.0 lib/bundler/geminabox/cli/gem.rb