s3-mysql-backup 1.2.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +15 -0
  2. data/lib/s3utils.rb +16 -19
  3. metadata +6 -14
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ ZjRiY2FjOTNkZWYyNGE0MDY5YjZhZTkyYTE5Yzk2ZGRhOTQyNTdhNQ==
5
+ data.tar.gz: !binary |-
6
+ NGRkZWYwMTU0MGVkZjRiM2IxMzU2NmZkNTg0M2E5YmZjYTFhNDgzMg==
7
+ !binary "U0hBNTEy":
8
+ metadata.gz: !binary |-
9
+ NGI0YjFkYTdhMmNmMzViNGIzZjE3MGY1OTA3MDhmN2ZjOGJhZTZmZjIwOGEx
10
+ YjAxNWRjMGMxMzM0MGExZmQ2NGUxZTEzYTRmZjQ5YzI0OWYwYTVjMTNlZmQ2
11
+ YWJiYzY2NzJlMjlhODFmZjg3NjJhODg1N2ExZjE5Zjc1NTgwMGY=
12
+ data.tar.gz: !binary |-
13
+ NDU0MmUyZDNlMWU2NzIzYzk4ODAzNDhiMTQxYTExZjJhODQ5MGM4YWJhNTA5
14
+ NDE1M2NhOGJkOWI0YTg0MTY2ODhkNjdjNGM0Yzk3MzhkMTI3YzI0ZGE1NjM4
15
+ YWE5ZDM3OThjMmJmM2M1MTQyM2NhNjc2NDM1ZjljOWZiYjJhODI=
data/lib/s3utils.rb CHANGED
@@ -1,30 +1,26 @@
1
- require 'aws/s3'
1
+ require 'aws-sdk'
2
2
 
3
3
  # wrapper for S3 operations
4
4
  #
5
5
  class S3Utils
6
6
 
7
- def initialize(access_key_id, secret_access_key, bucket, server=nil)
8
- @bucket = bucket
9
- connect(access_key_id, secret_access_key, server)
10
- ensure_bucket_exists
7
+ def initialize(access_key_id, secret_access_key, bucket_name, server=nil)
8
+ @bucket_name = bucket_name
9
+ @s3_connection = connect(access_key_id, secret_access_key, server)
10
+ @s3_bucket = get_or_create_bucket
11
11
  self
12
12
  end
13
13
 
14
- def copy(from, to)
15
- AWS::S3::S3Object.copy(File.basename(from), File.basename(to), @bucket)
16
- end
17
-
18
14
  def store(file_path)
19
- AWS::S3::S3Object.store(File.basename(file_path), open(file_path), @bucket)
15
+ @s3_bucket.objects.create(File.basename(file_path), open(file_path))
20
16
  end
21
17
 
22
18
  def delete(file_path)
23
- AWS::S3::S3Object.delete(File.basename(file_path), @bucket)
19
+ @s3_bucket.objects[File.basename(file_path)].delete
24
20
  end
25
21
 
26
22
  def list
27
- AWS::S3::Bucket.find(@bucket).objects.each do |obj|
23
+ @s3_bucket.objects.each do |obj|
28
24
  puts "#{obj.bucket.name}/#{obj.key}"
29
25
  end
30
26
  end
@@ -33,12 +29,12 @@ class S3Utils
33
29
 
34
30
  def connect(access_key_id, secret_access_key, server=nil)
35
31
  if server == nil
36
- AWS::S3::Base.establish_connection!(
32
+ AWS::S3::new(
37
33
  :access_key_id => access_key_id,
38
34
  :secret_access_key => secret_access_key
39
35
  )
40
36
  else
41
- AWS::S3::Base.establish_connection!(
37
+ AWS::S3::new(
42
38
  :access_key_id => access_key_id,
43
39
  :secret_access_key => secret_access_key,
44
40
  :server => server
@@ -46,11 +42,12 @@ class S3Utils
46
42
  end
47
43
  end
48
44
 
49
- def ensure_bucket_exists
50
- AWS::S3::Bucket.find(@bucket)
51
-
52
- rescue AWS::S3::NoSuchBucket
53
- AWS::S3::Bucket.create(@bucket)
45
+ def get_or_create_bucket
46
+ if @s3_connection.buckets[@bucket_name].exists?
47
+ @s3_connection.buckets[@bucket_name]
48
+ else
49
+ @s3_connection.buckets.create(@bucket_name)
50
+ end
54
51
  end
55
52
 
56
53
  end
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: s3-mysql-backup
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
5
- prerelease:
4
+ version: 2.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Jeff Emminger
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-01 00:00:00.000000000 Z
11
+ date: 2013-09-10 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: aws-s3
14
+ name: aws-sdk
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ! '>='
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ! '>='
28
25
  - !ruby/object:Gem::Version
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rspec
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ~>
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rr
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -76,28 +69,27 @@ files:
76
69
  - bin/s3-mysql-backup
77
70
  homepage: https://github.com/7compass/s3-mysql-backup
78
71
  licenses: []
72
+ metadata: {}
79
73
  post_install_message:
80
74
  rdoc_options: []
81
75
  require_paths:
82
76
  - .
83
77
  - lib
84
78
  required_ruby_version: !ruby/object:Gem::Requirement
85
- none: false
86
79
  requirements:
87
80
  - - ! '>='
88
81
  - !ruby/object:Gem::Version
89
82
  version: '0'
90
83
  required_rubygems_version: !ruby/object:Gem::Requirement
91
- none: false
92
84
  requirements:
93
85
  - - ! '>='
94
86
  - !ruby/object:Gem::Version
95
87
  version: '0'
96
88
  requirements: []
97
89
  rubyforge_project:
98
- rubygems_version: 1.8.25
90
+ rubygems_version: 2.0.6
99
91
  signing_key:
100
- specification_version: 3
92
+ specification_version: 4
101
93
  summary: Simple mysql backup to S3
102
94
  test_files:
103
95
  - spec/s3_mysql_backup_spec.rb