aws-sdk-s3outposts 1.15.0 → 1.17.0

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
  SHA256:
3
- metadata.gz: ccf140684dec0bca001d20eb517a5afd9ba4b842f750d87b11d73433e8bd6036
4
- data.tar.gz: 3944fb738860f8db1e9ec9cf7dbf019e7ed2483891ba9a7dfe4474451960e270
3
+ metadata.gz: 69bb1853b592b855ee9cd0d0e246bbc83484ef3667708ca2c7ca7a196383f9a5
4
+ data.tar.gz: 205a7067c51fef4011299fb537fcd88b7c846ea91f19f0601f49336d270286c9
5
5
  SHA512:
6
- metadata.gz: a9c277e672fb6732a26bd7d405be14f098f90c515a57eca64b020a778b178b14db1deefffdc47b400b541261a2fbe4a411c671bc6bc7411cbfe02a1fb41b2d8b
7
- data.tar.gz: 01da89e1260cc1180a42f84f0c2f3a1961d174c9f04e72e14a1cf4f112fdd0574fdfc229f1f609450cda8edff7f19e660812a245d1e9e0e824b8bce95c61fcea
6
+ metadata.gz: 1f287afc9cceaa6d6ecffb85a49a70123dc3ac0118b50d86c4106b363919e37728f203c798c67ce1d0edb8181cbb536c6d8cc95ab66bb20bbc8f38db26055094
7
+ data.tar.gz: 8a14ed8c3e1c3f3b421bd2723715850d698d3984173b4180fb2df40bdcc381798a8564979c8691e0c31efca8dccdfd646add71fbb194874ca876dd7f76e3df77
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.17.0 (2023-03-20)
5
+ ------------------
6
+
7
+ * Feature - S3 On Outposts added support for endpoint status, and a failed endpoint reason, if any
8
+
9
+ 1.16.0 (2023-03-01)
10
+ ------------------
11
+
12
+ * Feature - S3 on Outposts introduces a new API ListOutpostsWithS3, with this API you can list all your Outposts with S3 capacity.
13
+
4
14
  1.15.0 (2023-01-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.15.0
1
+ 1.17.0
@@ -522,7 +522,7 @@ module Aws::S3Outposts
522
522
  # resp.endpoints[0].endpoint_arn #=> String
523
523
  # resp.endpoints[0].outposts_id #=> String
524
524
  # resp.endpoints[0].cidr_block #=> String
525
- # resp.endpoints[0].status #=> String, one of "Pending", "Available", "Deleting"
525
+ # resp.endpoints[0].status #=> String, one of "Pending", "Available", "Deleting", "Create_Failed", "Delete_Failed"
526
526
  # resp.endpoints[0].creation_time #=> Time
527
527
  # resp.endpoints[0].network_interfaces #=> Array
528
528
  # resp.endpoints[0].network_interfaces[0].network_interface_id #=> String
@@ -531,6 +531,8 @@ module Aws::S3Outposts
531
531
  # resp.endpoints[0].security_group_id #=> String
532
532
  # resp.endpoints[0].access_type #=> String, one of "Private", "CustomerOwnedIp"
533
533
  # resp.endpoints[0].customer_owned_ipv_4_pool #=> String
534
+ # resp.endpoints[0].failed_reason.error_code #=> String
535
+ # resp.endpoints[0].failed_reason.message #=> String
534
536
  # resp.next_token #=> String
535
537
  #
536
538
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/ListEndpoints AWS API Documentation
@@ -542,6 +544,52 @@ module Aws::S3Outposts
542
544
  req.send_request(options)
543
545
  end
544
546
 
547
+ # Lists the Outposts with S3 on Outposts capacity for your Amazon Web
548
+ # Services account. Includes S3 on Outposts that you have access to as
549
+ # the Outposts owner, or as a shared user from Resource Access Manager
550
+ # (RAM).
551
+ #
552
+ # @option params [String] :next_token
553
+ # When you can get additional results from the `ListOutpostsWithS3`
554
+ # call, a `NextToken` parameter is returned in the output. You can then
555
+ # pass in a subsequent command to the `NextToken` parameter to continue
556
+ # listing additional Outposts.
557
+ #
558
+ # @option params [Integer] :max_results
559
+ # The maximum number of Outposts to return. The limit is 100.
560
+ #
561
+ # @return [Types::ListOutpostsWithS3Result] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
562
+ #
563
+ # * {Types::ListOutpostsWithS3Result#outposts #outposts} => Array<Types::Outpost>
564
+ # * {Types::ListOutpostsWithS3Result#next_token #next_token} => String
565
+ #
566
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
567
+ #
568
+ # @example Request syntax with placeholder values
569
+ #
570
+ # resp = client.list_outposts_with_s3({
571
+ # next_token: "NextToken",
572
+ # max_results: 1,
573
+ # })
574
+ #
575
+ # @example Response structure
576
+ #
577
+ # resp.outposts #=> Array
578
+ # resp.outposts[0].outpost_arn #=> String
579
+ # resp.outposts[0].outpost_id #=> String
580
+ # resp.outposts[0].owner_id #=> String
581
+ # resp.outposts[0].capacity_in_bytes #=> Integer
582
+ # resp.next_token #=> String
583
+ #
584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/ListOutpostsWithS3 AWS API Documentation
585
+ #
586
+ # @overload list_outposts_with_s3(params = {})
587
+ # @param [Hash] params ({})
588
+ def list_outposts_with_s3(params = {}, options = {})
589
+ req = build_request(:list_outposts_with_s3, params)
590
+ req.send_request(options)
591
+ end
592
+
545
593
  # Lists all endpoints associated with an Outpost that has been shared by
546
594
  # Amazon Web Services Resource Access Manager (RAM).
547
595
  #
@@ -588,7 +636,7 @@ module Aws::S3Outposts
588
636
  # resp.endpoints[0].endpoint_arn #=> String
589
637
  # resp.endpoints[0].outposts_id #=> String
590
638
  # resp.endpoints[0].cidr_block #=> String
591
- # resp.endpoints[0].status #=> String, one of "Pending", "Available", "Deleting"
639
+ # resp.endpoints[0].status #=> String, one of "Pending", "Available", "Deleting", "Create_Failed", "Delete_Failed"
592
640
  # resp.endpoints[0].creation_time #=> Time
593
641
  # resp.endpoints[0].network_interfaces #=> Array
594
642
  # resp.endpoints[0].network_interfaces[0].network_interface_id #=> String
@@ -597,6 +645,8 @@ module Aws::S3Outposts
597
645
  # resp.endpoints[0].security_group_id #=> String
598
646
  # resp.endpoints[0].access_type #=> String, one of "Private", "CustomerOwnedIp"
599
647
  # resp.endpoints[0].customer_owned_ipv_4_pool #=> String
648
+ # resp.endpoints[0].failed_reason.error_code #=> String
649
+ # resp.endpoints[0].failed_reason.message #=> String
600
650
  # resp.next_token #=> String
601
651
  #
602
652
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/ListSharedEndpoints AWS API Documentation
@@ -621,7 +671,7 @@ module Aws::S3Outposts
621
671
  params: params,
622
672
  config: config)
