Skip to content

Commit a9637b1

Browse files
author
awstools
committed
feat(client-opensearch): You can specify ipv4 or dualstack IPAddressType for cluster endpoints. If you specify IPAddressType as dualstack, the new endpoint will be visible under the 'EndpointV2' parameter and will support IPv4 and IPv6 requests. Whereas, the 'Endpoint' will continue to serve IPv4 requests.
1 parent f0791f1 commit a9637b1

14 files changed

+315
-72
lines changed

clients/client-opensearch/src/commands/CreateDomainCommand.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ export interface CreateDomainCommandOutput extends CreateDomainResponse, __Metad
7373
* Throughput: Number("int"),
7474
* },
7575
* AccessPolicies: "STRING_VALUE",
76+
* IPAddressType: "ipv4" || "dualstack",
7677
* SnapshotOptions: { // SnapshotOptions
7778
* AutomatedSnapshotStartHour: Number("int"),
7879
* },
@@ -178,6 +179,7 @@ export interface CreateDomainCommandOutput extends CreateDomainResponse, __Metad
178179
* // Created: true || false,
179180
* // Deleted: true || false,
180181
* // Endpoint: "STRING_VALUE",
182+
* // EndpointV2: "STRING_VALUE",
181183
* // Endpoints: { // EndpointsMap
182184
* // "<keys>": "STRING_VALUE",
183185
* // },
@@ -210,6 +212,7 @@ export interface CreateDomainCommandOutput extends CreateDomainResponse, __Metad
210212
* // Throughput: Number("int"),
211213
* // },
212214
* // AccessPolicies: "STRING_VALUE",
215+
* // IPAddressType: "ipv4" || "dualstack",
213216
* // SnapshotOptions: { // SnapshotOptions
214217
* // AutomatedSnapshotStartHour: Number("int"),
215218
* // },

clients/client-opensearch/src/commands/DeleteDomainCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ export interface DeleteDomainCommandOutput extends DeleteDomainResponse, __Metad
5858
* // Created: true || false,
5959
* // Deleted: true || false,
6060
* // Endpoint: "STRING_VALUE",
61+
* // EndpointV2: "STRING_VALUE",
6162
* // Endpoints: { // EndpointsMap
6263
* // "<keys>": "STRING_VALUE",
6364
* // },
@@ -90,6 +91,7 @@ export interface DeleteDomainCommandOutput extends DeleteDomainResponse, __Metad
9091
* // Throughput: Number("int"),
9192
* // },
9293
* // AccessPolicies: "STRING_VALUE",
94+
* // IPAddressType: "ipv4" || "dualstack",
9395
* // SnapshotOptions: { // SnapshotOptions
9496
* // AutomatedSnapshotStartHour: Number("int"),
9597
* // },

clients/client-opensearch/src/commands/DescribeDomainCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ export interface DescribeDomainCommandOutput extends DescribeDomainResponse, __M
5858
* // Created: true || false,
5959
* // Deleted: true || false,
6060
* // Endpoint: "STRING_VALUE",
61+
* // EndpointV2: "STRING_VALUE",
6162
* // Endpoints: { // EndpointsMap
6263
* // "<keys>": "STRING_VALUE",
6364
* // },
@@ -90,6 +91,7 @@ export interface DescribeDomainCommandOutput extends DescribeDomainResponse, __M
9091
* // Throughput: Number("int"),
9192
* // },
9293
* // AccessPolicies: "STRING_VALUE",
94+
* // IPAddressType: "ipv4" || "dualstack",
9395
* // SnapshotOptions: { // SnapshotOptions
9496
* // AutomatedSnapshotStartHour: Number("int"),
9597
* // },

