pgbackup-tasks 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,9 @@
1
- module Rails
2
- class Railtie < ::Rails::Railtie
3
- rake_tasks do
4
- load "tasks/pgbackup.rake"
1
+ module PgbackupTasks
2
+ module Rails
3
+ class Railtie < ::Rails::Railtie
4
+ rake_tasks do
5
+ load "tasks/pgbackup.rake"
6
+ end
5
7
  end
6
8
  end
7
9
  end
@@ -0,0 +1,32 @@
1
+ namespace :pgbackup do
2
+ desc 'capture pgbackup from production'
3
+ task :capture => :environment do
4
+ system("heroku pgbackups:capture --expire --remote production")
5
+ end
6
+
7
+ desc 'download most recent pgbackup from production and put in ../pgbackups'
8
+ task :download => :environment do
9
+ timestamp = Time.now.utc.strftime("%Y%m%d%H%M%S")
10
+ system("curl -o ../pgbackups/production_#{timestamp}.dump --create-dirs `heroku pgbackups:url --remote production`")
11
+ end
12
+
13
+ desc 'load most recently downloaded pgbackup into development database'
14
+ task :restore => :environment do
15
+ last_backup = Dir.entries("../pgbackups").last
16
+ database = Rails.configuration.database_configuration[Rails.env]['database']
17
+ system("pg_restore --verbose --clean --no-acl --no-owner -d #{database} ../pgbackups/#{last_backup}")
18
+ end
19
+
20
+ desc 'capture, download and restore pgbackup from production to development'
21
+ task :seed => :environment do
22
+ `rake pgbackup:capture`
23
+ `rake pgbackup:download`
24
+ `rake pgbackup:restore`
25
+ end
26
+
27
+ desc 'capture and restore pgbackup from production to staging'
28
+ task :to_staging => :environment do
29
+ `rake pgbackup:capture`
30
+ system("heroku pgbackups:restore `heroku pgbackups:url --remote production` --remote staging")
31
+ end
32
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pgbackup-tasks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-12-28 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: heroku
16
- requirement: &70156101544700 !ruby/object:Gem::Requirement
16
+ requirement: &70176913679920 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,7 +21,7 @@ dependencies:
21
21
  version: 2.17.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70156101544700
24
+ version_requirements: *70176913679920
25
25
  description:
26
26
  email: chapambrose@gmail.com
27
27
  executables: []
@@ -29,6 +29,7 @@ extensions: []
29
29
  extra_rdoc_files: []
30
30
  files:
31
31
  - lib/pgbackup-tasks.rb
32
+ - lib/tasks/pgbackup.rake
32
33
  homepage: http://github.com/chap/pgbackup-tasks
33
34
  licenses: []
34
35
  post_install_message: