Class: BranchingCleaner::LeftoversCleaner
- Defined in:
- lib/branching_cleaner/leftovers_cleaner.rb
Instance Method Summary collapse
- #all_databases_from_server ⇒ Object
- #all_project_databases(env) ⇒ Object
- #databases_except_master(env) ⇒ Object
- #databases_to_remove ⇒ Object
- #run ⇒ Object
Instance Method Details
#all_databases_from_server ⇒ Object
25 26 27 |
# File 'lib/branching_cleaner/leftovers_cleaner.rb', line 25 def all_databases_from_server connection.query('SELECT datname FROM pg_catalog.pg_database').flatten end |
#all_project_databases(env) ⇒ Object
21 22 23 |
# File 'lib/branching_cleaner/leftovers_cleaner.rb', line 21 def all_project_databases(env) all_databases_from_server.select { |database| database.match(/#{db_core_name}#{env}_/)} end |
#databases_except_master(env) ⇒ Object
17 18 19 |
# File 'lib/branching_cleaner/leftovers_cleaner.rb', line 17 def databases_except_master(env) all_project_databases(env) - ["#{db_core_name}#{env}_master"] end |
#databases_to_remove ⇒ Object
13 14 15 |
# File 'lib/branching_cleaner/leftovers_cleaner.rb', line 13 def databases_to_remove databases_except_master('test') + databases_except_master('development') end |
#run ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/branching_cleaner/leftovers_cleaner.rb', line 5 def run GIT::switch_to_master_branch databases_to_remove.each do |database| puts "* Removing '#{database}'" connection.drop_database(database) end end |