Sha256: 507548d7f77edce2b9c2c1de51303b3a5ae9d3583199a6fefd42d06c02ef9951

Contents?: true

Size: 1.52 KB

Versions: 3

Compression:

Stored size: 1.52 KB

Contents

require 'rails/generators'
require 'rails/generators/rails/app/app_generator'

require_relative '../builders/base'

module Straptible
  module Rails
    module Generators
      class Base < ::Rails::Generators::AppGenerator
        # Override default Rails generator options
        # REVIEW: Is there a less monkey-patchy way to do this?
        class_option :database,         type: :string,
                                        aliases: '-d',
                                        default: 'postgresql'

        class_option :skip_test_unit,   type: :boolean,
                                        aliases: '-T',
                                        default: true

        class_option :skip_javascript,  type: :boolean,
                                        aliases: '-J',
                                        default: true

        def self.start
          tmpl_path = File.join('..', 'templates')
          tmpl_root = File.expand_path(tmpl_path, File.dirname(__FILE__))
          source_root tmpl_root
          source_paths << tmpl_root
          source_paths << ::Rails::Generators::AppGenerator.source_root

          super
        end

        def git_init
          git init:   '.',
              add:    '.',
              commit: "-m 'Initial commit (Straptible #{Straptible::VERSION})'"
        end

        protected

        # rubocop:disable AccessorMethodName
        def get_builder_class
          Straptible::Rails::Builders::Base
        end
        # rubocop:enable AccessorMethodName
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
straptible-0.2.4 lib/straptible/rails/generators/base.rb
straptible-0.2.3 lib/straptible/rails/generators/base.rb
straptible-0.2.2 lib/straptible/rails/generators/base.rb