Class: PgEasyReplicate::CLI
- Inherits:
-
Thor
- Object
- Thor
- PgEasyReplicate::CLI
- Defined in:
- lib/pg_easy_replicate/cli.rb
Class Method Summary collapse
Instance Method Summary collapse
- #bootstrap ⇒ Object
- #cleanup ⇒ Object
- #config_check ⇒ Object
- #start_sync ⇒ Object
- #stats ⇒ Object
- #stop_sync ⇒ Object
-
#switchover ⇒ Object
method_option :bi_directional, aliases: “-b”, desc: “Setup replication from target database to source database”.
- #version ⇒ Object
Class Method Details
.exit_on_failure? ⇒ Boolean
170 171 172 |
# File 'lib/pg_easy_replicate/cli.rb', line 170 def self.exit_on_failure? true end |
Instance Method Details
#bootstrap ⇒ Object
59 60 61 |
# File 'lib/pg_easy_replicate/cli.rb', line 59 def bootstrap PgEasyReplicate.bootstrap() end |
#cleanup ⇒ Object
76 77 78 |
# File 'lib/pg_easy_replicate/cli.rb', line 76 def cleanup PgEasyReplicate.cleanup() end |
#config_check ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/pg_easy_replicate/cli.rb', line 33 def config_check PgEasyReplicate.assert_config( special_user_role: [:special_user_role], copy_schema: [:copy_schema], tables: [:tables], exclude_tables: [:exclude_tables], schema_name: [:schema_name], ) puts "✅ Config is looking good." end |
#start_sync ⇒ Object
111 112 113 |
# File 'lib/pg_easy_replicate/cli.rb', line 111 def start_sync PgEasyReplicate::Orchestrate.start_sync() end |
#stats ⇒ Object
157 158 159 160 161 162 163 |
# File 'lib/pg_easy_replicate/cli.rb', line 157 def stats if [:watch] PgEasyReplicate::Stats.follow([:group_name]) else PgEasyReplicate::Stats.print([:group_name]) end end |
#stop_sync ⇒ Object
121 122 123 |
# File 'lib/pg_easy_replicate/cli.rb', line 121 def stop_sync PgEasyReplicate::Orchestrate.stop_sync(group_name: [:group_name]) end |
#switchover ⇒ Object
method_option :bi_directional,
aliases: "-b",
desc:
"Setup replication from target database to source database"
143 144 145 146 147 148 149 |
# File 'lib/pg_easy_replicate/cli.rb', line 143 def switchover PgEasyReplicate::Orchestrate.switchover( group_name: [:group_name], lag_delta_size: [:lag_delta_size], skip_vacuum_analyze: [:skip_vacuum_analyze] ) end |
#version ⇒ Object
166 167 168 |
# File 'lib/pg_easy_replicate/cli.rb', line 166 def version puts PgEasyReplicate::VERSION end |