Skip to content

Commit 35abdd2

Browse files
author
awstools
committed
feat(client-storage-gateway): This release adds IPv6 support to the Storage Gateway APIs. APIs that previously only accept or return IPv4 address will now accept or return both IPv4 and IPv6 addresses.
1 parent 2d11d52 commit 35abdd2

File tree

3 files changed

+45
-40
lines changed

3 files changed

+45
-40
lines changed

clients/client-storage-gateway/src/commands/StartCacheReportCommand.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@ export interface StartCacheReportCommandOutput extends StartCacheReportOutput, _
4040
* <p>The following requirements must be met to successfully generate a cache report:</p>
4141
* <ul>
4242
* <li>
43-
* <p>You must have permissions to list the entire Amazon S3 bucket associated
44-
* with the specified file share.</p>
43+
* <p>You must have <code>s3:PutObject</code> and <code>s3:AbortMultipartUpload</code>
44+
* permissions for the Amazon S3 bucket where you want to store the cache
45+
* report.</p>
4546
* </li>
4647
* <li>
4748
* <p>No other cache reports can currently be in-progress for the specified file

clients/client-storage-gateway/src/models/models_0.ts

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -687,9 +687,9 @@ export interface AttachVolumeInput {
687687
VolumeARN: string | undefined;
688688

689689
/**
690-
* <p>The network interface of the gateway on which to expose the iSCSI target. Only IPv4
691-
* addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a list of
692-
* the network interfaces available on a gateway.</p>
690+
* <p>The network interface of the gateway on which to expose the iSCSI target. Accepts IPv4
691+
* and IPv6 addresses. Use <a>DescribeGatewayInformation</a> to get a list of the
692+
* network interfaces available on a gateway.</p>
693693
* <p>Valid Values: A valid IP address.</p>
694694
* @public
695695
*/
@@ -1386,9 +1386,9 @@ export interface CreateCachediSCSIVolumeInput {
13861386
SourceVolumeARN?: string | undefined;
13871387

13881388
/**
1389-
* <p>The network interface of the gateway on which to expose the iSCSI target. Only IPv4
1390-
* addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a list of
1391-
* the network interfaces available on a gateway.</p>
1389+
* <p>The network interface of the gateway on which to expose the iSCSI target. Accepts IPv4
1390+
* and IPv6 addresses. Use <a>DescribeGatewayInformation</a> to get a list of the
1391+
* network interfaces available on a gateway.</p>
13921392
* <p>Valid Values: A valid IP address.</p>
13931393
* @public
13941394
*/
@@ -1649,7 +1649,7 @@ export interface CreateNFSFileShareInput {
16491649

16501650
/**
16511651
* <p>The list of clients that are allowed to access the S3 File Gateway. The list must
1652-
* contain either valid IP addresses or valid CIDR blocks.</p>
1652+
* contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>
16531653
* @public
16541654
*/
16551655
ClientList?: string[] | undefined;
@@ -2384,9 +2384,9 @@ export interface CreateStorediSCSIVolumeInput {
23842384
TargetName: string | undefined;
23852385

23862386
/**
2387-
* <p>The network interface of the gateway on which to expose the iSCSI target. Only IPv4
2388-
* addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a list of
2389-
* the network interfaces available on a gateway.</p>
2387+
* <p>The network interface of the gateway on which to expose the iSCSI target. Accepts IPv4
2388+
* and IPv6 addresses. Use <a>DescribeGatewayInformation</a> to get a list of the
2389+
* network interfaces available on a gateway.</p>
23902390
* <p>Valid Values: A valid IP address.</p>
23912391
* @public
23922392
*/
@@ -3521,8 +3521,10 @@ export interface NetworkInterface {
35213521
MacAddress?: string | undefined;
35223522

35233523
/**
3524-
* <p>The Internet Protocol version 6 (IPv6) address of the interface. <i>Currently not
3525-
* supported</i>.</p>
3524+
* <p>The Internet Protocol version 6 (IPv6) address of the interface.</p>
3525+
* <note>
3526+
* <p>This element returns IPv6 addresses for all gateway types except FSx File Gateway.</p>
3527+
* </note>
35263528
* @public
35273529
*/
35283530
Ipv6Address?: string | undefined;
@@ -4010,7 +4012,7 @@ export interface NFSFileShareInfo {
40104012

40114013
/**
40124014
* <p>The list of clients that are allowed to access the S3 File Gateway. The list must
4013-
* contain either valid IP addresses or valid CIDR blocks.</p>
4015+
* contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>
40144016
* @public
40154017
*/
40164018
ClientList?: string[] | undefined;
@@ -6015,9 +6017,14 @@ export interface JoinDomainInput {
60156017
OrganizationalUnit?: string | undefined;
60166018

60176019
/**
6018-
* <p>List of IPv4 addresses, NetBIOS names, or host names of your domain server. If you need
6019-
* to specify the port number include it after the colon (“:”). For example,
6020+
* <p>List of IP addresses, NetBIOS names, or host names of your domain server. If you need to
6021+
* specify the port number include it after the colon (“:”). For example,
60206022
* <code>mydc.mydomain.com:389</code>.</p>
6023+
* <note>
6024+
* <p>S3 File Gateway supports IPv6 addresses in addition to IPv4 and other existing
6025+
* formats.</p>
6026+
* <p>FSx File Gateway does not support IPv6.</p>
6027+
* </note>
60216028
* @public
60226029
*/
60236030
DomainControllers?: string[] | undefined;
@@ -7845,7 +7852,7 @@ export interface UpdateNFSFileShareInput {
78457852

78467853
/**
78477854
* <p>The list of clients that are allowed to access the S3 File Gateway. The list must
7848-
* contain either valid IP addresses or valid CIDR blocks.</p>
7855+
* contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>
78497856
* @public
78507857
*/
78517858
ClientList?: string[] | undefined;

codegen/sdk-codegen/aws-models/storage-gateway.json

Lines changed: 19 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -681,7 +681,7 @@
681681
"NetworkInterfaceId": {
682682
"target": "com.amazonaws.storagegateway#NetworkInterfaceId",
683683
"traits": {
684-
"smithy.api#documentation": "<p>The network interface of the gateway on which to expose the iSCSI target. Only IPv4\n addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a list of\n the network interfaces available on a gateway.</p>\n <p>Valid Values: A valid IP address.</p>",
684+
"smithy.api#documentation": "<p>The network interface of the gateway on which to expose the iSCSI target. Accepts IPv4\n and IPv6 addresses. Use <a>DescribeGatewayInformation</a> to get a list of the\n network interfaces available on a gateway.</p>\n <p>Valid Values: A valid IP address.</p>",
685685
"smithy.api#required": {}
686686
}
687687
},
@@ -1605,7 +1605,7 @@
16051605
"NetworkInterfaceId": {
16061606
"target": "com.amazonaws.storagegateway#NetworkInterfaceId",
16071607
"traits": {
1608-
"smithy.api#documentation": "<p>The network interface of the gateway on which to expose the iSCSI target. Only IPv4\n addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a list of\n the network interfaces available on a gateway.</p>\n <p>Valid Values: A valid IP address.</p>",
1608+
"smithy.api#documentation": "<p>The network interface of the gateway on which to expose the iSCSI target. Accepts IPv4\n and IPv6 addresses. Use <a>DescribeGatewayInformation</a> to get a list of the\n network interfaces available on a gateway.</p>\n <p>Valid Values: A valid IP address.</p>",
16091609
"smithy.api#required": {}
16101610
}
16111611
},
@@ -1752,7 +1752,7 @@
17521752
"ClientList": {
17531753
"target": "com.amazonaws.storagegateway#FileShareClientList",
17541754
"traits": {
1755-
"smithy.api#documentation": "<p>The list of clients that are allowed to access the S3 File Gateway. The list must\n contain either valid IP addresses or valid CIDR blocks.</p>"
1755+
"smithy.api#documentation": "<p>The list of clients that are allowed to access the S3 File Gateway. The list must\n contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>"
17561756
}
17571757
},
17581758
"Squash": {
@@ -2313,7 +2313,7 @@
23132313
"NetworkInterfaceId": {
23142314
"target": "com.amazonaws.storagegateway#NetworkInterfaceId",
23152315
"traits": {
2316-
"smithy.api#documentation": "<p>The network interface of the gateway on which to expose the iSCSI target. Only IPv4\n addresses are accepted. Use <a>DescribeGatewayInformation</a> to get a list of\n the network interfaces available on a gateway.</p>\n <p>Valid Values: A valid IP address.</p>",
2316+
"smithy.api#documentation": "<p>The network interface of the gateway on which to expose the iSCSI target. Accepts IPv4\n and IPv6 addresses. Use <a>DescribeGatewayInformation</a> to get a list of the\n network interfaces available on a gateway.</p>\n <p>Valid Values: A valid IP address.</p>",
23172317
"smithy.api#required": {}
23182318
}
23192319
},
@@ -6045,10 +6045,10 @@
60456045
"com.amazonaws.storagegateway#FileShareClientList": {
60466046
"type": "list",
60476047
"member": {
6048-
"target": "com.amazonaws.storagegateway#IPV4AddressCIDR"
6048+
"target": "com.amazonaws.storagegateway#Ipv4OrIpv6AddressCIDR"
60496049
},
60506050
"traits": {
6051-
"smithy.api#documentation": "<p>The list of clients that are allowed to access the S3 File Gateway. The list must\n contain either valid IP addresses or valid CIDR blocks.</p>",
6051+
"smithy.api#documentation": "<p>The list of clients that are allowed to access the S3 File Gateway. The list must\n contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>",
60526052
"smithy.api#length": {
60536053
"min": 1,
60546054
"max": 100
@@ -6501,10 +6501,10 @@
65016501
"type": "string",
65026502
"traits": {
65036503
"smithy.api#length": {
6504-
"min": 6,
6504+
"min": 2,
65056505
"max": 1024
65066506
},
6507-
"smithy.api#pattern": "^(([a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9\\-]*[A-Za-z0-9])(:(\\d+))?$"
6507+
"smithy.api#pattern": "^(([a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9\\-]*[A-Za-z0-9])(:(\\d+))?$|^(?:\\[(?:(?:(?:[A-Fa-f0-9]{1,4}:){6}|(?=(?:[A-Fa-f0-9]{0,4}:){0,6}(?:[0-9]{1,3}\\.){3}[0-9]{1,3}(?![:.\\w]))(?:(?:[0-9A-Fa-f]{1,4}:){0,5}|:)(?:(?::[0-9A-Fa-f]{1,4}){1,5}:|:)|::(?:[A-Fa-f0-9]{1,4}:){5})(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[A-Fa-f0-9]{1,4}:){7}[A-Fa-f0-9]{1,4}|(?=(?:[A-Fa-f0-9]{0,4}:){0,7}[A-Fa-f0-9]{0,4}(?![:.\\w]))(?:(?:[0-9A-Fa-f]{1,4}:){1,7}|:)(?:(:[0-9A-Fa-f]{1,4}){1,7}|:)|(?:[A-Fa-f0-9]{1,4}:){7}:|:(:[A-Fa-f0-9]{1,4}){7})\\]:\\d+$|^(?:(?:(?:[A-Fa-f0-9]{1,4}:){6}|(?=(?:[A-Fa-f0-9]{0,4}:){0,6}(?:[0-9]{1,3}\\.){3}[0-9]{1,3}(?![:.\\w]))(?:(?:[0-9A-Fa-f]{1,4}:){0,5}|:)(?:(?::[0-9A-Fa-f]{1,4}){1,5}:|:)|::(?:[A-Fa-f0-9]{1,4}:){5})(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[A-Fa-f0-9]{1,4}:){7}[A-Fa-f0-9]{1,4}|(?=(?:[A-Fa-f0-9]{0,4}:){0,7}[A-Fa-f0-9]{0,4}(?![:.\\w]))(?:(?:[0-9A-Fa-f]{1,4}:){1,7}|:)(?:(:[0-9A-Fa-f]{1,4}){1,7}|:)|(?:[A-Fa-f0-9]{1,4}:){7}:|:(:[A-Fa-f0-9]{1,4}){7})$)$"
65086508
}
65096509
},
65106510
"com.amazonaws.storagegateway#HostEnvironment": {
@@ -6582,12 +6582,6 @@
65826582
"smithy.api#pattern": "^((25[0-5]|(2[0-4]|1[0-9]|[1-9]|)[0-9])(\\.(?!$)|$)){4}$"
65836583
}
65846584
},
6585-
"com.amazonaws.storagegateway#IPV4AddressCIDR": {
6586-
"type": "string",
6587-
"traits": {
6588-
"smithy.api#pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/([0-9]|[1-2][0-9]|3[0-2]))?$"
6589-
}
6590-
},
65916585
"com.amazonaws.storagegateway#Initiator": {
65926586
"type": "string",
65936587
"traits": {
@@ -6659,6 +6653,12 @@
66596653
}
66606654
}
66616655
},
6656+
"com.amazonaws.storagegateway#Ipv4OrIpv6AddressCIDR": {
6657+
"type": "string",
6658+
"traits": {
6659+
"smithy.api#pattern": "^(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(?:\\/(?:[0-9]|[1-2][0-9]|3[0-2]))?$|^(?:(?:(?:[A-Fa-f0-9]{1,4}:){6}|(?=(?:[A-Fa-f0-9]{0,4}:){0,6}(?:[0-9]{1,3}\\.){3}[0-9]{1,3}(?![:.\\w]))(?:(?:[0-9A-Fa-f]{1,4}:){0,5}|:)(?:(?::[0-9A-Fa-f]{1,4}){1,5}:|:)|::(?:[A-Fa-f0-9]{1,4}:){5})(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[A-Fa-f0-9]{1,4}:){7}[A-Fa-f0-9]{1,4}|(?=(?:[A-Fa-f0-9]{0,4}:){0,7}[A-Fa-f0-9]{0,4}(?![:.\\w]))(?:(?:[0-9A-Fa-f]{1,4}:){1,7}|:)(?:(:[0-9A-Fa-f]{1,4}){1,7}|:)|(?:[A-Fa-f0-9]{1,4}:){7}:|:(:[A-Fa-f0-9]{1,4}){7})(?:\\/(?:12[0-8]|1[01][0-9]|[1-9]?[0-9]))?$"
6660+
}
6661+
},
66626662
"com.amazonaws.storagegateway#IqnName": {
66636663
"type": "string",
66646664
"traits": {
@@ -6715,7 +6715,7 @@
67156715
"DomainControllers": {
67166716
"target": "com.amazonaws.storagegateway#Hosts",
67176717
"traits": {
6718-
"smithy.api#documentation": "<p>List of IPv4 addresses, NetBIOS names, or host names of your domain server. If you need\n to specify the port number include it after the colon (“:”). For example,\n <code>mydc.mydomain.com:389</code>.</p>"
6718+
"smithy.api#documentation": "<p>List of IP addresses, NetBIOS names, or host names of your domain server. If you need to\n specify the port number include it after the colon (“:”). For example,\n <code>mydc.mydomain.com:389</code>.</p>\n <note>\n <p>S3 File Gateway supports IPv6 addresses in addition to IPv4 and other existing\n formats.</p>\n <p>FSx File Gateway does not support IPv6.</p>\n </note>"
67196719
}
67206720
},
67216721
"TimeoutInSeconds": {
@@ -7924,7 +7924,7 @@
79247924
"Ipv6Address": {
79257925
"target": "com.amazonaws.storagegateway#string",
79267926
"traits": {
7927-
"smithy.api#documentation": "<p>The Internet Protocol version 6 (IPv6) address of the interface. <i>Currently not\n supported</i>.</p>"
7927+
"smithy.api#documentation": "<p>The Internet Protocol version 6 (IPv6) address of the interface.</p>\n <note>\n <p>This element returns IPv6 addresses for all gateway types except FSx File Gateway.</p>\n </note>"
79287928
}
79297929
}
79307930
},
@@ -7934,10 +7934,7 @@
79347934
}
79357935
},
79367936
"com.amazonaws.storagegateway#NetworkInterfaceId": {
7937-
"type": "string",
7938-
"traits": {
7939-
"smithy.api#pattern": "^\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z$"
7940-
}
7937+
"type": "string"
79417938
},
79427939
"com.amazonaws.storagegateway#NextUpdateAvailabilityDate": {
79437940
"type": "string",
@@ -9168,7 +9165,7 @@
91689165
}
91699166
],
91709167
"traits": {
9171-
"smithy.api#documentation": "<p>Starts generating a report of the file metadata currently cached by an S3 File Gateway for a specific file share. You can use this report to identify and resolve\n issues if you have files failing upload from your gateway to Amazon S3. The report\n is a CSV file containing a list of files which match the set of filter parameters you\n specify in the request.</p>\n <note>\n <p>The <b>Files Failing Upload</b> flag is reset every 24\n hours and during gateway reboot. If this report captures the files after the reset, but\n before they become flagged again, they will not be reported as <b>Files Failing Upload</b>.</p>\n </note>\n <p>The following requirements must be met to successfully generate a cache report:</p>\n <ul>\n <li>\n <p>You must have permissions to list the entire Amazon S3 bucket associated\n with the specified file share.</p>\n </li>\n <li>\n <p>No other cache reports can currently be in-progress for the specified file\n share.</p>\n </li>\n <li>\n <p>There must be fewer than 10 existing cache reports for the specified file\n share.</p>\n </li>\n <li>\n <p>The gateway must be online and connected to Amazon Web Services.</p>\n </li>\n <li>\n <p>The root disk must have at least 20GB of free space when report generation\n starts.</p>\n </li>\n <li>\n <p>You must specify at least one value for <code>InclusionFilters</code> or\n <code>ExclusionFilters</code> in the request.</p>\n </li>\n </ul>"
9168+
"smithy.api#documentation": "<p>Starts generating a report of the file metadata currently cached by an S3 File Gateway for a specific file share. You can use this report to identify and resolve\n issues if you have files failing upload from your gateway to Amazon S3. The report\n is a CSV file containing a list of files which match the set of filter parameters you\n specify in the request.</p>\n <note>\n <p>The <b>Files Failing Upload</b> flag is reset every 24\n hours and during gateway reboot. If this report captures the files after the reset, but\n before they become flagged again, they will not be reported as <b>Files Failing Upload</b>.</p>\n </note>\n <p>The following requirements must be met to successfully generate a cache report:</p>\n <ul>\n <li>\n <p>You must have <code>s3:PutObject</code> and <code>s3:AbortMultipartUpload</code>\n permissions for the Amazon S3 bucket where you want to store the cache\n report.</p>\n </li>\n <li>\n <p>No other cache reports can currently be in-progress for the specified file\n share.</p>\n </li>\n <li>\n <p>There must be fewer than 10 existing cache reports for the specified file\n share.</p>\n </li>\n <li>\n <p>The gateway must be online and connected to Amazon Web Services.</p>\n </li>\n <li>\n <p>The root disk must have at least 20GB of free space when report generation\n starts.</p>\n </li>\n <li>\n <p>You must specify at least one value for <code>InclusionFilters</code> or\n <code>ExclusionFilters</code> in the request.</p>\n </li>\n </ul>"
91729169
}
91739170
},
91749171
"com.amazonaws.storagegateway#StartCacheReportInput": {
@@ -11852,7 +11849,7 @@
1185211849
"ClientList": {
1185311850
"target": "com.amazonaws.storagegateway#FileShareClientList",
1185411851
"traits": {
11855-
"smithy.api#documentation": "<p>The list of clients that are allowed to access the S3 File Gateway. The list must\n contain either valid IP addresses or valid CIDR blocks.</p>"
11852+
"smithy.api#documentation": "<p>The list of clients that are allowed to access the S3 File Gateway. The list must\n contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>"
1185611853
}
1185711854
},
1185811855
"Squash": {

0 commit comments

Comments
 (0)