class Gumdrop::CLI::External

Public Class Methods

source_root() click to toggle source
# File lib/gumdrop/cli/external.rb, line 8
def self.source_root
  File.expand_path('../../../..', __FILE__)
end

Public Instance Methods

new(name) click to toggle source
# File lib/gumdrop/cli/external.rb, line 14
def new(name)
  template= options[:template] || 'default'

  if File.directory? gem_template_path(template)
    say "New site from template: #{template} (gem)"
    directory(gem_template_path(template), name)

  elsif File.directory? home_template_path(template)
    say "New site from template:  #{template} (local)"
    directory(home_template_path(template), name)

  else
    say "Unknown template!!\n"
    say "Please select from one of the following:\n\n"
    self.templates
    return
  end
  # path= File.expand_path(name)
  # puts `cd #{path} && bundle install`
end
templates() click to toggle source
# File lib/gumdrop/cli/external.rb, line 36
def templates
  say  "Gem templates:"
  Dir[ gem_template_path ].each do |name|
    say " - #{File.basename name}" if File.directory?(name)
  end
  say  "Local templates:"
  Dir[ home_template_path ].each do |name|
    say " - #{File.basename name}" if File.directory?(name)
  end
end
version() click to toggle source
# File lib/gumdrop/cli/external.rb, line 48
def version
  say "Gumdrop v#{ Gumdrop::VERSION }"
end

Private Instance Methods

gem_template_path(template='*') click to toggle source
# File lib/gumdrop/cli/external.rb, line 54
def gem_template_path(template='*')
  self.class.source_root / 'templates' / template
end
home_template_path(template='*') click to toggle source
# File lib/gumdrop/cli/external.rb, line 58
def home_template_path(template='*')
  File.expand_path "~" / '.gumdrop' / 'templates' / template
end