aws-sdk-core 2.1.0 → 2.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/apis/ecs/2014-11-13/api-2.json +20 -2
  3. data/apis/iam/2010-05-08/paginators-1.json +32 -0
  4. data/apis/iam/2010-05-08/resources-1.json +8 -0
  5. data/apis/iam/2010-05-08/waiters-2.json +22 -0
  6. data/bin/aws.rb +6 -0
  7. data/lib/aws-sdk-core.rb +15 -7
  8. data/lib/aws-sdk-core/api/docs/builder.rb +3 -3
  9. data/lib/aws-sdk-core/credential_provider.rb +5 -7
  10. data/lib/aws-sdk-core/dynamodb/attribute_value.rb +2 -2
  11. data/lib/aws-sdk-core/eager_loader.rb +5 -6
  12. data/lib/aws-sdk-core/iam.rb +1 -0
  13. data/lib/aws-sdk-core/instance_profile_credentials.rb +1 -1
  14. data/lib/aws-sdk-core/json/handler.rb +4 -4
  15. data/lib/aws-sdk-core/pageable_response.rb +44 -34
  16. data/lib/aws-sdk-core/pager.rb +2 -3
  17. data/lib/aws-sdk-core/plugins/ec2_copy_encrypted_snapshot.rb +2 -1
  18. data/lib/aws-sdk-core/plugins/response_paging.rb +1 -0
  19. data/lib/aws-sdk-core/shared_credentials.rb +2 -2
  20. data/lib/aws-sdk-core/signers/s3.rb +31 -3
  21. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +3 -5
  22. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +0 -1
  23. data/lib/aws-sdk-core/version.rb +1 -1
  24. data/lib/aws-sdk-core/xml/parser.rb +4 -1
  25. data/lib/aws-sdk-core/xml/parser/engines/oga.rb +39 -0
  26. data/lib/seahorse/client/http/request.rb +1 -1
  27. data/lib/seahorse/client/http/response.rb +5 -3
  28. metadata +5 -13
  29. data/apis/config/2014-10-17/api-2.json +0 -694
  30. data/apis/config/2014-10-17/paginators-1.json +0 -10
  31. data/apis/ec2/2014-10-01/api-2.json +0 -10267
  32. data/apis/ec2/2014-10-01/paginators-1.json +0 -125
  33. data/apis/ec2/2014-10-01/resources-1.json +0 -2289
  34. data/apis/ec2/2014-10-01/waiters-2.json +0 -453
  35. data/apis/ec2/2015-03-01/api-2.json +0 -11245
  36. data/apis/ec2/2015-03-01/paginators-1.json +0 -125
  37. data/apis/ec2/2015-03-01/resources-1.json +0 -2479
  38. data/apis/ec2/2015-03-01/waiters-2.json +0 -458
@@ -3,9 +3,8 @@ module Aws
3
3
  class Pager
4
4
 
5
5
  def initialize(rules)
6
- if rules['more_results']
7
- @more_results = underscore(rules['more_results'])
8
- end
6
+ @more_results = rules['more_results']
7
+ @more_results = underscore(@more_results) if @more_results
9
8
  if rules['limit_key']
10
9
  @limit_key = underscore(rules['limit_key']).to_sym
11
10
  end
@@ -64,6 +64,7 @@ module Aws
64
64
  context.http_request.http_method = 'GET'
65
65
  context.http_request.endpoint = new_endpoint(context)
66
66
  context.http_request.body = ''
67
+ context.http_request.headers.delete('Content-Type')
67
68
  end
68
69
 
69
70
  def new_endpoint(context)
@@ -74,7 +75,7 @@ module Aws
74
75
  end
75
76
 
76
77
  def presigned_url(http_request, config)
77
- signer = Signers::V4.new('ec2', config.credentials, config.region)
78
+ signer = Signers::V4.new(config.credentials, 'ec2', config.region)
78
79
  signer.presigned_url(http_request, expires_in: 3600)
79
80
  end
80
81
 
@@ -22,6 +22,7 @@ module Aws
22
22
  class Handler < Seahorse::Client::Handler
23
23
 
24
24
  def call(context)
25
+ context[:original_params] = context.params
25
26
  resp = @handler.call(context)
26
27
  resp.extend(PageableResponse)
27
28
  resp.pager = context.operation[:pager]
@@ -53,7 +53,7 @@ module Aws
53
53
  # @note This method does not indicate if the file found at {#path}
54
54
  # will be parsable, only if it can be read.
55
55
  def loadable?
56
- !path.nil? && File.exists?(path) && File.readable?(path)
56
+ !path.nil? && File.exist?(path) && File.readable?(path)
57
57
  end
58
58
 
59
59
  private
@@ -92,7 +92,7 @@ module Aws
92
92
  map = {}
93
93
  file.lines.each do |line|
