aws_client 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 23aba1efc52a2fc7ad35c35dd57b4dbcd92ebe2a
4
- data.tar.gz: b32fa965878392426bf6cbfd8612eed2de302036
3
+ metadata.gz: 20e3ab797e3b34c9ac2bbd5317251eb174c34d84
4
+ data.tar.gz: 26c595f87948a68ecf562016000f09ee67ee49a7
5
5
  SHA512:
6
- metadata.gz: d35be6b59a94091aedca5056e0aa8b2c018c50dc3840a7a5f88b71b1e6a2c37364affb290c40f6310c10d62b3aaecc2c1c4b84b074107c4ff49eb40a276f92a2
7
- data.tar.gz: 8095348d1009bc67a29e11c5f7c390c1e62650dc613aa4656991f2d56b5cfcbba869b2f4577712a4c64713454154ce11e9fabdcc98b80dda2c826189bbb5715a
6
+ metadata.gz: e96adfda8174198cc44b0850c5ea636d5f798eafc5d2d73ac8b63a6794e456fb59866e52044305326ef4a198ba65bc9244f2361e2446eeb032000b346c53863e
7
+ data.tar.gz: 51814dc8b2c8c73dbc13c2adc9dd615ae9ec5a4e607e3677eea384e0df3b589aa26007cf6baf6ffebbc859d8614df65e0fcbc00fc92e848e61c6a6ee59ac6397
Binary file
@@ -1,3 +1,3 @@
1
1
  module AwsClient
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
data/lib/aws_client.rb CHANGED
@@ -1,6 +1,8 @@
1
+ require 'yaml'
1
2
  require "aws-sdk"
2
3
  require "aws_client/version"
3
4
  require "wrapper"
5
+ require "s32_wrapper"
4
6
  require "s3_wrapper"
5
7
  require "cf_wrapper"
6
8
  require "rds_wrapper"
@@ -30,6 +32,10 @@ module AwsClient
30
32
  @cloudformation ||= ::AwsClient::CfWrapper.new(client: client_connect(::Aws::CloudFormation::Client))
31
33
  end
32
34
 
35
+ def s32
36
+ @s32 ||= ::AwsClient::S32Wrapper.new(client: client_connect(::Aws::S3::Client), credentials_key: @aws_account_credentials_key, region: @aws_region)
37
+ end
38
+
33
39
  def s3
34
40
  @s3 ||= ::AwsClient::S3Wrapper.new(client: client_connect(::Aws::S3::Client), credentials_key: @aws_account_credentials_key, region: @aws_region)
35
41
  end
@@ -0,0 +1,49 @@
1
+ module AwsClient
2
+ class S32Wrapper < AwsClient::Wrapper
3
+
4
+ def initialize(*params)
5
+ super
6
+ @credentials_key = params[0][:credentials_key]
7
+ @aws_region = params[0][:region]
8
+ end
9
+
10
+ def resource
11
+ @resource ||= Aws::S3::Resource.new(client: client)
12
+ end
13
+
14
+ def buckets
15
+ return resource.buckets
16
+ end
17
+
18
+ def find_bucket_by(bucket_name)
19
+ buckets.select{|bucket| bucket.name == bucket_name }.first
20
+ end
21
+
22
+ def find_or_create_bucket(bucket_name)
23
+ begin
24
+ bucket = resource.create_bucket(:bucket => bucket_name)
25
+ rescue Aws::S3::Errors::BucketAlreadyOwnedByYou
26
+ bucket = find_bucket_by(bucket_name)
27
+ end
28
+ return bucket
29
+ end
30
+
31
+ def write_local_file_to_bucket(bucket_name, file_path)
32
+ key = File.basename(file_path)
33
+ body = IO.read(file_path)
34
+ s3_object = write_to_s3_bucket(key, body, bucket_name)
35
+ return s3_object
36
+ end
37
+
38
+ def write_data_to_bucket(bucket_name, data, filename)
39
+ s3_object = write_to_s3_bucket(filename, data, bucket_name)
40
+ return s3_object
41
+ end
42
+
43
+ def write_to_s3_bucket(key, body, bucket_name)
44
+ bucket = find_or_create_bucket(bucket_name)
45
+ s3_object = bucket.put_object(:key => key, :body => body)
46
+ end
47
+
48
+ end
49
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Webzakimbo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-01-20 00:00:00.000000000 Z
11
+ date: 2016-06-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -69,6 +69,7 @@ files:
69
69
  - aws_client-0.0.3.gem
70
70
  - aws_client-0.0.4.gem
71
71
  - aws_client-0.0.5.gem
72
+ - aws_client-0.0.6.gem
72
73
  - aws_client.gemspec
73
74
  - bin/console
74
75
  - bin/setup
@@ -81,6 +82,7 @@ files:
81
82
  - lib/elb.rb
82
83
  - lib/elb_wrapper.rb
83
84
  - lib/rds_wrapper.rb
85
+ - lib/s32_wrapper.rb
84
86
  - lib/s3_wrapper.rb
85
87
  - lib/wrapper.rb
86
88
  homepage: https://github.com/webzakimbo/aws_client