class PhilColumns::Configuration
Constants
- TAG_REGEX
Attributes
_config[R]
Public Class Methods
new( options={} )
click to toggle source
Calls superclass method
# File lib/phil_columns/configuration.rb, line 10 def initialize( options={} ) @_config = Hashie::Mash.new( read_config_file ). merge( options ) super( _config ) end
Public Instance Methods
config_filepath()
click to toggle source
# File lib/phil_columns/configuration.rb, line 36 def config_filepath Pathname.new( '.phil_columns' ) end
down()
click to toggle source
Not sure why we need these explicit proxies
# File lib/phil_columns/configuration.rb, line 41 def down; _config.down; end
dry_run()
click to toggle source
# File lib/phil_columns/configuration.rb, line 42 def dry_run; _config.dry_run; end
operation()
click to toggle source
# File lib/phil_columns/configuration.rb, line 43 def operation; _config.operation; end
save_to_file()
click to toggle source
# File lib/phil_columns/configuration.rb, line 58 def save_to_file File.open( config_filepath, 'w' ) do |f| f.write( YAML::dump( config_as_hash )) end end
slice( *keys )
click to toggle source
# File lib/phil_columns/configuration.rb, line 54 def slice( *keys ) Hashie::Mash.new( _config.select { |k,v| keys.map( &:to_s ).include?( k.to_s ) } ) end
version()
click to toggle source
# File lib/phil_columns/configuration.rb, line 45 def version if _config.down && _config.version == 'all' '0' else _config.version end end
Protected Instance Methods
config_as_hash()
click to toggle source
# File lib/phil_columns/configuration.rb, line 73 def config_as_hash slice( *keys_to_persist ).to_h end
keys_to_persist()
click to toggle source
# File lib/phil_columns/configuration.rb, line 77 def keys_to_persist %w( default_tags env_files schema_load_strategy schema_unload_strategy seeds_path skip_tables_on_purge ) end
read_config_file()
click to toggle source
# File lib/phil_columns/configuration.rb, line 68 def read_config_file return {} unless config_filepath.file? YAML::load_file( config_filepath.expand_path ) end