Class: AfterMigrate::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/after_migrate.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/after_migrate.rb', line 14

def initialize
  @enabled = true
  @verbose = true
  @vacuum = true
  @analyze = 'only_affected_tables'
  @rake_tasks_enhanced = true
  @defer = true
  @store = :memory
  @run_id = ENV.fetch('AFTER_MIGRATE_RUN_ID', 'default')
  @store_options = {
    file: {
      path: 'tmp/after_migrate/affected_tables.json'
    },
    redis: {
      client: nil,
      key_prefix: 'after_migrate',
      ttl: 24 * 60 * 60
    }
  }
end

Instance Attribute Details

#analyzeObject

Returns the value of attribute analyze.



11
12
13
# File 'lib/after_migrate.rb', line 11

def analyze
  @analyze
end

#deferObject

Returns the value of attribute defer.



11
12
13
# File 'lib/after_migrate.rb', line 11

def defer
  @defer
end

#enabledObject

Returns the value of attribute enabled.



11
12
13
# File 'lib/after_migrate.rb', line 11

def enabled
  @enabled
end

#rake_tasks_enhancedObject

Returns the value of attribute rake_tasks_enhanced.



11
12
13
# File 'lib/after_migrate.rb', line 11

def rake_tasks_enhanced
  @rake_tasks_enhanced
end

#run_idObject

Returns the value of attribute run_id.



11
12
13
# File 'lib/after_migrate.rb', line 11

def run_id
  @run_id
end

#storeObject

Returns the value of attribute store.



11
12
13
# File 'lib/after_migrate.rb', line 11

def store
  @store
end

#store_optionsObject

Returns the value of attribute store_options.



11
12
13
# File 'lib/after_migrate.rb', line 11

def store_options
  @store_options
end

#vacuumObject

Returns the value of attribute vacuum.



11
12
13
# File 'lib/after_migrate.rb', line 11

def vacuum
  @vacuum
end

#verboseObject

Returns the value of attribute verbose.



11
12
13
# File 'lib/after_migrate.rb', line 11

def verbose
  @verbose
end

Instance Method Details

#redisObject



43
44
45
# File 'lib/after_migrate.rb', line 43

def redis
  store_options_for(:redis)[:client]
end

#redis=(value) ⇒ Object



47
48
49
# File 'lib/after_migrate.rb', line 47

def redis=(value)
  store_options_for(:redis)[:client] = value
end

#redis_key_prefixObject



51
52
53
# File 'lib/after_migrate.rb', line 51

def redis_key_prefix
  store_options_for(:redis)[:key_prefix]
end

#redis_key_prefix=(value) ⇒ Object



55
56
57
# File 'lib/after_migrate.rb', line 55

def redis_key_prefix=(value)
  store_options_for(:redis)[:key_prefix] = value
end

#redis_ttlObject



59
60
61
# File 'lib/after_migrate.rb', line 59

def redis_ttl
  store_options_for(:redis)[:ttl]
end

#redis_ttl=(value) ⇒ Object



63
64
65
# File 'lib/after_migrate.rb', line 63

def redis_ttl=(value)
  store_options_for(:redis)[:ttl] = value
end

#store_options_for(store_name) ⇒ Object



67
68
69
# File 'lib/after_migrate.rb', line 67

def store_options_for(store_name)
  store_options[store_name.to_sym] ||= {}
end

#store_pathObject



35
36
37
# File 'lib/after_migrate.rb', line 35

def store_path
  store_options_for(:file)[:path]
end

#store_path=(value) ⇒ Object



39
40
41
# File 'lib/after_migrate.rb', line 39

def store_path=(value)
  store_options_for(:file)[:path] = value
end