clients/client-opensearch/src/commands/DescribeDomainConfigCommand.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,10 +114,8 @@ export interface DescribeDomainConfigCommandOutput extends DescribeDomainConfigR
114114
* // PendingDeletion: true || false,
115115
* // },
116116
* // },
117-
* // SnapshotOptions: { // SnapshotOptionsStatus
118-
* // Options: { // SnapshotOptions
119-
* // AutomatedSnapshotStartHour: Number("int"),
120-
* // },
117+
* // IPAddressType: { // IPAddressTypeStatus
118+
* // Options: "ipv4" || "dualstack", // required
121119
* // Status: {
122120
* // CreationDate: new Date("TIMESTAMP"), // required
123121
* // UpdateDate: new Date("TIMESTAMP"), // required
@@ -126,6 +124,12 @@ export interface DescribeDomainConfigCommandOutput extends DescribeDomainConfigR
126124
* // PendingDeletion: true || false,
127125
* // },
128126
* // },
127+
* // SnapshotOptions: { // SnapshotOptionsStatus
128+
* // Options: { // SnapshotOptions
129+
* // AutomatedSnapshotStartHour: Number("int"),
130+
* // },
131+
* // Status: "<OptionStatus>", // required
132+
* // },
129133
* // VPCOptions: { // VPCDerivedInfoStatus
130134
* // Options: { // VPCDerivedInfo
131135
* // VPCId: "STRING_VALUE",

clients/client-opensearch/src/commands/DescribeDomainsCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ export interface DescribeDomainsCommandOutput extends DescribeDomainsResponse, _
6161
* // Created: true || false,
6262
* // Deleted: true || false,
6363
* // Endpoint: "STRING_VALUE",
64+
* // EndpointV2: "STRING_VALUE",
6465
* // Endpoints: { // EndpointsMap
6566
* // "<keys>": "STRING_VALUE",
6667
* // },
@@ -93,6 +94,7 @@ export interface DescribeDomainsCommandOutput extends DescribeDomainsResponse, _
9394
* // Throughput: Number("int"),
9495
* // },
9596
* // AccessPolicies: "STRING_VALUE",
97+
* // IPAddressType: "ipv4" || "dualstack",
9698
* // SnapshotOptions: { // SnapshotOptions
9799
* // AutomatedSnapshotStartHour: Number("int"),
98100
* // },

clients/client-opensearch/src/commands/DescribeDryRunProgressCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ export interface DescribeDryRunProgressCommandOutput extends DescribeDryRunProgr
7272
* // Created: true || false,
7373
* // Deleted: true || false,
7474
* // Endpoint: "STRING_VALUE",
75+
* // EndpointV2: "STRING_VALUE",
7576
* // Endpoints: { // EndpointsMap
7677
* // "<keys>": "STRING_VALUE",
7778
* // },
@@ -104,6 +105,7 @@ export interface DescribeDryRunProgressCommandOutput extends DescribeDryRunProgr
104105
* // Throughput: Number("int"),
105106
* // },
106107
* // AccessPolicies: "STRING_VALUE",
108+
* // IPAddressType: "ipv4" || "dualstack",
107109
* // SnapshotOptions: { // SnapshotOptions
108110
* // AutomatedSnapshotStartHour: Number("int"),
109111
* // },

clients/client-opensearch/src/commands/GetDomainMaintenanceStatusCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export interface GetDomainMaintenanceStatusCommandOutput extends GetDomainMainte
3737

3838
/**
3939
* @public
40-
* <p>Get the status of the maintenance action.</p>
40+
* <p>The status of the maintenance action.</p>
4141
* @example
4242
* Use a bare-bones client and the command you need to make an API call.
4343
* ```javascript

clients/client-opensearch/src/commands/ListDomainMaintenancesCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export interface ListDomainMaintenancesCommandOutput extends ListDomainMaintenan
3737

3838
/**
3939
* @public
40-
* <p>Get the list of the maintenance action.</p>
40+
* <p>A list of maintenance actions for the domain.</p>
4141
* @example
4242
* Use a bare-bones client and the command you need to make an API call.
4343
* ```javascript

clients/client-opensearch/src/commands/StartDomainMaintenanceCommand.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ export interface StartDomainMaintenanceCommandOutput extends StartDomainMaintena
3737

3838
/**
3939
* @public
40-
* <p>Starts the node maintenance (Node restart, Node reboot, Opensearch/Elasticsearch process restart,
41-
* Dashboard/kibana restart) on the data node.</p>
40+
* <p>Starts the node maintenance process on the data node. These processes can include a node reboot, an Opensearch or Elasticsearch process restart,
41+
* or a Dashboard or Kibana restart.</p>
4242
* @example
4343
* Use a bare-bones client and the command you need to make an API call.
4444
* ```javascript

clients/client-opensearch/src/commands/UpdateDomainConfigCommand.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ export interface UpdateDomainConfigCommandOutput extends UpdateDomainConfigRespo
9797
* "<keys>": "STRING_VALUE",
9898
* },
9999
* AccessPolicies: "STRING_VALUE",
100+
* IPAddressType: "ipv4" || "dualstack",
100101
* LogPublishingOptions: { // LogPublishingOptions
101102
* "<keys>": { // LogPublishingOption
102103
* CloudWatchLogsLogGroupArn: "STRING_VALUE",
@@ -236,10 +237,8 @@ export interface UpdateDomainConfigCommandOutput extends UpdateDomainConfigRespo
236237
* // PendingDeletion: true || false,
237238
* // },
238239
* // },
239-
* // SnapshotOptions: { // SnapshotOptionsStatus
240-
* // Options: { // SnapshotOptions
241-
* // AutomatedSnapshotStartHour: Number("int"),
242-
* // },
240+
* // IPAddressType: { // IPAddressTypeStatus
241+
* // Options: "ipv4" || "dualstack", // required
243242
* // Status: {
244243
* // CreationDate: new Date("TIMESTAMP"), // required
245244
* // UpdateDate: new Date("TIMESTAMP"), // required
@@ -248,6 +247,12 @@ export interface UpdateDomainConfigCommandOutput extends UpdateDomainConfigRespo
248247
* // PendingDeletion: true || false,
249248
* // },
250249
* // },
250+
* // SnapshotOptions: { // SnapshotOptionsStatus
251+
* // Options: { // SnapshotOptions
252+
* // AutomatedSnapshotStartHour: Number("int"),
253+
* // },
254+
* // Status: "<OptionStatus>", // required
255+
* // },
251256
* // VPCOptions: { // VPCDerivedInfoStatus
252257
* // Options: { // VPCDerivedInfo
253258
* // VPCId: "STRING_VALUE",

clients/client-opensearch/src/endpoint/ruleset.ts

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,27 +6,30 @@ import { RuleSetObject } from "@smithy/types";
66
or see "smithy.rules#endpointRuleSet"
77
in codegen/sdk-codegen/aws-models/opensearch.json */
88