94
94
  line = line.split(/^|\s;/).first # remove comments
95
- section = line.match(/^\s*\[([^\[\]]+)\]\s*$/) unless line.nil?
95
+ section = line.match(/^\s*\[([^\[\]]+)\]\s*(#.+)?$/) unless line.nil?
96
96
  if section
97
97
  current_section = section[1]
98
98
  elsif current_section
@@ -1,7 +1,7 @@
1
1
  require 'set'
2
2
  require 'time'
3
3
  require 'openssl'
4
- require 'uri'
4
+ require 'webrick/httputils'
5
5
 
6
6
  module Aws
7
7
  module Signers
@@ -53,7 +53,7 @@ module Aws
53
53
  def signature(request)
54
54
  string_to_sign = string_to_sign(request)
55
55
  signature = digest(credentials.secret_access_key, string_to_sign)
56
- URI.escape(signature)
56
+ uri_escape(signature)
57
57
  end
58
58
 
59
59
  def digest(secret, string_to_sign)
@@ -150,7 +150,35 @@ module Aws
150
150
  def signed_querystring_params(endpoint)
151
151
  endpoint.query.to_s.split('&').select do |p|
152
152
  SIGNED_QUERYSTRING_PARAMS.include?(p.split('=')[0])
153
- end.map { |p| URI.decode(p) }
153
+ end.map { |p| CGI.unescape(p) }
154
+ end
155
+
156
+ def uri_escape(s)
157
+
158
+ #URI.escape(s)
159
+
160
+ # URI.escape is deprecated, replacing it with escape from webrick
161
+ # to squelch the massive number of warnings generated from Ruby.
162
+ # The following script was used to determine the differences
163
+ # between the various escape methods available. The webrick
164
+ # escape only had two differences and it is available in the
165
+ # standard lib.
166
+ #
167
+ # (0..255).each {|c|
168
+ # s = [c].pack("C")
169
+ # e = [
170
+ # CGI.escape(s),
171
+ # ERB::Util.url_encode(s),
172
+ # URI.encode_www_form_component(s),
173
+ # WEBrick::HTTPUtils.escape_form(s),
174
+ # WEBrick::HTTPUtils.escape(s),
175
+ # URI.escape(s),
176
+ # ]
177
+ # next if e.uniq.length == 1
178
+ # puts("%5s %5s %5s %5s %5s %5s %5s" % ([s.inspect] + e))
179
+ # }
180
+ #
181
+ WEBrick::HTTPUtils.escape(s).gsub('%5B', '[').gsub('%5D', ']')
154
182
  end
155
183
 
156
184
  end
@@ -31,11 +31,9 @@ module Aws
31
31
 
32
32
  def build_body(api, operation, data)
33
33
  xml = []
34
- if rules = operation.output
35
- Xml::Builder.new(operation.output, target:xml).to_xml(data)
36
- xml.shift
37
- xml.pop
38
- end
34
+ Xml::Builder.new(operation.output, target:xml).to_xml(data)
35
+ xml.shift
36
+ xml.pop
39
37
  xmlns = "http://ec2.amazonaws.com/doc/#{api.version}/".inspect
40
38
  xml.unshift(" <requestId>stubbed-request-id</requestId>")
41
39
  xml.unshift("<#{operation.name}Response xmlns=#{xmlns}>\n")
@@ -7,7 +7,6 @@ module Aws
7
7
 
8
8
  def body_for(api, operation, rules, data)
9
9
  xml = []
10
- builder = Aws::Xml::DocBuilder.new(target: xml, indent: ' ')
11
10
  rules.location_name = operation.name + 'Result'
12
11
  rules['xmlNamespace'] = { 'uri' => api.metadata['xmlNamespace'] }
13
12
  Xml::Builder.new(rules, target:xml).to_xml(data)
@@ -1,3 +1,3 @@
1
1
  module Aws
2
- VERSION = '2.1.0'
2
+ VERSION = '2.1.1'
3
3
  end
@@ -10,6 +10,7 @@ module Aws
10
10
 
11
11
  autoload :LibxmlEngine, 'aws-sdk-core/xml/parser/engines/libxml'
12
12
  autoload :NokogiriEngine, 'aws-sdk-core/xml/parser/engines/nokogiri'
13
+ autoload :OgaEngine, 'aws-sdk-core/xml/parser/engines/oga'
13
14
  autoload :OxEngine, 'aws-sdk-core/xml/parser/engines/ox'
14
15
  autoload :RexmlEngine, 'aws-sdk-core/xml/parser/engines/rexml'
15
16
 
@@ -35,6 +36,7 @@ module Aws
35
36
  # Must be one of the following values:
36
37
  #
37
38
  # * :ox
39
+ # * :oga
38
40
  # * :libxml
39
41
  # * :nokogiri
40
42
  # * :rexml
@@ -47,6 +49,7 @@ module Aws
47
49
  # One of:
48
50
  #
49
51
  # * {OxEngine}
52
+ # * {OgaEngine}
50
53
  # * {LibxmlEngine}
51
54
  # * {NokogiriEngine}
52
55
  # * {RexmlEngine}
@@ -71,7 +74,7 @@ module Aws
71
74
 
72
75
  end
73
76
 
74
- self.engine = [:ox, :libxml, :nokogiri, :rexml].find do |name|
77
+ self.engine = [:ox, :oga, :libxml, :nokogiri, :rexml].find do |name|
75
78
  try_load_engine(name)
76
79
  end
77
80
 
@@ -0,0 +1,39 @@
1
+ require 'oga'
2
+
3
+ module Aws
4
+ module Xml
5
+ class Parser
6
+ class OgaEngine
7
+
8
+ def initialize(stack)
9
+ @stack = stack
10
+ @depth = 0
11
+ end
12
+
13
+ def parse(xml)
14
+ Oga.sax_parse_xml(self, xml, strict:true)
15
+ rescue LL::ParserError => error
16
+ raise ParsingError.new(error.message, nil, nil)
17
+ end
18
+
19
+ def on_element(namespace, name, attrs = {})
20
+ @depth += 1
21
+ @stack.start_element(name)
22
+ attrs.each do |attr|
23
+ @stack.attr(*attr)
24
+ end
25
+ end
26
+
27
+ def on_text(value)
28
+ @stack.text(value) if @depth > 0
29
+ end
30
+
31
+ def after_element(_, _)
32
+ @stack.end_element
33
+ @depth -= 1
34
+ end
35
+
36
+ end
37
+ end
38
+ end
39
+ end
@@ -11,7 +11,7 @@ module Seahorse
11
11
  # @option options [Headers] :headers (Headers.new)
12
12
  # @option options [Body] :body (StringIO.new)
13
13
  def initialize(options = {})
14
- self.endpoint = options[:endpoint] if options[:endpoint]
14
+ self.endpoint = options[:endpoint]
15
15
  self.http_method = options[:http_method] || 'GET'
16
16
  self.headers = Headers.new(options[:headers] || {})
17
17
  self.body = options[:body]
@@ -23,12 +23,14 @@ module Seahorse
23
23
  # @return [Headers]
24
24
  attr_accessor :headers
25
25
 
26
- # @return [IO]
27
- attr_accessor :body
28
-
29
26
  # @return [StandardError, nil]
30
27
  attr_reader :error
31
28
 
29
+ # @return [IO]
30
+ def body
31
+ @body
32
+ end
33
+
32
34
  # @param [#read, #size, #rewind] io
33
35
  def body=(io)
34
36
  @body = case io
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-12 00:00:00.000000000 Z
11
+ date: 2015-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jmespath
@@ -52,8 +52,6 @@ files:
52
52
  - apis/codedeploy/2014-10-06/paginators-1.json
53
53
  - apis/cognito-identity/2014-06-30/api-2.json
54
54
  - apis/cognito-sync/2014-06-30/api-2.json
55
- - apis/config/2014-10-17/api-2.json
56
- - apis/config/2014-10-17/paginators-1.json
57
55
  - apis/config/2014-11-12/api-2.json
58
56
  - apis/config/2014-11-12/paginators-1.json
59
57
  - apis/datapipeline/2012-10-29/api-2.json
@@ -65,14 +63,6 @@ files:
65
63
  - apis/dynamodb/2012-08-10/paginators-1.json
66
64
  - apis/dynamodb/2012-08-10/resources-1.json
67
65
  - apis/dynamodb/2012-08-10/waiters-2.json
68
- - apis/ec2/2014-10-01/api-2.json
69
- - apis/ec2/2014-10-01/paginators-1.json
70
- - apis/ec2/2014-10-01/resources-1.json
71
- - apis/ec2/2014-10-01/waiters-2.json
72
- - apis/ec2/2015-03-01/api-2.json
73
- - apis/ec2/2015-03-01/paginators-1.json
74
- - apis/ec2/2015-03-01/resources-1.json
75
- - apis/ec2/2015-03-01/waiters-2.json
76
66
  - apis/ec2/2015-04-15/api-2.json
77
67
  - apis/ec2/2015-04-15/paginators-1.json
78
68
  - apis/ec2/2015-04-15/resources-1.json
@@ -105,6 +95,7 @@ files:
105
95
  - apis/iam/2010-05-08/api-2.json
106
96
  - apis/iam/2010-05-08/paginators-1.json
107
97
  - apis/iam/2010-05-08/resources-1.json
98
+ - apis/iam/2010-05-08/waiters-2.json
108
99
  - apis/importexport/2010-06-01/api-2.json
109
100
  - apis/importexport/2010-06-01/paginators-1.json
110
101
  - apis/kinesis/2013-12-02/api-2.json
@@ -332,6 +323,7 @@ files:
332
323
  - lib/aws-sdk-core/xml/parser.rb
333
324
  - lib/aws-sdk-core/xml/parser/engines/libxml.rb
334
325
  - lib/aws-sdk-core/xml/parser/engines/nokogiri.rb
326
+ - lib/aws-sdk-core/xml/parser/engines/oga.rb
335
327
  - lib/aws-sdk-core/xml/parser/engines/ox.rb
336
328
  - lib/aws-sdk-core/xml/parser/engines/rexml.rb
337
329
  - lib/aws-sdk-core/xml/parser/frame.rb
@@ -394,7 +386,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
394
386
  version: '0'
395
387
  requirements: []
396
388
  rubyforge_project:
397
- rubygems_version: 2.4.6
389
+ rubygems_version: 2.4.5
398
390
  signing_key:
399
391
  specification_version: 4
400
392
  summary: AWS SDK for Ruby - Core
@@ -1,694 +0,0 @@
1
- {
2
- "metadata":{
3
- "apiVersion":"2014-10-17",
4
- "endpointPrefix":"config",
5
- "jsonVersion":"1.1",
6
- "serviceAbbreviation":"Config Service",
7
- "serviceFullName":"AWS Config",
8
- "signatureVersion":"v4",
9
- "targetPrefix":"StarlingDoveService",
10
- "protocol":"json"
11
- },
12
- "operations":{
13
- "DeleteDeliveryChannel":{
14
- "name":"DeleteDeliveryChannel",
15
- "http":{
16
- "method":"POST",
17
- "requestUri":"/"
18
- },
19
- "input":{"shape":"DeleteDeliveryChannelRequest"},
20
- "errors":[
21
- {
22
- "shape":"NoSuchDeliveryChannelException",
23
- "exception":true
24
- },
25
- {
26
- "shape":"LastDeliveryChannelDeleteFailedException",
27
- "exception":true
28
- }
29
- ]
30
- },
31
- "DeliverConfigSnapshot":{
32
- "name":"DeliverConfigSnapshot",
33
- "http":{
34
- "method":"POST",
35
- "requestUri":"/"
36
- },
37
- "input":{"shape":"DeliverConfigSnapshotRequest"},
38
- "output":{"shape":"DeliverConfigSnapshotResponse"},
39
- "errors":[
40
- {
41
- "shape":"NoSuchDeliveryChannelException",
42
- "exception":true
43
- },
44
- {
45
- "shape":"NoAvailableConfigurationRecorderException",
46
- "exception":true
47
- },
48
- {
49
- "shape":"NoRunningConfigurationRecorderException",
50
- "exception":true
51
- }
52
- ]
53
- },
54
- "DescribeConfigurationRecorderStatus":{
55
- "name":"DescribeConfigurationRecorderStatus",
56
- "http":{
57
- "method":"POST",
58
- "requestUri":"/"
59
- },
60
- "input":{"shape":"DescribeConfigurationRecorderStatusRequest"},
61
- "output":{"shape":"DescribeConfigurationRecorderStatusResponse"},
62
- "errors":[
63
- {
64
- "shape":"NoSuchConfigurationRecorderException",
65
- "exception":true
66
- }
67
- ]
68
- },
69
- "DescribeConfigurationRecorders":{
70
- "name":"DescribeConfigurationRecorders",
71
- "http":{
72
- "method":"POST",
73
- "requestUri":"/"
74
- },
75
- "input":{"shape":"DescribeConfigurationRecordersRequest"},
76
- "output":{"shape":"DescribeConfigurationRecordersResponse"},
77
- "errors":[
78
- {
79
- "shape":"NoSuchConfigurationRecorderException",
80
- "exception":true
81
- }
82
- ]
83
- },
84
- "DescribeDeliveryChannelStatus":{
85
- "name":"DescribeDeliveryChannelStatus",
86
- "http":{
87
- "method":"POST",
88
- "requestUri":"/"
89
- },
90
- "input":{"shape":"DescribeDeliveryChannelStatusRequest"},
91
- "output":{"shape":"DescribeDeliveryChannelStatusResponse"},
92
- "errors":[
93
- {
94
- "shape":"NoSuchDeliveryChannelException",
95
- "exception":true
96
- }
97
- ]
98
- },
99
- "DescribeDeliveryChannels":{
100
- "name":"DescribeDeliveryChannels",
101
- "http":{
102
- "method":"POST",
103
- "requestUri":"/"
104
- },
105
- "input":{"shape":"DescribeDeliveryChannelsRequest"},
106
- "output":{"shape":"DescribeDeliveryChannelsResponse"},
107
- "errors":[
108
- {
109
- "shape":"NoSuchDeliveryChannelException",
110
- "exception":true
111
- }
112
- ]
113
- },
114
- "GetResourceConfigHistory":{
115
- "name":"GetResourceConfigHistory",
116
- "http":{
117
- "method":"POST",
118
- "requestUri":"/"
119
- },
120
- "input":{"shape":"GetResourceConfigHistoryRequest"},
121
- "output":{"shape":"GetResourceConfigHistoryResponse"},
122
- "errors":[
123
- {
124
- "shape":"ValidationException",
125
- "exception":true
126
- },
127
- {
128
- "shape":"InvalidTimeRangeException",
129
- "exception":true
130
- },
131
- {
132
- "shape":"InvalidLimitException",
133
- "exception":true
134
- },
135
- {
136
- "shape":"InvalidNextTokenException",
137
- "exception":true
138
- },
139
- {
140
- "shape":"NoAvailableConfigurationRecorderException",
141
- "exception":true
142
- },
143
- {
144
- "shape":"ResourceNotDiscoveredException",
145
- "exception":true
146
- }
147
- ]
148
- },
149
- "PutConfigurationRecorder":{
150
- "name":"PutConfigurationRecorder",
151
- "http":{
152
- "method":"POST",
153
- "requestUri":"/"
154
- },
155
- "input":{"shape":"PutConfigurationRecorderRequest"},
156
- "errors":[
157
- {
158
- "shape":"MaxNumberOfConfigurationRecordersExceededException",
159
- "exception":true
160
- },
161
- {
162
- "shape":"InvalidConfigurationRecorderNameException",
163
- "exception":true
164
- },
165
- {
166
- "shape":"InvalidRoleException",
167
- "exception":true
168
- }
169
- ]
170
- },
171
- "PutDeliveryChannel":{
172
- "name":"PutDeliveryChannel",
173
- "http":{
174
- "method":"POST",
175
- "requestUri":"/"
176
- },
177
- "input":{"shape":"PutDeliveryChannelRequest"},
178
- "errors":[
179
- {
180
- "shape":"MaxNumberOfDeliveryChannelsExceededException",
181
- "exception":true
182
- },
183
- {
184
- "shape":"NoAvailableConfigurationRecorderException",
185
- "exception":true
186
- },
187
- {
188
- "shape":"InvalidDeliveryChannelNameException",
189
- "exception":true
190
- },
191
- {
192
- "shape":"NoSuchBucketException",
193
- "exception":true
194
- },
195
- {
196
- "shape":"InvalidS3KeyPrefixException",
197
- "exception":true
198
- },
199
- {
200
- "shape":"InvalidSNSTopicARNException",
201
- "exception":true
202
- },
203
- {
204
- "shape":"InsufficientDeliveryPolicyException",
205
- "exception":true
206
- }
207
- ]
208
- },
209
- "StartConfigurationRecorder":{
210
- "name":"StartConfigurationRecorder",
211
- "http":{
212
- "method":"POST",
213
- "requestUri":"/"
214
- },
215
- "input":{"shape":"StartConfigurationRecorderRequest"},
216
- "errors":[
217
- {
218
- "shape":"NoSuchConfigurationRecorderException",
219
- "exception":true
220
- },
221
- {
222
- "shape":"NoAvailableDeliveryChannelException",
223
- "exception":true
224
- }
225
- ]
226
- },
227
- "StopConfigurationRecorder":{
228
- "name":"StopConfigurationRecorder",
229
- "http":{
230
- "method":"POST",
231
- "requestUri":"/"
232
- },
233
- "input":{"shape":"StopConfigurationRecorderRequest"},
234
- "errors":[
235
- {
236
- "shape":"NoSuchConfigurationRecorderException",
237
- "exception":true
238
- }
239
- ]
240
- }
241
- },
242
- "shapes":{
243
- "ARN":{"type":"string"},
244
- "AccountId":{"type":"string"},
245
- "AvailabilityZone":{"type":"string"},
246
- "Boolean":{"type":"boolean"},
247
- "ChannelName":{
248
- "type":"string",
249
- "min":1,
250
- "max":256
251
- },
252
- "ChronologicalOrder":{
253
- "type":"string",
254
- "enum":[
255
- "Reverse",
256
- "Forward"
257
- ]
258
- },
259
- "ConfigExportDeliveryInfo":{
260
- "type":"structure",
261
- "members":{
262
- "lastStatus":{"shape":"DeliveryStatus"},
263
- "lastErrorCode":{"shape":"String"},
264
- "lastErrorMessage":{"shape":"String"},
265
- "lastAttemptTime":{"shape":"Date"},
266
- "lastSuccessfulTime":{"shape":"Date"}
267
- }
268
- },
269
- "ConfigStreamDeliveryInfo":{
270
- "type":"structure",
271
- "members":{
272
- "lastStatus":{"shape":"DeliveryStatus"},
273
- "lastErrorCode":{"shape":"String"},
274
- "lastErrorMessage":{"shape":"String"},
275
- "lastStatusChangeTime":{"shape":"Date"}
276
- }
277
- },
278
- "Configuration":{"type":"string"},
279
- "ConfigurationItem":{
280
- "type":"structure",
281
- "members":{
282
- "version":{"shape":"Version"},
283
- "accountId":{"shape":"AccountId"},
284
- "configurationItemCaptureTime":{"shape":"ConfigurationItemCaptureTime"},
285
- "configurationItemStatus":{"shape":"ConfigurationItemStatus"},
286
- "configurationStateId":{"shape":"ConfigurationStateId"},
287
- "configurationItemMD5Hash":{"shape":"ConfigurationItemMD5Hash"},
288
- "arn":{"shape":"ARN"},
289
- "resourceType":{"shape":"ResourceType"},
290
- "resourceId":{"shape":"ResourceId"},
291
- "availabilityZone":{"shape":"AvailabilityZone"},
292
- "resourceCreationTime":{"shape":"ResourceCreationTime"},
293
- "tags":{"shape":"Tags"},
294
- "relatedEvents":{"shape":"RelatedEventList"},
295
- "relationships":{"shape":"RelationshipList"},
296
- "configuration":{"shape":"Configuration"}
297
- }
298
- },
299
- "ConfigurationItemCaptureTime":{"type":"timestamp"},
300
- "ConfigurationItemList":{
301
- "type":"list",
302
- "member":{"shape":"ConfigurationItem"}
303
- },
304
- "ConfigurationItemMD5Hash":{"type":"string"},
305
- "ConfigurationItemStatus":{
306
- "type":"string",
307
- "enum":[
308
- "Ok",
309
- "Failed",
310
- "Discovered",
311
- "Deleted"
312
- ]
313
- },
314
- "ConfigurationRecorder":{
315
- "type":"structure",
316
- "members":{
317
- "name":{"shape":"RecorderName"},
318
- "roleARN":{"shape":"String"}
319
- }
320
- },
321
- "ConfigurationRecorderList":{
322
- "type":"list",
323
- "member":{"shape":"ConfigurationRecorder"}
324
- },
325
- "ConfigurationRecorderNameList":{
326
- "type":"list",
327
- "member":{"shape":"RecorderName"}
328
- },
329
- "ConfigurationRecorderStatus":{
330
- "type":"structure",
331
- "members":{
332
- "name":{"shape":"String"},
333
- "lastStartTime":{"shape":"Date"},
334
- "lastStopTime":{"shape":"Date"},
335
- "recording":{"shape":"Boolean"},
336
- "lastStatus":{"shape":"RecorderStatus"},
337
- "lastErrorCode":{"shape":"String"},
338
- "lastErrorMessage":{"shape":"String"},
339
- "lastStatusChangeTime":{"shape":"Date"}
340
- }
341
- },
342
- "ConfigurationRecorderStatusList":{
343
- "type":"list",
344
- "member":{"shape":"ConfigurationRecorderStatus"}
345
- },
346
- "ConfigurationStateId":{"type":"string"},
347
- "Date":{"type":"timestamp"},
348
- "DeleteDeliveryChannelRequest":{
349
- "type":"structure",
350
- "required":["DeliveryChannelName"],
351
- "members":{
352
- "DeliveryChannelName":{"shape":"ChannelName"}
353
- }
354
- },
355
- "DeliverConfigSnapshotRequest":{
356
- "type":"structure",
357
- "required":["deliveryChannelName"],
358
- "members":{
359
- "deliveryChannelName":{"shape":"ChannelName"}
360
- }
361
- },
362
- "DeliverConfigSnapshotResponse":{
363
- "type":"structure",
364
- "members":{
365
- "configSnapshotId":{"shape":"String"}
366
- }
367
- },
368
- "DeliveryChannel":{
369
- "type":"structure",
370
- "members":{
371
- "name":{"shape":"ChannelName"},
372
- "s3BucketName":{"shape":"String"},
373
- "s3KeyPrefix":{"shape":"String"},
374
- "snsTopicARN":{"shape":"String"}
375
- }
376
- },
377
- "DeliveryChannelList":{
378
- "type":"list",
379
- "member":{"shape":"DeliveryChannel"}
380
- },
381
- "DeliveryChannelNameList":{
382
- "type":"list",
383
- "member":{"shape":"ChannelName"}
384
- },
385
- "DeliveryChannelStatus":{
386
- "type":"structure",
387
- "members":{
388
- "name":{"shape":"String"},
389
- "configSnapshotDeliveryInfo":{"shape":"ConfigExportDeliveryInfo"},
390
- "configHistoryDeliveryInfo":{"shape":"ConfigExportDeliveryInfo"},
391
- "configStreamDeliveryInfo":{"shape":"ConfigStreamDeliveryInfo"}
392
- }
393
- },
394
- "DeliveryChannelStatusList":{
395
- "type":"list",
396
- "member":{"shape":"DeliveryChannelStatus"}
397
- },
398
- "DeliveryStatus":{
399
- "type":"string",
400
- "enum":[
401
- "Success",
402
- "Failure"
403
- ]
404
- },
405
- "DescribeConfigurationRecorderStatusRequest":{
406
- "type":"structure",
407
- "members":{
408
- "ConfigurationRecorderNames":{"shape":"ConfigurationRecorderNameList"}
409
- }
410
- },
411
- "DescribeConfigurationRecorderStatusResponse":{
412
- "type":"structure",
413
- "members":{
414
- "ConfigurationRecordersStatus":{"shape":"ConfigurationRecorderStatusList"}
415
- }
416
- },
417
- "DescribeConfigurationRecordersRequest":{
418
- "type":"structure",
419
- "members":{
420
- "ConfigurationRecorderNames":{"shape":"ConfigurationRecorderNameList"}
421
- }
422
- },
423
- "DescribeConfigurationRecordersResponse":{
424
- "type":"structure",
425
- "members":{
426
- "ConfigurationRecorders":{"shape":"ConfigurationRecorderList"}
427
- }
428
- },
429
- "DescribeDeliveryChannelStatusRequest":{
430
- "type":"structure",
431
- "members":{
432
- "DeliveryChannelNames":{"shape":"DeliveryChannelNameList"}
433
- }
434
- },
435
- "DescribeDeliveryChannelStatusResponse":{
436
- "type":"structure",
437
- "members":{
438
- "DeliveryChannelsStatus":{"shape":"DeliveryChannelStatusList"}
439
- }
440
- },
441
- "DescribeDeliveryChannelsRequest":{
442
- "type":"structure",
443
- "members":{
444
- "DeliveryChannelNames":{"shape":"DeliveryChannelNameList"}
445
- }
446
- },
447
- "DescribeDeliveryChannelsResponse":{
448
- "type":"structure",
449
- "members":{
450
- "DeliveryChannels":{"shape":"DeliveryChannelList"}
451
- }
452
- },
453
- "EarlierTime":{"type":"timestamp"},
454
- "GetResourceConfigHistoryRequest":{
455
- "type":"structure",
456
- "required":[
457
- "resourceType",
458
- "resourceId"
459
- ],
460
- "members":{
461
- "resourceType":{"shape":"ResourceType"},
462
- "resourceId":{"shape":"ResourceId"},
463
- "laterTime":{"shape":"LaterTime"},
464
- "earlierTime":{"shape":"EarlierTime"},
465
- "chronologicalOrder":{"shape":"ChronologicalOrder"},
466
- "limit":{"shape":"Limit"},
467
- "nextToken":{"shape":"NextToken"}
468
- }
469
- },
470
- "GetResourceConfigHistoryResponse":{
471
- "type":"structure",
472
- "members":{
473
- "configurationItems":{"shape":"ConfigurationItemList"},
474
- "nextToken":{"shape":"NextToken"}
475
- }
476
- },
477
- "InsufficientDeliveryPolicyException":{
478
- "type":"structure",
479
- "members":{
480
- },
481
- "exception":true
482
- },
483
- "InvalidConfigurationRecorderNameException":{
484
- "type":"structure",
485
- "members":{
486
- },
487
- "exception":true
488
- },
489
- "InvalidDeliveryChannelNameException":{
490
- "type":"structure",
491
- "members":{
492
- },
493
- "exception":true
494
- },
495
- "InvalidLimitException":{
496
- "type":"structure",
497
- "members":{
498
- },
499
- "exception":true
500
- },
501
- "InvalidNextTokenException":{
502
- "type":"structure",
503
- "members":{
504
- },
505
- "exception":true
506
- },
507
- "InvalidRoleException":{
508
- "type":"structure",
509
- "members":{
510
- },
511
- "exception":true
512
- },
513
- "InvalidS3KeyPrefixException":{
514
- "type":"structure",
515
- "members":{
516
- },
517
- "exception":true
518
- },
519
- "InvalidSNSTopicARNException":{
520
- "type":"structure",
521
- "members":{
522
- },
523
- "exception":true
524
- },
525
- "InvalidTimeRangeException":{
526
- "type":"structure",
527
- "members":{
528
- },
529
- "exception":true
530
- },
531
- "LastDeliveryChannelDeleteFailedException":{
532
- "type":"structure",
533
- "members":{
534
- },
535
- "exception":true
536
- },
537
- "LaterTime":{"type":"timestamp"},
538
- "Limit":{
539
- "type":"integer",
540
- "min":0,
541
- "max":100
542
- },
543
- "MaxNumberOfConfigurationRecordersExceededException":{
544
- "type":"structure",
545
- "members":{
546
- },
547
- "exception":true
548
- },
549
- "MaxNumberOfDeliveryChannelsExceededException":{
550
- "type":"structure",
551
- "members":{
552
- },
553
- "exception":true
554
- },
555
- "Name":{"type":"string"},
556
- "NextToken":{"type":"string"},
557
- "NoAvailableConfigurationRecorderException":{
558
- "type":"structure",
559
- "members":{
560
- },
561
- "exception":true
562
- },
563
- "NoAvailableDeliveryChannelException":{
564
- "type":"structure",
565
- "members":{
566
- },
567
- "exception":true
568
- },
569
- "NoRunningConfigurationRecorderException":{
570
- "type":"structure",
571
- "members":{
572
- },
573
- "exception":true
574
- },
575
- "NoSuchBucketException":{
576
- "type":"structure",
577
- "members":{
578
- },
579
- "exception":true
580
- },
581
- "NoSuchConfigurationRecorderException":{
582
- "type":"structure",
583
- "members":{
584
- },
585
- "exception":true
586
- },
587
- "NoSuchDeliveryChannelException":{
588
- "type":"structure",
589
- "members":{
590
- },
591
- "exception":true
592
- },
593
- "PutConfigurationRecorderRequest":{
594
- "type":"structure",
595
- "required":["ConfigurationRecorder"],
596
- "members":{
597
- "ConfigurationRecorder":{"shape":"ConfigurationRecorder"}
598
- }
599
- },
600
- "PutDeliveryChannelRequest":{
601
- "type":"structure",
602
- "required":["DeliveryChannel"],
603
- "members":{
604
- "DeliveryChannel":{"shape":"DeliveryChannel"}
605
- }
606
- },
607
- "RecorderName":{
608
- "type":"string",
609
- "min":1,
610
- "max":256
611
- },
612
- "RecorderStatus":{
613
- "type":"string",
614
- "enum":[
615
- "Pending",
616
- "Success",
617
- "Failure"
618
- ]
619
- },
620
- "RelatedEvent":{"type":"string"},
621
- "RelatedEventList":{
622
- "type":"list",
623
- "member":{"shape":"RelatedEvent"}
624
- },
625
- "Relationship":{
626
- "type":"structure",
627
- "members":{
628
- "resourceType":{"shape":"ResourceType"},
629
- "resourceId":{"shape":"ResourceId"},
630
- "relationshipName":{"shape":"RelationshipName"}
631
- }
632
- },
633
- "RelationshipList":{
634
- "type":"list",
635
- "member":{"shape":"Relationship"}
636
- },
637
- "RelationshipName":{"type":"string"},
638
- "ResourceCreationTime":{"type":"timestamp"},
639
- "ResourceId":{"type":"string"},
640
- "ResourceNotDiscoveredException":{
641
- "type":"structure",
642
- "members":{
643
- },
644
- "exception":true
645
- },
646
- "ResourceType":{
647
- "type":"string",
648
- "enum":[
649
- "AWS::EC2::CustomerGateway",
650
- "AWS::EC2::EIP",
651
- "AWS::EC2::Instance",
652
- "AWS::EC2::InternetGateway",
653
- "AWS::EC2::NetworkAcl",
654
- "AWS::EC2::NetworkInterface",
655
- "AWS::EC2::RouteTable",
656
- "AWS::EC2::SecurityGroup",
657
- "AWS::EC2::Subnet",
658
- "AWS::CloudTrail::Trail",
659
- "AWS::EC2::Volume",
660
- "AWS::EC2::VPC",
661
- "AWS::EC2::VPNConnection",
662
- "AWS::EC2::VPNGateway"
663
- ]
664
- },
665
- "StartConfigurationRecorderRequest":{
666
- "type":"structure",
667
- "required":["ConfigurationRecorderName"],
668
- "members":{
669
- "ConfigurationRecorderName":{"shape":"RecorderName"}
670
- }
671
- },
672
- "StopConfigurationRecorderRequest":{
673
- "type":"structure",
674
- "required":["ConfigurationRecorderName"],
675
- "members":{
676
- "ConfigurationRecorderName":{"shape":"RecorderName"}
677
- }
678
- },
679
- "String":{"type":"string"},
680
- "Tags":{
681
- "type":"map",
682
- "key":{"shape":"Name"},
683
- "value":{"shape":"Value"}
684
- },
685
- "ValidationException":{
686
- "type":"structure",
687
- "members":{
688
- },
689
- "exception":true
690
- },
691
- "Value":{"type":"string"},
692
- "Version":{"type":"string"}
693
- }
694
- }