master
1namespace :db do
2 task :restore do
3 config = Rails.configuration.database_configuration
4 destination_db = config[Rails.env]["database"]
5 host = config[Rails.env].fetch("host", "localhost")
6
7 newest_backup = Dir['db/backups/*.dump'].max_by { |file| File.mtime(file) }
8 sh "PGPASSWORD=#{config[Rails.env]["password"]} pg_restore --verbose --clean --no-acl --no-owner -h #{host} -U #{config[Rails.env]["username"]} -d #{destination_db} #{newest_backup}"
9 end
10
11 task :backup do
12 sh "bundle exec cap #{ENV['RAILS_ENV']} db:backup"
13 end
14end