aws-sdk-core 2.1.0 → 2.1.1

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 (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
- }