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 +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3outposts/client.rb +53 -3
- data/lib/aws-sdk-s3outposts/client_api.rb +63 -0
- data/lib/aws-sdk-s3outposts/endpoint_provider.rb +27 -24
- data/lib/aws-sdk-s3outposts/endpoints.rb +14 -0
- data/lib/aws-sdk-s3outposts/errors.rb +32 -0
- data/lib/aws-sdk-s3outposts/plugins/endpoints.rb +2 -0
- data/lib/aws-sdk-s3outposts/types.rb +131 -1
- data/lib/aws-sdk-s3outposts.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 69bb1853b592b855ee9cd0d0e246bbc83484ef3667708ca2c7ca7a196383f9a5
|
4
|
+
data.tar.gz: 205a7067c51fef4011299fb537fcd88b7c846ea91f19f0601f49336d270286c9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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.
|
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.
|
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
|
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
|
-
|
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
|
-
|
41
|
-
|
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
|
-
|
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
|
data/lib/aws-sdk-s3outposts.rb
CHANGED
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.
|
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-
|
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
|