Sha256: 0d823fb67f82198d022eeab835c5013da344508ce173121c07a55f6146885be5

Contents?: true

Size: 606 Bytes

Versions: 5

Compression:

Stored size: 606 Bytes

Contents

module Geri
  module CLI
    class Extension < Thor
      include Thor::Actions
      include Rails::Generators::Actions

      desc 'install NAME', 'Install the named Geri extension'
      def install(name)
        extname = 'geri'
        extname << "_#{name}" unless name == 'geri'
        script = %Q{bundle exec rails runner -c 'puts Gem::Specification.find_by_name("#{extname}").gem_dir'}
        gemdir = run script, capture: true, verbose: false
        load("#{gemdir.strip}/installer.rb")
        "#{extname.gsub('_', '/').classify}::Installer".constantize.start(name)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
geri-0.1.4 lib/geri/cli/extension.rb
geri-0.1.3 lib/geri/cli/extension.rb
geri-0.1.1 lib/geri/cli/extension.rb
geri-0.1.0 lib/geri/cli/extension.rb
geri-0.0.1 lib/geri/cli/extension.rb