summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/backup/database.rb18
1 files changed, 16 insertions, 2 deletions
diff --git a/lib/backup/database.rb b/lib/backup/database.rb
index 7af7140246a..ebb4f289c52 100644
--- a/lib/backup/database.rb
+++ b/lib/backup/database.rb
@@ -11,23 +11,29 @@ module Backup
end
def dump
- case config["adapter"]
+ success = case config["adapter"]
when /^mysql/ then
+ print "Dumping MySQL database #{config['database']} ... "
system('mysqldump', *mysql_args, config['database'], out: db_file_name)
when "postgresql" then
+ print "Dumping PostgreSQL database #{config['database']} ... "
pg_env
system('pg_dump', config['database'], out: db_file_name)
end
+ report_success(success)
end
def restore
- case config["adapter"]
+ success = case config["adapter"]
when /^mysql/ then
+ print "Restoring MySQL database #{config['database']} ... "
system('mysql', *mysql_args, config['database'], in: db_file_name)
when "postgresql" then
+ print "Restoring PostgreSQL database #{config['database']} ... "
pg_env
system('psql', config['database'], '-f', db_file_name)
end
+ report_success(success)
end
protected
@@ -54,5 +60,13 @@ module Backup
ENV['PGPORT'] = config["port"].to_s if config["port"]
ENV['PGPASSWORD'] = config["password"].to_s if config["password"]
end
+
+ def report_success(success)
+ if success
+ puts '[DONE]'.green
+ else
+ puts '[FAILED]'.red
+ end
+ end
end
end