Class: Gamma::Command::Dryrun
- Inherits:
-
Gamma::Command
- Object
- Gamma::Command
- Gamma::Command::Dryrun
- Defined in:
- lib/gamma/command/dryrun.rb
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(opts) ⇒ Dryrun
constructor
A new instance of Dryrun.
Methods inherited from Gamma::Command
#gamma_tables, #logger, #output_setting_warning
Constructor Details
#initialize(opts) ⇒ Dryrun
Returns a new instance of Dryrun.
2 3 4 5 6 7 8 9 10 |
# File 'lib/gamma/command/dryrun.rb', line 2 def initialize(opts) @database_settings = Gamma::DatabaseSettings.new(opts[:settings]) # TODO: support postgres adapter @in_client = Gamma::DatabaseConnector::MysqlConnector.new(@database_settings.in_database) @out_client = Gamma::DatabaseConnector::MysqlConnector.new(@database_settings.out_database) @hook_root_dir = opts[:hook_dir] || "." @syncdb = Gamma::SyncDatabase.new(opts[:sync_history] || "./history.json") @data_parser = Gamma::Parser::DataParser.new(opts[:data], @hook_root_dir, @in_client, @out_client, apply: false) end |
Instance Method Details
#execute ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/gamma/command/dryrun.rb', line 12 def execute tables = @data_parser.gamma_tables output_setting_warning(tables) tables.each do |t| logger.info("[#{t.sync_mode}] Sync Start #{t.table_name}".green) case t.sync_mode when "replace" Gamma::Importer::Replace.new(@in_client, @out_client, t).execute else logger.info("[#{t.sync_mode}] Sync Failed #{t.table_name}. Unknown Sync mode".red) end end end |