623
673
  context[:gem_name] = 'aws-sdk-s3outposts'
624
- context[:gem_version] = '1.15.0'
674
+ context[:gem_version] = '1.17.0'
625
675
  Seahorse::Client::Request.new(handlers, context)
626
676
  end
627
677
 
@@ -14,6 +14,8 @@ module Aws::S3Outposts
14
14
  include Seahorse::Model
15
15
 
16
16
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
+ AwsAccountId = Shapes::StringShape.new(name: 'AwsAccountId')
18
+ CapacityInBytes = Shapes::IntegerShape.new(name: 'CapacityInBytes')
17
19
  CidrBlock = Shapes::StringShape.new(name: 'CidrBlock')
18
20
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
19
21
  CreateEndpointRequest = Shapes::StructureShape.new(name: 'CreateEndpointRequest')
@@ -27,21 +29,31 @@ module Aws::S3Outposts
27
29
  EndpointId = Shapes::StringShape.new(name: 'EndpointId')
28
30
  EndpointStatus = Shapes::StringShape.new(name: 'EndpointStatus')
29
31
  Endpoints = Shapes::ListShape.new(name: 'Endpoints')
32
+ ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
30
33
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
34
+ FailedReason = Shapes::StructureShape.new(name: 'FailedReason')
31
35
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
32
36
  ListEndpointsRequest = Shapes::StructureShape.new(name: 'ListEndpointsRequest')
33
37
  ListEndpointsResult = Shapes::StructureShape.new(name: 'ListEndpointsResult')
38
+ ListOutpostsWithS3Request = Shapes::StructureShape.new(name: 'ListOutpostsWithS3Request')
39
+ ListOutpostsWithS3Result = Shapes::StructureShape.new(name: 'ListOutpostsWithS3Result')
34
40
  ListSharedEndpointsRequest = Shapes::StructureShape.new(name: 'ListSharedEndpointsRequest')
35
41
  ListSharedEndpointsResult = Shapes::StructureShape.new(name: 'ListSharedEndpointsResult')
36
42
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
43
+ Message = Shapes::StringShape.new(name: 'Message')
37
44
  NetworkInterface = Shapes::StructureShape.new(name: 'NetworkInterface')
38
45
  NetworkInterfaceId = Shapes::StringShape.new(name: 'NetworkInterfaceId')
39
46
  NetworkInterfaces = Shapes::ListShape.new(name: 'NetworkInterfaces')
40
47
  NextToken = Shapes::StringShape.new(name: 'NextToken')
48
+ Outpost = Shapes::StructureShape.new(name: 'Outpost')
49
+ OutpostArn = Shapes::StringShape.new(name: 'OutpostArn')
41
50
  OutpostId = Shapes::StringShape.new(name: 'OutpostId')
51
+ OutpostOfflineException = Shapes::StructureShape.new(name: 'OutpostOfflineException')
52
+ Outposts = Shapes::ListShape.new(name: 'Outposts')
42
53
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
43
54
  SecurityGroupId = Shapes::StringShape.new(name: 'SecurityGroupId')
44
55
  SubnetId = Shapes::StringShape.new(name: 'SubnetId')
56
+ ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
45
57
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
46
58
  VpcId = Shapes::StringShape.new(name: 'VpcId')
47
59
 
@@ -76,10 +88,15 @@ module Aws::S3Outposts
76
88
  Endpoint.add_member(:security_group_id, Shapes::ShapeRef.new(shape: SecurityGroupId, location_name: "SecurityGroupId"))
77
89
  Endpoint.add_member(:access_type, Shapes::ShapeRef.new(shape: EndpointAccessType, location_name: "AccessType"))
78
90
  Endpoint.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: CustomerOwnedIpv4Pool, location_name: "CustomerOwnedIpv4Pool"))
91
+ Endpoint.add_member(:failed_reason, Shapes::ShapeRef.new(shape: FailedReason, location_name: "FailedReason"))
79
92
  Endpoint.struct_class = Types::Endpoint
80
93
 
81
94
  Endpoints.member = Shapes::ShapeRef.new(shape: Endpoint)
82
95
 
96
+ FailedReason.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, location_name: "ErrorCode"))
97
+ FailedReason.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "Message"))
98
+ FailedReason.struct_class = Types::FailedReason
99
+
83
100
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
84
101
  InternalServerException.struct_class = Types::InternalServerException
85
102
 
@@ -91,6 +108,14 @@ module Aws::S3Outposts
91
108
  ListEndpointsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
92
109
  ListEndpointsResult.struct_class = Types::ListEndpointsResult
93
110
 
111
+ ListOutpostsWithS3Request.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
112
+ ListOutpostsWithS3Request.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
113
+ ListOutpostsWithS3Request.struct_class = Types::ListOutpostsWithS3Request
114
+
115
+ ListOutpostsWithS3Result.add_member(:outposts, Shapes::ShapeRef.new(shape: Outposts, location_name: "Outposts"))
116
+ ListOutpostsWithS3Result.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
117
+ ListOutpostsWithS3Result.struct_class = Types::ListOutpostsWithS3Result
118
+
94
119
  ListSharedEndpointsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
95
120
  ListSharedEndpointsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
96
121
  ListSharedEndpointsRequest.add_member(:outpost_id, Shapes::ShapeRef.new(shape: OutpostId, required: true, location: "querystring", location_name: "outpostId"))
@@ -105,9 +130,23 @@ module Aws::S3Outposts
105
130
 
106
131
  NetworkInterfaces.member = Shapes::ShapeRef.new(shape: NetworkInterface)
107
132
 
