aws-sdk 1.3.8 → 1.3.9
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.
- data/lib/aws.rb +2 -0
- data/lib/aws/api_config/AutoScaling-2011-01-01.yml +563 -0
- data/lib/aws/auto_scaling.rb +162 -0
- data/lib/aws/auto_scaling/activity.rb +102 -0
- data/lib/aws/auto_scaling/activity_collection.rb +82 -0
- data/lib/aws/auto_scaling/client.rb +50 -0
- data/lib/aws/auto_scaling/client/xml.rb +32 -0
- data/lib/aws/auto_scaling/config.rb +18 -0
- data/lib/aws/auto_scaling/errors.rb +26 -0
- data/lib/aws/auto_scaling/group.rb +420 -0
- data/lib/aws/auto_scaling/group_collection.rb +96 -0
- data/lib/aws/auto_scaling/group_options.rb +146 -0
- data/lib/aws/auto_scaling/instance.rb +192 -0
- data/lib/aws/auto_scaling/instance_collection.rb +63 -0
- data/lib/aws/auto_scaling/launch_configuration.rb +150 -0
- data/lib/aws/auto_scaling/launch_configuration_collection.rb +144 -0
- data/lib/aws/auto_scaling/notification_configuration.rb +89 -0
- data/lib/aws/auto_scaling/notification_configuration_collection.rb +184 -0
- data/lib/aws/auto_scaling/request.rb +24 -0
- data/lib/aws/auto_scaling/scaling_policy.rb +125 -0
- data/lib/aws/auto_scaling/scaling_policy_collection.rb +72 -0
- data/lib/aws/auto_scaling/scaling_policy_options.rb +61 -0
- data/lib/aws/auto_scaling/scheduled_action.rb +145 -0
- data/lib/aws/auto_scaling/scheduled_action_collection.rb +195 -0
- data/lib/aws/auto_scaling/tag.rb +59 -0
- data/lib/aws/auto_scaling/tag_collection.rb +112 -0
- data/lib/aws/core.rb +40 -8
- data/lib/aws/core/client.rb +28 -3
- data/lib/aws/core/configuration.rb +38 -31
- data/lib/aws/core/http/request.rb +3 -3
- data/lib/aws/core/http/response.rb +2 -1
- data/lib/aws/core/log_formatter.rb +454 -0
- data/lib/aws/core/resource.rb +2 -1
- data/lib/aws/core/response.rb +5 -0
- data/lib/aws/core/uri_escape.rb +1 -1
- data/lib/aws/core/xml_grammar.rb +21 -0
- data/lib/aws/dynamo_db/request.rb +1 -1
- data/lib/aws/ec2/network_acl_collection.rb +1 -2
- data/lib/aws/ec2/route_table_collection.rb +1 -2
- data/lib/aws/ec2/vpn_gateway_collection.rb +1 -1
- data/lib/aws/elb/load_balancer.rb +0 -2
- data/lib/aws/errors.rb +2 -2
- data/lib/aws/s3/object_version_collection.rb +1 -1
- data/lib/aws/s3/s3_object.rb +4 -4
- data/lib/aws/sqs/queue.rb +2 -2
- metadata +52 -27
- data/lib/aws/core/client_logging.rb +0 -133
data/lib/aws/core/resource.rb
CHANGED
@@ -24,6 +24,7 @@ module AWS
|
|
24
24
|
# @private
|
25
25
|
class NotFound < StandardError; end
|
26
26
|
|
27
|
+
# @private
|
27
28
|
def initialize *args
|
28
29
|
|
29
30
|
super
|
@@ -62,7 +63,7 @@ module AWS
|
|
62
63
|
# AWS resource.
|
63
64
|
def eql? other
|
64
65
|
other.kind_of?(self.class) and
|
65
|
-
|
66
|
+
other.resource_identifiers == resource_identifiers
|
66
67
|
end
|
67
68
|
alias_method :==, :eql?
|
68
69
|
|
data/lib/aws/core/response.rb
CHANGED
@@ -44,6 +44,10 @@ module AWS
|
|
44
44
|
# @return [Integer] Returns the number of times the request
|
45
45
|
# was retried.
|
46
46
|
attr_accessor :retry_count
|
47
|
+
|
48
|
+
# @return [Float] The total number of seconds taken to make the
|
49
|
+
# request and return the response.
|
50
|
+
attr_accessor :duration
|
47
51
|
|
48
52
|
# @param [Http::Request] http_request
|
49
53
|
# @param [Http::Response] http_request
|
@@ -52,6 +56,7 @@ module AWS
|
|
52
56
|
@http_response = http_response
|
53
57
|
@request_builder = block
|
54
58
|
@retry_count = 0
|
59
|
+
@duration = 0
|
55
60
|
rebuild_request if @request_builder && !http_request
|
56
61
|
end
|
57
62
|
|
data/lib/aws/core/uri_escape.rb
CHANGED
@@ -25,7 +25,7 @@ module AWS
|
|
25
25
|
protected
|
26
26
|
def escape value
|
27
27
|
value = value.encode("UTF-8") if value.respond_to?(:encode)
|
28
|
-
CGI::escape(value.to_s).gsub('+', '%20')
|
28
|
+
CGI::escape(value.to_s).gsub('+', '%20').gsub('%7E', '~')
|
29
29
|
end
|
30
30
|
|
31
31
|
# URI-escapes a path without escaping the separators
|
data/lib/aws/core/xml_grammar.rb
CHANGED
@@ -48,6 +48,26 @@ module AWS
|
|
48
48
|
def respond_to?(m)
|
49
49
|
@data.key?(m.to_sym) or super
|
50
50
|
end
|
51
|
+
|
52
|
+
def to_hash
|
53
|
+
@data.inject({}) do |hash,(key,value)|
|
54
|
+
|
55
|
+
# strip question marks from hash keys
|
56
|
+
if matches = key.to_s.match(/(.+)\?$/)
|
57
|
+
key = matches[1].to_sym
|
58
|
+
end
|
59
|
+
|
60
|
+
# recursively convert hashes
|
61
|
+
if value.is_a?(Array)
|
62
|
+
value = value.map{|v| v.is_a?(Context) ? v.to_hash : v }
|
63
|
+
elsif value.is_a?(Context)
|
64
|
+
value = value.to_hash
|
65
|
+
end
|
66
|
+
|
67
|
+
hash.merge(key => value)
|
68
|
+
|
69
|
+
end
|
70
|
+
end
|
51
71
|
|
52
72
|
def inspect
|
53
73
|
methods = @data.keys
|
@@ -517,6 +537,7 @@ module AWS
|
|
517
537
|
|
518
538
|
end
|
519
539
|
|
540
|
+
# @private
|
520
541
|
module NokogiriAdapter
|
521
542
|
|
522
543
|
def xmldecl(*args); end
|
@@ -24,8 +24,7 @@ module AWS
|
|
24
24
|
# @param [Hash] options
|
25
25
|
#
|
26
26
|
# @option options [VPC,String] :vpc The vpc or vpc id of where you want
|
27
|
-
# to create the subnet.
|
28
|
-
# does not have a populated vpc ({#vpc} returns nil).
|
27
|
+
# to create the subnet.
|
29
28
|
#
|
30
29
|
# @return [NetworkACL]
|
31
30
|
#
|
@@ -24,8 +24,7 @@ module AWS
|
|
24
24
|
# @param [Hash] options
|
25
25
|
#
|
26
26
|
# @option options [VPC,String] :vpc The vpc or vpc id of where you want
|
27
|
-
# to create the route table.
|
28
|
-
# collection does not have a populated vpc ({#vpc} returns nil).
|
27
|
+
# to create the route table.
|
29
28
|
#
|
30
29
|
# @return [RouteTable]
|
31
30
|
#
|
@@ -31,7 +31,7 @@ module AWS
|
|
31
31
|
# @option options [AvailabilityZone,String] :availability_zone
|
32
32
|
# The Availability Zone where you want the virtual private gateway.
|
33
33
|
# AWS can select a default zone for you. This can be an
|
34
|
-
# {
|
34
|
+
# {AvailabilityZone} object or availability zone name string.
|
35
35
|
#
|
36
36
|
# @return [VPNGateway]
|
37
37
|
#
|
data/lib/aws/errors.rb
CHANGED
data/lib/aws/s3/s3_object.rb
CHANGED
@@ -448,7 +448,7 @@ module AWS
|
|
448
448
|
# new object once this is done.
|
449
449
|
#
|
450
450
|
# bucket = s3.buckets['old-bucket']
|
451
|
-
# old_obj = bucket.
|
451
|
+
# old_obj = bucket.objects['old-key']
|
452
452
|
#
|
453
453
|
# # renaming an object returns a new object
|
454
454
|
# new_obj = old_obj.move_to('new-key')
|
@@ -465,7 +465,7 @@ module AWS
|
|
465
465
|
# obj = s3.buckets['old-bucket'].objects['old-key]
|
466
466
|
# obj.move_to('new-key', :bucket_name => 'new_bucket')
|
467
467
|
#
|
468
|
-
# If the copy
|
468
|
+
# If the copy succeeds, but the then the delete fails, an error
|
469
469
|
# will be raised.
|
470
470
|
#
|
471
471
|
# @param [String] target The key to move this object to.
|
@@ -474,7 +474,7 @@ module AWS
|
|
474
474
|
#
|
475
475
|
# @option (see #copy_to)
|
476
476
|
#
|
477
|
-
# @return [S3Object] Returns a new
|
477
|
+
# @return [S3Object] Returns a new object with the new key.
|
478
478
|
#
|
479
479
|
def move_to target, options = {}
|
480
480
|
copy = copy_to(target, options)
|
@@ -806,7 +806,7 @@ module AWS
|
|
806
806
|
# as a date using Time#parse), a Time, or a DateTime object.
|
807
807
|
# This option defaults to one hour after the current time.
|
808
808
|
#
|
809
|
-
# @option options [
|
809
|
+
# @option options [Boolean] :secure (true) Whether to generate a
|
810
810
|
# secure (HTTPS) URL or a plain HTTP url.
|
811
811
|
#
|
812
812
|
# @option options [String] :response_content_type Sets the
|
data/lib/aws/sqs/queue.rb
CHANGED
@@ -452,7 +452,7 @@ module AWS
|
|
452
452
|
# You can also set an optional delay for all of the messages:
|
453
453
|
#
|
454
454
|
# # delay all messages 1 hour
|
455
|
-
# queue.
|
455
|
+
# queue.batch_send(msg1, msg2, :delay_seconds => 3600)
|
456
456
|
#
|
457
457
|
# If you need to set a custom delay for each message you can pass
|
458
458
|
# hashes:
|
@@ -461,7 +461,7 @@ module AWS
|
|
461
461
|
# messages << { :message_body => 'msg1', :delay_seconds => 60 }
|
462
462
|
# messages << { :message_body => 'msg2', :delay_seconds => 30 }
|
463
463
|
#
|
464
|
-
# queue.
|
464
|
+
# queue.batch_send(messages)
|
465
465
|
#
|
466
466
|
# @param [String,Hash] messages A list of messages. Each message
|
467
467
|
# should be a string, or a hash with a +:message_body+,
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 9
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 3
|
9
|
-
-
|
10
|
-
version: 1.3.
|
9
|
+
- 9
|
10
|
+
version: 1.3.9
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Amazon Web Services
|
@@ -15,12 +15,10 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-03-
|
18
|
+
date: 2012-03-30 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
|
-
|
22
|
-
type: :runtime
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
21
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
24
22
|
none: false
|
25
23
|
requirements:
|
26
24
|
- - ~>
|
@@ -31,11 +29,11 @@ dependencies:
|
|
31
29
|
- 1
|
32
30
|
version: "2.1"
|
33
31
|
name: uuidtools
|
34
|
-
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
prerelease: false
|
37
32
|
type: :runtime
|
38
|
-
|
33
|
+
prerelease: false
|
34
|
+
requirement: *id001
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
39
37
|
none: false
|
40
38
|
requirements:
|
41
39
|
- - ~>
|
@@ -46,27 +44,27 @@ dependencies:
|
|
46
44
|
- 7
|
47
45
|
version: "0.7"
|
48
46
|
name: httparty
|
49
|
-
version_requirements: *id002
|
50
|
-
- !ruby/object:Gem::Dependency
|
51
|
-
prerelease: false
|
52
47
|
type: :runtime
|
53
|
-
|
48
|
+
prerelease: false
|
49
|
+
requirement: *id002
|
50
|
+
- !ruby/object:Gem::Dependency
|
51
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
54
52
|
none: false
|
55
53
|
requirements:
|
56
|
-
- -
|
54
|
+
- - ">="
|
57
55
|
- !ruby/object:Gem::Version
|
58
|
-
hash:
|
56
|
+
hash: 15
|
59
57
|
segments:
|
60
58
|
- 1
|
61
|
-
-
|
62
|
-
-
|
63
|
-
version: 1.
|
59
|
+
- 4
|
60
|
+
- 4
|
61
|
+
version: 1.4.4
|
64
62
|
name: nokogiri
|
65
|
-
version_requirements: *id003
|
66
|
-
- !ruby/object:Gem::Dependency
|
67
|
-
prerelease: false
|
68
63
|
type: :runtime
|
69
|
-
|
64
|
+
prerelease: false
|
65
|
+
requirement: *id003
|
66
|
+
- !ruby/object:Gem::Dependency
|
67
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
70
68
|
none: false
|
71
69
|
requirements:
|
72
70
|
- - ~>
|
@@ -77,7 +75,9 @@ dependencies:
|
|
77
75
|
- 4
|
78
76
|
version: "1.4"
|
79
77
|
name: json
|
80
|
-
|
78
|
+
type: :runtime
|
79
|
+
prerelease: false
|
80
|
+
requirement: *id004
|
81
81
|
description: AWS SDK for Ruby
|
82
82
|
email:
|
83
83
|
executables: []
|
@@ -89,6 +89,30 @@ extra_rdoc_files: []
|
|
89
89
|
files:
|
90
90
|
- ca-bundle.crt
|
91
91
|
- rails/init.rb
|
92
|
+
- lib/aws/auto_scaling/activity.rb
|
93
|
+
- lib/aws/auto_scaling/activity_collection.rb
|
94
|
+
- lib/aws/auto_scaling/client/xml.rb
|
95
|
+
- lib/aws/auto_scaling/client.rb
|
96
|
+
- lib/aws/auto_scaling/config.rb
|
97
|
+
- lib/aws/auto_scaling/errors.rb
|
98
|
+
- lib/aws/auto_scaling/group.rb
|
99
|
+
- lib/aws/auto_scaling/group_collection.rb
|
100
|
+
- lib/aws/auto_scaling/group_options.rb
|
101
|
+
- lib/aws/auto_scaling/instance.rb
|
102
|
+
- lib/aws/auto_scaling/instance_collection.rb
|
103
|
+
- lib/aws/auto_scaling/launch_configuration.rb
|
104
|
+
- lib/aws/auto_scaling/launch_configuration_collection.rb
|
105
|
+
- lib/aws/auto_scaling/notification_configuration.rb
|
106
|
+
- lib/aws/auto_scaling/notification_configuration_collection.rb
|
107
|
+
- lib/aws/auto_scaling/request.rb
|
108
|
+
- lib/aws/auto_scaling/scaling_policy.rb
|
109
|
+
- lib/aws/auto_scaling/scaling_policy_collection.rb
|
110
|
+
- lib/aws/auto_scaling/scaling_policy_options.rb
|
111
|
+
- lib/aws/auto_scaling/scheduled_action.rb
|
112
|
+
- lib/aws/auto_scaling/scheduled_action_collection.rb
|
113
|
+
- lib/aws/auto_scaling/tag.rb
|
114
|
+
- lib/aws/auto_scaling/tag_collection.rb
|
115
|
+
- lib/aws/auto_scaling.rb
|
92
116
|
- lib/aws/core/api_config.rb
|
93
117
|
- lib/aws/core/async_handle.rb
|
94
118
|
- lib/aws/core/authorize_v2.rb
|
@@ -98,7 +122,6 @@ files:
|
|
98
122
|
- lib/aws/core/autoloader.rb
|
99
123
|
- lib/aws/core/cacheable.rb
|
100
124
|
- lib/aws/core/client.rb
|
101
|
-
- lib/aws/core/client_logging.rb
|
102
125
|
- lib/aws/core/collection/limitable.rb
|
103
126
|
- lib/aws/core/collection/simple.rb
|
104
127
|
- lib/aws/core/collection.rb
|
@@ -120,6 +143,7 @@ files:
|
|
120
143
|
- lib/aws/core/inflection.rb
|
121
144
|
- lib/aws/core/json_client.rb
|
122
145
|
- lib/aws/core/lazy_error_classes.rb
|
146
|
+
- lib/aws/core/log_formatter.rb
|
123
147
|
- lib/aws/core/meta_utils.rb
|
124
148
|
- lib/aws/core/model.rb
|
125
149
|
- lib/aws/core/naming.rb
|
@@ -428,6 +452,7 @@ files:
|
|
428
452
|
- lib/net/http/connection_pool/connection.rb
|
429
453
|
- lib/net/http/connection_pool/session.rb
|
430
454
|
- lib/net/http/connection_pool.rb
|
455
|
+
- lib/aws/api_config/AutoScaling-2011-01-01.yml
|
431
456
|
- lib/aws/api_config/DynamoDB-2011-12-05.yml
|
432
457
|
- lib/aws/api_config/EC2-2011-12-15.yml
|
433
458
|
- lib/aws/api_config/ELB-2011-08-15.yml
|
@@ -472,7 +497,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
472
497
|
requirements: []
|
473
498
|
|
474
499
|
rubyforge_project:
|
475
|
-
rubygems_version: 1.8.
|
500
|
+
rubygems_version: 1.8.21
|
476
501
|
signing_key:
|
477
502
|
specification_version: 3
|
478
503
|
summary: AWS SDK for Ruby
|
@@ -1,133 +0,0 @@
|
|
1
|
-
# Copyright 2011-2012 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License"). You
|
4
|
-
# may not use this file except in compliance with the License. A copy of
|
5
|
-
# the License is located at
|
6
|
-
#
|
7
|
-
# http://aws.amazon.com/apache2.0/
|
8
|
-
#
|
9
|
-
# or in the "license" file accompanying this file. This file is
|
10
|
-
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
|
11
|
-
# ANY KIND, either express or implied. See the License for the specific
|
12
|
-
# language governing permissions and limitations under the License.
|
13
|
-
|
14
|
-
require 'benchmark'
|
15
|
-
|
16
|
-
module AWS
|
17
|
-
module Core
|
18
|
-
|
19
|
-
# @private
|
20
|
-
module ClientLogging
|
21
|
-
|
22
|
-
def log_client_request(name, options)
|
23
|
-
response = nil
|
24
|
-
time = Benchmark.measure do
|
25
|
-
response = yield
|
26
|
-
end
|
27
|
-
|
28
|
-
if config.logger
|
29
|
-
if options[:async]
|
30
|
-
response.on_complete do
|
31
|
-
log_client_request_on_success(name, options, response, time)
|
32
|
-
end
|
33
|
-
else
|
34
|
-
log_client_request_on_success(name, options, response, time)
|
35
|
-
end
|
36
|
-
end
|
37
|
-
response
|
38
|
-
end
|
39
|
-
|
40
|
-
# Summarizes long strings and adds file size information
|
41
|
-
# @private
|
42
|
-
def sanitize_options(options)
|
43
|
-
sanitize_hash(options)
|
44
|
-
end
|
45
|
-
|
46
|
-
protected
|
47
|
-
def log severity, message
|
48
|
-
config.logger.send(severity, message + "\n") if config.logger
|
49
|
-
end
|
50
|
-
|
51
|
-
protected
|
52
|
-
def log_client_request_on_success(method_name, options, response, time)
|
53
|
-
status = response.http_response.status
|
54
|
-
service = self.class.service_name
|
55
|
-
|
56
|
-
pattern = "[AWS %s %s %.06f %d retries] %s(%s)"
|
57
|
-
parts = [
|
58
|
-
service,
|
59
|
-
status,
|
60
|
-
time.real,
|
61
|
-
response.retry_count,
|
62
|
-
method_name,
|
63
|
-
sanitize_options(options)]
|
64
|
-
|
65
|
-
severity = :info
|
66
|
-
|
67
|
-
if response.error
|
68
|
-
pattern += " %s: %s"
|
69
|
-
parts << response.error.class
|
70
|
-
parts << response.error.message
|
71
|
-
severity = :error
|
72
|
-
end
|
73
|
-
|
74
|
-
if response.cached
|
75
|
-
pattern << " [CACHED]"
|
76
|
-
end
|
77
|
-
|
78
|
-
log(severity, pattern % parts)
|
79
|
-
end
|
80
|
-
|
81
|
-
protected
|
82
|
-
def sanitize_value(value)
|
83
|
-
case value
|
84
|
-
when Hash
|
85
|
-
'{' + sanitize_hash(value) + '}'
|
86
|
-
when Array
|
87
|
-
sanitize_array(value)
|
88
|
-
when File
|
89
|
-
sanitize_file(value)
|
90
|
-
when String
|
91
|
-
sanitize_string(value)
|
92
|
-
else
|
93
|
-
value.inspect
|
94
|
-
end
|
95
|
-
end
|
96
|
-
|
97
|
-
protected
|
98
|
-
def sanitize_string str
|
99
|
-
inspected = str.inspect
|
100
|
-
if inspected.size > config.logger_truncate_strings_at
|
101
|
-
summarize_string(str)
|
102
|
-
else
|
103
|
-
inspected
|
104
|
-
end
|
105
|
-
end
|
106
|
-
|
107
|
-
protected
|
108
|
-
def summarize_string str
|
109
|
-
# skip the openning "
|
110
|
-
string_start = str.inspect[1,config.logger_truncate_strings_at]
|
111
|
-
"#<String \"#{string_start}\" ... (#{str.size} characters)>"
|
112
|
-
end
|
113
|
-
|
114
|
-
protected
|
115
|
-
def sanitize_file file
|
116
|
-
"#<File:#{file.path} (#{File.size(file.path)} bytes)>"
|
117
|
-
end
|
118
|
-
|
119
|
-
protected
|
120
|
-
def sanitize_array array
|
121
|
-
"[" + array.map { |v| sanitize_value(v) }.join(",") + "]"
|
122
|
-
end
|
123
|
-
|
124
|
-
protected
|
125
|
-
def sanitize_hash hash
|
126
|
-
hash.map do |k,v|
|
127
|
-
"#{sanitize_value(k)}=>#{sanitize_value(v)}"
|
128
|
-
end.sort.join(",")
|
129
|
-
end
|
130
|
-
|
131
|
-
end
|
132
|
-
end
|
133
|
-
end
|