class Physique::FluentMigratorConfig

Attributes

dialect[W]
instance[W]
lang[W]
name[W]
scripts_dir[W]
task_alias[W]

Public Class Methods

new() click to toggle source
# File lib/physique/task_builders/fluent_migrator.rb, line 19
def initialize
  @lang = :cs
  @scripts_dir = '_Scripts'
end

Public Instance Methods

opts() click to toggle source
# File lib/physique/task_builders/fluent_migrator.rb, line 24
def opts
  validate_config

  Map.new({
    lang: @lang,
    instance: @instance,
    name: @name,
    scripts_dir: @scripts_dir,
    dialect: @dialect,
    project_file: Physique::ProjectPathResolver.resolve(@project, @lang),
    task_alias: (@task_alias || @name),
  })
end

Private Instance Methods

validate_config() click to toggle source
# File lib/physique/task_builders/fluent_migrator.rb, line 40
def validate_config
  raise ArgumentError, 'You must specify a database instance' if @instance.blank?
  raise ArgumentError, 'You must specify a database name' if @name.blank?
  raise ArgumentError, 'You must specify the FluentMigrator project' if @project.blank?
  raise ArgumentError, 'You must specify a language' if @lang.blank?
  raise ArgumentError, 'You must specify a scripts_dir' if @scripts_dir.blank?
end