awsraw 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 87374bc9711ba8212767836856d7e090f5c3893b
4
+ data.tar.gz: 65d1a59bfcc0b37ab7a6fb55e2eb5bf789476206
5
+ SHA512:
6
+ metadata.gz: 7b578a0265a94387760fc5a371f8b77a002449b6f357200c0375bced4b996dd5db4b1963c84ab565facd3a87972d34aae983f391828297eada924c2bd777e9d2
7
+ data.tar.gz: 6feb80ffd5a50cbe3c6ebdb9de051f8512b9aa44d54a0f2e8506ef4422c379841df7a4cee702d81f37b6d4b394d17ba66a4db51b52c7164b7aba4fb841124a8a
data/README.md CHANGED
@@ -35,7 +35,7 @@ file = File.open("reaction.gif", "rb")
35
35
 
36
36
  s3.request(:method => "PUT",
37
37
  :bucket => "mah-sekret-buckit",
38
- :key => "reaction.gif",
38
+ :key => "/reaction.gif",
39
39
  :content => file,
40
40
  :headers => { "Content-Type" => "image/gif" })
41
41
 
@@ -5,6 +5,8 @@ require 'uri'
5
5
  module AWSRaw
6
6
  module S3
7
7
 
8
+ US_STANDARD = "us-east-1"
9
+
8
10
  # Note that we use path style (rather than virtual hosted style) requests.
9
11
  # This is because virtual hosted requests only support lower case bucket
10
12
  # names.
@@ -14,6 +16,7 @@ module AWSRaw
14
16
  def initialize(params, signer)
15
17
  @method = params[:method]
16
18
  @bucket = params[:bucket]
19
+ @region = params[:region]
17
20
  @key = params[:key]
18
21
  @query = params[:query]
19
22
  @headers = params[:headers] || {}
@@ -34,7 +37,11 @@ module AWSRaw
34
37
  attr_reader :content
35
38
 
36
39
  def host
37
- "s3.amazonaws.com"
40
+ if @region && @region != US_STANDARD
41
+ "s3-#{@region}.amazonaws.com"
42
+ else
43
+ "s3.amazonaws.com"
44
+ end
38
45
  end
39
46
 
40
47
  def path
@@ -1,3 +1,3 @@
1
1
  module Awsraw
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
@@ -0,0 +1,23 @@
1
+ require 'awsraw/s3/client'
2
+
3
+ describe AWSRaw::S3::Request do
4
+ let(:signer) { stub(:signature => "signature") }
5
+
6
+ describe "#host" do
7
+ it "defaults to the standard host" do
8
+ request = described_class.new({}, signer)
9
+ request.host.should == "s3.amazonaws.com"
10
+ end
11
+
12
+ it "ignores the region if it is the standard region" do
13
+ request = described_class.new({ :region => "us-east-1" }, signer)
14
+ request.host.should == "s3.amazonaws.com"
15
+ end
16
+
17
+ it "uses the region specific host when a non standard region is supplied" do
18
+ request = described_class.new({ :region => "ap-southeast-2" }, signer)
19
+ request.host.should == "s3-ap-southeast-2.amazonaws.com"
20
+ end
21
+ end
22
+
23
+ end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awsraw
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
5
- prerelease:
4
+ version: 0.1.5
6
5
  platform: ruby
7
6
  authors:
8
7
  - Pete Yandell
@@ -16,33 +15,29 @@ dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
16
  name: rake
18
17
  requirement: !ruby/object:Gem::Requirement
19
- none: false
20
18
  requirements:
21
- - - ! '>='
19
+ - - '>='
22
20
  - !ruby/object:Gem::Version
23
21
  version: '0'
24
22
  type: :development
25
23
  prerelease: false
26
24
  version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
25
  requirements:
29
- - - ! '>='
26
+ - - '>='
30
27
  - !ruby/object:Gem::Version
31
28
  version: '0'
32
29
  - !ruby/object:Gem::Dependency
33
30
  name: rspec
34
31
  requirement: !ruby/object:Gem::Requirement
35
- none: false
36
32
  requirements:
37
- - - ! '>='
33
+ - - '>='
38
34
  - !ruby/object:Gem::Version
39
35
  version: '0'
40
36
  type: :development
41
37
  prerelease: false
42
38
  version_requirements: !ruby/object:Gem::Requirement
43
- none: false
44
39
  requirements:
45
- - - ! '>='
40
+ - - '>='
46
41
  - !ruby/object:Gem::Version
47
42
  version: '0'
48
43
  description: A client for Amazon Web Services in the style of FlickRaw
@@ -73,36 +68,36 @@ files:
73
68
  - spec/s3/http_request_builder_spec.rb
74
69
  - spec/s3/md5_digester_spec.rb
75
70
  - spec/s3/query_string_signer_spec.rb
71
+ - spec/s3/request_spec.rb
76
72
  - spec/s3/signer_spec.rb
77
73
  homepage: http://github.com/envato/awsraw
78
74
  licenses:
79
75
  - MIT
76
+ metadata: {}
80
77
  post_install_message:
81
78
  rdoc_options: []
82
79
  require_paths:
83
80
  - lib
84
81
  required_ruby_version: !ruby/object:Gem::Requirement
85
- none: false
86
82
  requirements:
87
- - - ! '>='
83
+ - - '>='
88
84
  - !ruby/object:Gem::Version
89
85
  version: '0'
90
86
  required_rubygems_version: !ruby/object:Gem::Requirement
91
- none: false
92
87
  requirements:
93
- - - ! '>='
88
+ - - '>='
94
89
  - !ruby/object:Gem::Version
95
90
  version: '0'
96
91
  requirements: []
97
92
  rubyforge_project: awsraw
98
- rubygems_version: 1.8.23
93
+ rubygems_version: 2.0.3
99
94
  signing_key:
100
- specification_version: 3
95
+ specification_version: 4
101
96
  summary: Minimal AWS client
102
97
  test_files:
103
98
  - spec/s3/client_spec.rb
104
99
  - spec/s3/http_request_builder_spec.rb
105
100
  - spec/s3/md5_digester_spec.rb
106
101
  - spec/s3/query_string_signer_spec.rb
102
+ - spec/s3/request_spec.rb
107
103
  - spec/s3/signer_spec.rb
108
- has_rdoc: