Class: Skadi::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::Migration
Defined in:
lib/generators/skadi/install/install_generator.rb

Defined Under Namespace

Classes: Error

Constant Summary collapse

VALID_DB_ENGINES =
[ :postgres, :mysql, :sqlite ]
VALID_USER_ID_TYPES =
[ :bigint, :integer, :uuid, :string ]

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.next_migration_number(dirname) ⇒ Object



26
# File 'lib/generators/skadi/install/install_generator.rb', line 26

def self.next_migration_number(dirname) = ::ActiveRecord::Generators::Base.next_migration_number(dirname)

Instance Method Details

#create_migration_fileObject

Raises:



28
29
30
31
32
33
34
# File 'lib/generators/skadi/install/install_generator.rb', line 28

def create_migration_file
  raise Error.new("Invalid database engine specified") unless VALID_DB_ENGINES.include?(db_engine)
  raise Error.new("Invalid user id type specified") unless VALID_USER_ID_TYPES.include?(user_id_type)

  migration_template "skadi_migration.rb.erb",
    "db/migrate/install_skadi.rb"
end