ey_db_backup 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +5 -7
- data/VERSION +1 -1
- data/ey_db_backup.gemspec +2 -2
- data/features/export.feature +1 -1
- data/lib/ey_db_backup/database_export.rb +8 -4
- metadata +21 -21
data/README.rdoc
CHANGED
@@ -5,15 +5,13 @@ This gem downloads the latest file in the bucket you specify in your AWS S3 acco
|
|
5
5
|
This backup utility is to make sure there is a recent backup of the database incase Amazon's S3 service goes down and you need access to your data.
|
6
6
|
|
7
7
|
== Setting up and using the Engine Yard Database Backup gem
|
8
|
-
1. <tt>gem install
|
8
|
+
1. <tt>gem install ey_db_backup</tt>
|
9
9
|
2. Create the directory <tt>config</tt> within the local directory you are running the gem in.
|
10
10
|
3. Create a YAML file <tt>config.yml</tt> structured as below:
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
export_path: "put the location you want to export the file to here (e.g. documents/db_exports/)"
|
16
|
-
</tt>
|
11
|
+
access_key_id: "put your access key id here"
|
12
|
+
secret_access_key: "put your secret access key here"
|
13
|
+
bucket_name: "put the bucket name here"
|
14
|
+
export_path: "put the location you want to export the file to here (e.g. documents/db_exports/)"
|
17
15
|
4. Simply run <tt>ey_db_backup run_export</tt> to download the latest file in the bucket you specified to the directory you specified.
|
18
16
|
|
19
17
|
== Configuring Engine Yard Databse Backup for Development
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0.
|
1
|
+
1.0.1
|
data/ey_db_backup.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{ey_db_backup}
|
8
|
-
s.version = "1.0.
|
8
|
+
s.version = "1.0.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Brett Chalupa"]
|
12
|
-
s.date = %q{2011-08-
|
12
|
+
s.date = %q{2011-08-19}
|
13
13
|
s.default_executable = %q{ey_db_backup}
|
14
14
|
s.description = %q{This gem interacts with Amazon's S3 service to give the user the ability to backup their database and store it elsewhere in case S3 experiences an outage. This gem should allow the user to easily automate the process of grabbing the most recent database from S3.}
|
15
15
|
s.email = %q{brettchalupa@gmail.com}
|
data/features/export.feature
CHANGED
@@ -2,7 +2,7 @@ Feature: Exporting database from Engine Yard
|
|
2
2
|
As a developer
|
3
3
|
I want to export the latest database from Engine Yard
|
4
4
|
So that I have a backup of the database hosted on another server that isn't Amazon's S3
|
5
|
-
|
5
|
+
|
6
6
|
Scenario: Successfully downloading the database
|
7
7
|
Given I have Amazon S3 credentials located in a file
|
8
8
|
And I have a database backup on Amazon S3
|
@@ -29,11 +29,15 @@ class DatabaseExport < Thor
|
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
|
+
chunk_total = 0
|
33
|
+
|
32
34
|
open("#{export_path}#{most_recent.key}", 'w') do |file|
|
33
|
-
|
35
|
+
AWS::S3::S3Object.stream(most_recent.key, bucket_name) do |chunk|
|
36
|
+
file.write chunk
|
37
|
+
#chunk_total += chunk.bytesize
|
38
|
+
#puts "#{((chunk_total)/(most_recent.about["content-length"].to_i))*100}%"
|
39
|
+
#puts File.size("#{export_path}#{most_recent.key}")
|
40
|
+
end
|
34
41
|
end
|
35
42
|
end
|
36
43
|
end
|
37
|
-
|
38
|
-
DatabaseExport.start
|
39
|
-
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ey_db_backup
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,12 +9,12 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-08-
|
12
|
+
date: 2011-08-19 00:00:00.000000000 -04:00
|
13
13
|
default_executable: ey_db_backup
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: thor
|
17
|
-
requirement: &
|
17
|
+
requirement: &70297104715160 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ! '>='
|
@@ -22,10 +22,10 @@ dependencies:
|
|
22
22
|
version: '0'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *70297104715160
|
26
26
|
- !ruby/object:Gem::Dependency
|
27
27
|
name: aws-s3
|
28
|
-
requirement: &
|
28
|
+
requirement: &70297104714580 !ruby/object:Gem::Requirement
|
29
29
|
none: false
|
30
30
|
requirements:
|
31
31
|
- - ! '>='
|
@@ -33,10 +33,10 @@ dependencies:
|
|
33
33
|
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
|
-
version_requirements: *
|
36
|
+
version_requirements: *70297104714580
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: rspec
|
39
|
-
requirement: &
|
39
|
+
requirement: &70297104714000 !ruby/object:Gem::Requirement
|
40
40
|
none: false
|
41
41
|
requirements:
|
42
42
|
- - ~>
|
@@ -44,10 +44,10 @@ dependencies:
|
|
44
44
|
version: 2.3.0
|
45
45
|
type: :development
|
46
46
|
prerelease: false
|
47
|
-
version_requirements: *
|
47
|
+
version_requirements: *70297104714000
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: cucumber
|
50
|
-
requirement: &
|
50
|
+
requirement: &70297104713400 !ruby/object:Gem::Requirement
|
51
51
|
none: false
|
52
52
|
requirements:
|
53
53
|
- - ! '>='
|
@@ -55,10 +55,10 @@ dependencies:
|
|
55
55
|
version: '0'
|
56
56
|
type: :development
|
57
57
|
prerelease: false
|
58
|
-
version_requirements: *
|
58
|
+
version_requirements: *70297104713400
|
59
59
|
- !ruby/object:Gem::Dependency
|
60
60
|
name: bundler
|
61
|
-
requirement: &
|
61
|
+
requirement: &70297104712840 !ruby/object:Gem::Requirement
|
62
62
|
none: false
|
63
63
|
requirements:
|
64
64
|
- - ~>
|
@@ -66,10 +66,10 @@ dependencies:
|
|
66
66
|
version: 1.0.0
|
67
67
|
type: :development
|
68
68
|
prerelease: false
|
69
|
-
version_requirements: *
|
69
|
+
version_requirements: *70297104712840
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: jeweler
|
72
|
-
requirement: &
|
72
|
+
requirement: &70297104712360 !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
74
|
requirements:
|
75
75
|
- - ~>
|
@@ -77,10 +77,10 @@ dependencies:
|
|
77
77
|
version: 1.6.4
|
78
78
|
type: :development
|
79
79
|
prerelease: false
|
80
|
-
version_requirements: *
|
80
|
+
version_requirements: *70297104712360
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
82
|
name: rcov
|
83
|
-
requirement: &
|
83
|
+
requirement: &70297104711800 !ruby/object:Gem::Requirement
|
84
84
|
none: false
|
85
85
|
requirements:
|
86
86
|
- - ! '>='
|
@@ -88,10 +88,10 @@ dependencies:
|
|
88
88
|
version: '0'
|
89
89
|
type: :development
|
90
90
|
prerelease: false
|
91
|
-
version_requirements: *
|
91
|
+
version_requirements: *70297104711800
|
92
92
|
- !ruby/object:Gem::Dependency
|
93
93
|
name: mock-aws-s3
|
94
|
-
requirement: &
|
94
|
+
requirement: &70297104709180 !ruby/object:Gem::Requirement
|
95
95
|
none: false
|
96
96
|
requirements:
|
97
97
|
- - ! '>='
|
@@ -99,10 +99,10 @@ dependencies:
|
|
99
99
|
version: '0'
|
100
100
|
type: :development
|
101
101
|
prerelease: false
|
102
|
-
version_requirements: *
|
102
|
+
version_requirements: *70297104709180
|
103
103
|
- !ruby/object:Gem::Dependency
|
104
104
|
name: aws-s3
|
105
|
-
requirement: &
|
105
|
+
requirement: &70297104708580 !ruby/object:Gem::Requirement
|
106
106
|
none: false
|
107
107
|
requirements:
|
108
108
|
- - ! '>='
|
@@ -110,7 +110,7 @@ dependencies:
|
|
110
110
|
version: '0'
|
111
111
|
type: :development
|
112
112
|
prerelease: false
|
113
|
-
version_requirements: *
|
113
|
+
version_requirements: *70297104708580
|
114
114
|
description: This gem interacts with Amazon's S3 service to give the user the ability
|
115
115
|
to backup their database and store it elsewhere in case S3 experiences an outage.
|
116
116
|
This gem should allow the user to easily automate the process of grabbing the most
|
@@ -171,7 +171,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
171
171
|
version: '0'
|
172
172
|
segments:
|
173
173
|
- 0
|
174
|
-
hash:
|
174
|
+
hash: 1826525500067527087
|
175
175
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
176
176
|
none: false
|
177
177
|
requirements:
|