133
+ Outpost.add_member(:outpost_arn, Shapes::ShapeRef.new(shape: OutpostArn, location_name: "OutpostArn"))
134
+ Outpost.add_member(:outpost_id, Shapes::ShapeRef.new(shape: OutpostId, location_name: "OutpostId"))
135
+ Outpost.add_member(:owner_id, Shapes::ShapeRef.new(shape: AwsAccountId, location_name: "OwnerId"))
136
+ Outpost.add_member(:capacity_in_bytes, Shapes::ShapeRef.new(shape: CapacityInBytes, location_name: "CapacityInBytes"))
137
+ Outpost.struct_class = Types::Outpost
138
+
139
+ OutpostOfflineException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
140
+ OutpostOfflineException.struct_class = Types::OutpostOfflineException
141
+
142
+ Outposts.member = Shapes::ShapeRef.new(shape: Outpost)
143
+
108
144
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
109
145
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
110
146
 
147
+ ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
148
+ ThrottlingException.struct_class = Types::ThrottlingException
149
+
111
150
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
112
151
  ValidationException.struct_class = Types::ValidationException
113
152
 
@@ -141,6 +180,8 @@ module Aws::S3Outposts
141
180
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
142
181
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
143
182
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
183
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
184
+ o.errors << Shapes::ShapeRef.new(shape: OutpostOfflineException)
144
185
  end)
145
186
 
146
187
  api.add_operation(:delete_endpoint, Seahorse::Model::Operation.new.tap do |o|
@@ -153,6 +194,8 @@ module Aws::S3Outposts
153
194
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
154
195
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
155
196
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
197
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
198
+ o.errors << Shapes::ShapeRef.new(shape: OutpostOfflineException)
156
199
  end)
157
200
 
