class SeedGimmick::Options
Constants
- VALID_OPTIONS_KEYS
Public Class Methods
new(options = {})
click to toggle source
# File lib/seed_gimmick/options.rb, line 17 def initialize(options = {}) @options = load_config.merge(options).symbolize_keys end
Public Instance Methods
default_ext()
click to toggle source
# File lib/seed_gimmick/options.rb, line 41 def default_ext @options[:default_ext] || ENV["FORMAT"] || "yml" end
environment()
click to toggle source
# File lib/seed_gimmick/options.rb, line 53 def environment ENV["RAILS_ENV"] || ENV["APP_ENV"] || default_env end
exclude_columns()
click to toggle source
# File lib/seed_gimmick/options.rb, line 45 def exclude_columns @options[:exclude_columns] || default_exclude_columns end
load_config()
click to toggle source
# File lib/seed_gimmick/options.rb, line 49 def load_config config.exist? ? YAML.load_file(config)[environment] : {} end
models()
click to toggle source
# File lib/seed_gimmick/options.rb, line 33 def models @options[:models] || ENV["MODELS"].try(:split, ",") || [] end
models!()
click to toggle source
# File lib/seed_gimmick/options.rb, line 37 def models! models.presence || (raise SeedGimmickError) end
seed_dir()
click to toggle source
# File lib/seed_gimmick/options.rb, line 21 def seed_dir root_dir.join(@options[:seed_dir] || default_seed_dir) end
tables()
click to toggle source
# File lib/seed_gimmick/options.rb, line 25 def tables @options[:tables] || ENV["TABLES"].try(:split, ",") || [] end
tables!()
click to toggle source
# File lib/seed_gimmick/options.rb, line 29 def tables! tables.presence || (raise SeedGimmickError) end
Private Instance Methods
config()
click to toggle source
# File lib/seed_gimmick/options.rb, line 70 def config root_dir.join("config", "seed_gimmick.yml") end
default_env()
click to toggle source
# File lib/seed_gimmick/options.rb, line 66 def default_env defined?(Rails) ? Rails.env : "development".inquiry end
default_exclude_columns()
click to toggle source
# File lib/seed_gimmick/options.rb, line 62 def default_exclude_columns ["created_at", "updated_at"] end
default_seed_dir()
click to toggle source
# File lib/seed_gimmick/options.rb, line 58 def default_seed_dir Pathname.new("db/seed_gimmick") end
root_dir()
click to toggle source
# File lib/seed_gimmick/options.rb, line 74 def root_dir defined?(Rails) ? Rails.root : Pathname.pwd end