Sha256: 59c63c42b8172cf7d2e6911e79af1785224a61f7241c2f511fdf3081aee332f7

Contents?: true

Size: 801 Bytes

Versions: 2

Compression:

Stored size: 801 Bytes

Contents

require 'thor'
require 'thor/group'

require 'tiny-rails/actions'
require 'tiny-rails/commands/add'
require 'tiny-rails/commands/console'
require 'tiny-rails/commands/new'

module TinyRails
  class CLI < Thor
    include Thor::Actions

    desc 'new APP_PATH', 'Creates a new tiny Rails application'
    method_option :addons, :type => :array, :aliases => '-a', :default => []
    def new(app_path)
      Commands::New.start([app_path])
      add(options[:addons]) unless options[:addons].empty?
    end

    desc 'add [addons]', 'Configures addons on a generated tiny Rails application'
    def add(addons = [])
      addons = Array(addons)
      Commands::Add.start(addons)
    end

    desc 'console', 'Starts the tiny-rails console'
    def console
      Commands::Console.start
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
tiny-rails-0.1.1 lib/tiny-rails/cli.rb
tiny-rails-0.1.0 lib/tiny-rails/cli.rb