158
201
  api.add_operation(:list_endpoints, Seahorse::Model::Operation.new.tap do |o|
@@ -165,6 +208,25 @@ module Aws::S3Outposts
165
208
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
166
209
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
167
210
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
211
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
212
+ o[:pager] = Aws::Pager.new(
213
+ limit_key: "max_results",
214
+ tokens: {
215
+ "next_token" => "next_token"
216
+ }
217
+ )
218
+ end)
219
+
220
+ api.add_operation(:list_outposts_with_s3, Seahorse::Model::Operation.new.tap do |o|
221
+ o.name = "ListOutpostsWithS3"
222
+ o.http_method = "GET"
223
+ o.http_request_uri = "/S3Outposts/ListOutpostsWithS3"
224
+ o.input = Shapes::ShapeRef.new(shape: ListOutpostsWithS3Request)
225
+ o.output = Shapes::ShapeRef.new(shape: ListOutpostsWithS3Result)
226
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
227
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
228
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
229
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
168
230
  o[:pager] = Aws::Pager.new(
169
231
  limit_key: "max_results",
170
232
  tokens: {
@@ -183,6 +245,7 @@ module Aws::S3Outposts
183
245
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
184
246
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
185
247
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
248
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
186
249
  o[:pager] = Aws::Pager.new(
187
250
  limit_key: "max_results",
188
251
  tokens: {
@@ -14,36 +14,39 @@ module Aws::S3Outposts
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint) && (url = Aws::Endpoints::Matchers.parse_url(endpoint))
19
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
- end
22
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
- end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
- end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
- end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
- end
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
33
18
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
- end
37
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
38
20
  end
39
21
  if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
- return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
+ end
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
42
45
  end
43
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
46
+ return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
44
47
  end
45
- return Aws::Endpoints::Endpoint.new(url: "https://s3-outposts.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
46
48
  end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
47
50
  raise ArgumentError, 'No endpoint could be resolved'
48
51
 
49
52
  end
@@ -53,6 +53,20 @@ module Aws::S3Outposts
53
53
  end
54
54
  end
55
55
 
56
+ class ListOutpostsWithS3
57
+ def self.build(context)
58
+ unless context.config.regional_endpoint
59
+ endpoint = context.config.endpoint.to_s
60
+ end
61
+ Aws::S3Outposts::EndpointParameters.new(
62
+ region: context.config.region,
63
+ use_dual_stack: context.config.use_dualstack_endpoint,
64
+ use_fips: context.config.use_fips_endpoint,
65
+ endpoint: endpoint,
66
+ )
67
+ end
68
+ end
69
+
56
70
  class ListSharedEndpoints
57
71
  def self.build(context)
58
72
  unless context.config.regional_endpoint
@@ -30,7 +30,9 @@ module Aws::S3Outposts
30
30
  # * {AccessDeniedException}
31
31
  # * {ConflictException}
32
32
  # * {InternalServerException}
33
+ # * {OutpostOfflineException}
33
34
  # * {ResourceNotFoundException}
35
+ # * {ThrottlingException}
34
36
  # * {ValidationException}
35
37
  #
36
38
  # Additionally, error classes are dynamically generated for service errors based on the error code
@@ -84,6 +86,21 @@ module Aws::S3Outposts
84
86
  end
85
87
  end
86
88
 
89
+ class OutpostOfflineException < ServiceError
90
+
91
+ # @param [Seahorse::Client::RequestContext] context
92
+ # @param [String] message
93
+ # @param [Aws::S3Outposts::Types::OutpostOfflineException] data
94
+ def initialize(context, message, data = Aws::EmptyStructure.new)
95
+ super(context, message, data)
96
+ end
97
+
98
+ # @return [String]
99
+ def message
100
+ @message || @data[:message]
101
+ end
102
+ end
103
+
87
104
  class ResourceNotFoundException < ServiceError
88
105
 
89
106
  # @param [Seahorse::Client::RequestContext] context
@@ -99,6 +116,21 @@ module Aws::S3Outposts
99
116
  end
100
117
  end
101
118
 
119
+ class ThrottlingException < ServiceError
120
+
121
+ # @param [Seahorse::Client::RequestContext] context
122
+ # @param [String] message
123
+ # @param [Aws::S3Outposts::Types::ThrottlingException] data
124
+ def initialize(context, message, data = Aws::EmptyStructure.new)
125
+ super(context, message, data)
126
+ end
127
+
128
+ # @return [String]
129
+ def message
130
+ @message || @data[:message]
131
+ end
132
+ end
133
+
102
134
  class ValidationException < ServiceError
103
135
 
104
136
  # @param [Seahorse::Client::RequestContext] context
@@ -62,6 +62,8 @@ module Aws::S3Outposts
62
62
  Aws::S3Outposts::Endpoints::DeleteEndpoint.build(context)
63
63
  when :list_endpoints
64
64
  Aws::S3Outposts::Endpoints::ListEndpoints.build(context)
65
+ when :list_outposts_with_s3
66
+ Aws::S3Outposts::Endpoints::ListOutpostsWithS3.build(context)
65
67
  when :list_shared_endpoints
66
68
  Aws::S3Outposts::Endpoints::ListSharedEndpoints.build(context)
67
69
  end
@@ -165,6 +165,11 @@ module Aws::S3Outposts
165
165
  # endpoint.
166
166
  # @return [String]
167
167
  #
168
+ # @!attribute [rw] failed_reason
169
+ # The failure reason, if any, for a create or delete endpoint
170
+ # operation.
171
+ # @return [Types::FailedReason]
172
+ #
168
173
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/Endpoint AWS API Documentation
169
174
  #
170
175
  class Endpoint < Struct.new(
@@ -178,7 +183,28 @@ module Aws::S3Outposts
178
183
  :subnet_id,
179
184
  :security_group_id,
180
185
  :access_type,
181
- :customer_owned_ipv_4_pool)
186
+ :customer_owned_ipv_4_pool,
187
+ :failed_reason)
188
+ SENSITIVE = []
189
+ include Aws::Structure
190
+ end
191
+
192
+ # The failure reason, if any, for a create or delete endpoint operation.
193
+ #
194
+ # @!attribute [rw] error_code
195
+ # The failure code, if any, for a create or delete endpoint operation.
196
+ # @return [String]
197
+ #
198
+ # @!attribute [rw] message
199
+ # Additional error details describing the endpoint failure and
200
+ # recommended action.
201
+ # @return [String]
202
+ #
203
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/FailedReason AWS API Documentation
204
+ #
205
+ class FailedReason < Struct.new(
206
+ :error_code,
207
+ :message)
182
208
  SENSITIVE = []
183
209
  include Aws::Structure
184
210
  end
@@ -234,6 +260,53 @@ module Aws::S3Outposts
234
260
  include Aws::Structure
235
261
  end
236
262
 
263
+ # @!attribute [rw] next_token
264
+ # When you can get additional results from the `ListOutpostsWithS3`
265
+ # call, a `NextToken` parameter is returned in the output. You can
266
+ # then pass in a subsequent command to the `NextToken` parameter to
267
+ # continue listing additional Outposts.
268
+ # @return [String]
269
+ #
270
+ # @!attribute [rw] max_results
271
+ # The maximum number of Outposts to return. The limit is 100.
272
+ # @return [Integer]
273
+ #
274
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/ListOutpostsWithS3Request AWS API Documentation
275
+ #
276
+ class ListOutpostsWithS3Request < Struct.new(
277
+ :next_token,
278
+ :max_results)
279
+ SENSITIVE = []
280
+ include Aws::Structure
281
+ end
282
+
283
+ # @!attribute [rw] outposts
284
+ # Returns the list of Outposts that have the following
285
+ # characteristics:
286
+ #
287
+ # * outposts that have S3 provisioned
288
+ #
289
+ # * outposts that are `Active` (not pending any provisioning nor
290
+ # decommissioned)
291
+ #
292
+ # * outposts to which the the calling Amazon Web Services account has
293
+ # access
294
+ # @return [Array<Types::Outpost>]
295
+ #
296
+ # @!attribute [rw] next_token
297
+ # Returns a token that you can use to call `ListOutpostsWithS3` again
298
+ # and receive additional results, if there are any.
299
+ # @return [String]
300
+ #
301
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/ListOutpostsWithS3Result AWS API Documentation
302
+ #
303
+ class ListOutpostsWithS3Result < Struct.new(
304
+ :outposts,
305
+ :next_token)
306
+ SENSITIVE = []
307
+ include Aws::Structure
308
+ end
309
+
237
310
  # @!attribute [rw] next_token
238
311
  # If a previous response from this operation included a `NextToken`
239
312
  # value, you can provide that value here to retrieve the next page of
@@ -294,6 +367,50 @@ module Aws::S3Outposts
294
367
  include Aws::Structure
295
368
  end
296
369
 
370
+ # Contains the details for the Outpost object.
371
+ #
372
+ # @!attribute [rw] outpost_arn
373
+ # Specifies the unique Amazon Resource Name (ARN) for the outpost.
374
+ # @return [String]
375
+ #
376
+ # @!attribute [rw] outpost_id
377
+ # Specifies the unique identifier for the outpost.
378
+ # @return [String]
379
+ #
380
+ # @!attribute [rw] owner_id
381
+ # Returns the Amazon Web Services account ID of the outpost owner.
382
+ # Useful for comparing owned versus shared outposts.
383
+ # @return [String]
384
+ #
385
+ # @!attribute [rw] capacity_in_bytes
386
+ # The Amazon S3 capacity of the outpost in bytes.
387
+ # @return [Integer]
388
+ #
389
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/Outpost AWS API Documentation
390
+ #
391
+ class Outpost < Struct.new(
392
+ :outpost_arn,
393
+ :outpost_id,
394
+ :owner_id,
395
+ :capacity_in_bytes)
396
+ SENSITIVE = []
397
+ include Aws::Structure
398
+ end
399
+
400
+ # The service link connection to your Outposts home Region is down.
401
+ # Check your connection and try again.
402
+ #
403
+ # @!attribute [rw] message
404
+ # @return [String]
405
+ #
406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/OutpostOfflineException AWS API Documentation
407
+ #
408
+ class OutpostOfflineException < Struct.new(
409
+ :message)
410
+ SENSITIVE = []
411
+ include Aws::Structure
412
+ end
413
+
297
414
  # The requested resource was not found.
298
415
  #
299
416
  # @!attribute [rw] message
@@ -307,6 +424,19 @@ module Aws::S3Outposts
307
424
  include Aws::Structure
308
425
  end
309
426
 
427
+ # The request was denied due to request throttling.
428
+ #
429
+ # @!attribute [rw] message
430
+ # @return [String]
431
+ #
432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3outposts-2017-07-25/ThrottlingException AWS API Documentation
433
+ #
434
+ class ThrottlingException < Struct.new(
435
+ :message)
436
+ SENSITIVE = []
437
+ include Aws::Structure
438
+ end
439
+
310
440
  # There was an exception validating this data.
311
441
  #
312
442
  # @!attribute [rw] message
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-s3outposts/customizations'
52
52
  # @!group service
53
53
  module Aws::S3Outposts
54
54
 
55
- GEM_VERSION = '1.15.0'
55
+ GEM_VERSION = '1.17.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3outposts
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.0
4
+ version: 1.17.0
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: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-03-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core