9-
const s="required",
10-
t="fn",
11-
u="argv",
12-
v="ref";
9+
const v="required",
10+
w="fn",
11+
x="argv",
12+
y="ref";
1313
const a=true,
1414
b="isSet",
1515
c="booleanEquals",
1616
d="error",
1717
e="endpoint",
1818
f="tree",
1919
g="PartitionResult",
20-
h={[s]:false,"type":"String"},
21-
i={[s]:true,"default":false,"type":"Boolean"},
22-
j={[v]:"Endpoint"},
23-
k={[t]:c,[u]:[{[v]:"UseFIPS"},true]},
24-
l={[t]:c,[u]:[{[v]:"UseDualStack"},true]},
25-
m={},
26-
n={[t]:"getAttr",[u]:[{[v]:g},"supportsFIPS"]},
27-
o={[t]:c,[u]:[true,{[t]:"getAttr",[u]:[{[v]:g},"supportsDualStack"]}]},
28-
p=[k],
29-
q=[l],
30-
r=[{[v]:"Region"}];
31-
const _data={version:"1.0",parameters:{Region:h,UseDualStack:i,UseFIPS:i,Endpoint:h},rules:[{conditions:[{[t]:b,[u]:[j]}],rules:[{conditions:p,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:d},{conditions:q,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:d},{endpoint:{url:j,properties:m,headers:m},type:e}],type:f},{conditions:[{[t]:b,[u]:r}],rules:[{conditions:[{[t]:"aws.partition",[u]:r,assign:g}],rules:[{conditions:[k,l],rules:[{conditions:[{[t]:c,[u]:[a,n]},o],rules:[{endpoint:{url:"https://es-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:m,headers:m},type:e}],type:f},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:d}],type:f},{conditions:p,rules:[{conditions:[{[t]:c,[u]:[n,a]}],rules:[{endpoint:{url:"https://es-fips.{Region}.{PartitionResult#dnsSuffix}",properties:m,headers:m},type:e}],type:f},{error:"FIPS is enabled but this partition does not support FIPS",type:d}],type:f},{conditions:q,rules:[{conditions:[o],rules:[{endpoint:{url:"https://es.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:m,headers:m},type:e}],type:f},{error:"DualStack is enabled but this partition does not support DualStack",type:d}],type:f},{endpoint:{url:"https://es.{Region}.{PartitionResult#dnsSuffix}",properties:m,headers:m},type:e}],type:f}],type:f},{error:"Invalid Configuration: Missing Region",type:d}]};
20+
h="stringEquals",
21+
i={[v]:false,"type":"String"},
22+
j={[v]:true,"default":false,"type":"Boolean"},
23+
k={[y]:"Endpoint"},
24+
l={[w]:c,[x]:[{[y]:"UseFIPS"},true]},
25+
m={[w]:c,[x]:[{[y]:"UseDualStack"},true]},
26+
n={},
27+
o={[w]:"getAttr",[x]:[{[y]:g},"supportsFIPS"]},
28+
p={[w]:c,[x]:[true,{[w]:"getAttr",[x]:[{[y]:g},"supportsDualStack"]}]},
29+
q={[w]:"getAttr",[x]:[{[y]:g},"name"]},
30+
r={"url":"https://aos.{Region}.api.aws","properties":{},"headers":{}},
31+
s=[l],
32+
t=[m],
33+
u=[{[y]:"Region"}];
34+
const _data={version:"1.0",parameters:{Region:i,UseDualStack:j,UseFIPS:j,Endpoint:i},rules:[{conditions:[{[w]:b,[x]:[k]}],rules:[{conditions:s,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:d},{conditions:t,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:d},{endpoint:{url:k,properties:n,headers:n},type:e}],type:f},{conditions:[{[w]:b,[x]:u}],rules:[{conditions:[{[w]:"aws.partition",[x]:u,assign:g}],rules:[{conditions:[l,m],rules:[{conditions:[{[w]:c,[x]:[a,o]},p],rules:[{endpoint:{url:"https://es-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:n,headers:n},type:e}],type:f},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:d}],type:f},{conditions:s,rules:[{conditions:[{[w]:c,[x]:[o,a]}],rules:[{endpoint:{url:"https://es-fips.{Region}.{PartitionResult#dnsSuffix}",properties:n,headers:n},type:e}],type:f},{error:"FIPS is enabled but this partition does not support FIPS",type:d}],type:f},{conditions:t,rules:[{conditions:[p],rules:[{conditions:[{[w]:h,[x]:["aws",q]}],endpoint:r,type:e},{conditions:[{[w]:h,[x]:["aws-cn",q]}],endpoint:{url:"https://aos.{Region}.api.amazonwebservices.com.cn",properties:n,headers:n},type:e},{conditions:[{[w]:h,[x]:["aws-us-gov",q]}],endpoint:r,type:e},{endpoint:{url:"https://es.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:n,headers:n},type:e}],type:f},{error:"DualStack is enabled but this partition does not support DualStack",type:d}],type:f},{endpoint:{url:"https://es.{Region}.{PartitionResult#dnsSuffix}",properties:n,headers:n},type:e}],type:f}],type:f},{error:"Invalid Configuration: Missing Region",type:d}]};
3235
export const ruleSet: RuleSetObject = _data;

0 commit comments

Comments
 (0)