Skip to content

Commit b2cbba5

Browse files
author
awstools
committed
feat(client-cloudhsm-v2): Adds support to ModifyCluster for modifying a Cluster's Hsm Type.
1 parent 5e4350e commit b2cbba5

File tree

8 files changed

+55
-9
lines changed

8 files changed

+55
-9
lines changed

clients/client-cloudhsm-v2/src/commands/CreateClusterCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,13 @@ export interface CreateClusterCommandOutput extends CreateClusterResponse, __Met
7777
* // EniIp: "STRING_VALUE",
7878
* // EniIpV6: "STRING_VALUE",
7979
* // HsmId: "STRING_VALUE", // required
80+
* // HsmType: "STRING_VALUE",
8081
* // State: "CREATE_IN_PROGRESS" || "ACTIVE" || "DEGRADED" || "DELETE_IN_PROGRESS" || "DELETED",
8182
* // StateMessage: "STRING_VALUE",
8283
* // },
8384
* // ],
8485
* // HsmType: "STRING_VALUE",
86+
* // HsmTypeRollbackExpiration: new Date("TIMESTAMP"),
8587
* // PreCoPassword: "STRING_VALUE",
8688
* // SecurityGroup: "STRING_VALUE",
8789
* // SourceBackupId: "STRING_VALUE",

clients/client-cloudhsm-v2/src/commands/CreateHsmCommand.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ export interface CreateHsmCommandOutput extends CreateHsmResponse, __MetadataBea
5454
* // EniIp: "STRING_VALUE",
5555
* // EniIpV6: "STRING_VALUE",
5656
* // HsmId: "STRING_VALUE", // required
57+
* // HsmType: "STRING_VALUE",
5758
* // State: "CREATE_IN_PROGRESS" || "ACTIVE" || "DEGRADED" || "DELETE_IN_PROGRESS" || "DELETED",
5859
* // StateMessage: "STRING_VALUE",
5960
* // },

clients/client-cloudhsm-v2/src/commands/DeleteClusterCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,13 @@ export interface DeleteClusterCommandOutput extends DeleteClusterResponse, __Met
6161
* // EniIp: "STRING_VALUE",
6262
* // EniIpV6: "STRING_VALUE",
6363
* // HsmId: "STRING_VALUE", // required
64+
* // HsmType: "STRING_VALUE",
6465
* // State: "CREATE_IN_PROGRESS" || "ACTIVE" || "DEGRADED" || "DELETE_IN_PROGRESS" || "DELETED",
6566
* // StateMessage: "STRING_VALUE",
6667
* // },
6768
* // ],
6869
* // HsmType: "STRING_VALUE",
70+
* // HsmTypeRollbackExpiration: new Date("TIMESTAMP"),
6971
* // PreCoPassword: "STRING_VALUE",
7072
* // SecurityGroup: "STRING_VALUE",
7173
* // SourceBackupId: "STRING_VALUE",

clients/client-cloudhsm-v2/src/commands/DescribeClustersCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,13 @@ export interface DescribeClustersCommandOutput extends DescribeClustersResponse,
7272
* // EniIp: "STRING_VALUE",
7373
* // EniIpV6: "STRING_VALUE",
7474
* // HsmId: "STRING_VALUE", // required
75+
* // HsmType: "STRING_VALUE",
7576
* // State: "CREATE_IN_PROGRESS" || "ACTIVE" || "DEGRADED" || "DELETE_IN_PROGRESS" || "DELETED",
7677
* // StateMessage: "STRING_VALUE",
7778
* // },
7879
* // ],
7980
* // HsmType: "STRING_VALUE",
81+
* // HsmTypeRollbackExpiration: new Date("TIMESTAMP"),
8082
* // PreCoPassword: "STRING_VALUE",
8183
* // SecurityGroup: "STRING_VALUE",
8284
* // SourceBackupId: "STRING_VALUE",

clients/client-cloudhsm-v2/src/commands/ModifyClusterCommand.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ export interface ModifyClusterCommandOutput extends ModifyClusterResponse, __Met
3838
* // const { CloudHSMV2Client, ModifyClusterCommand } = require("@aws-sdk/client-cloudhsm-v2"); // CommonJS import
3939
* const client = new CloudHSMV2Client(config);
4040
* const input = { // ModifyClusterRequest
41+
* HsmType: "STRING_VALUE",
4142
* BackupRetentionPolicy: { // BackupRetentionPolicy
4243
* Type: "DAYS",
4344
* Value: "STRING_VALUE",
@@ -64,11 +65,13 @@ export interface ModifyClusterCommandOutput extends ModifyClusterResponse, __Met
6465
* // EniIp: "STRING_VALUE",
6566
* // EniIpV6: "STRING_VALUE",
6667
* // HsmId: "STRING_VALUE", // required
68+
* // HsmType: "STRING_VALUE",
6769
* // State: "CREATE_IN_PROGRESS" || "ACTIVE" || "DEGRADED" || "DELETE_IN_PROGRESS" || "DELETED",
6870
* // StateMessage: "STRING_VALUE",
6971
* // },
7072
* // ],
7173
* // HsmType: "STRING_VALUE",
74+
* // HsmTypeRollbackExpiration: new Date("TIMESTAMP"),
7275
* // PreCoPassword: "STRING_VALUE",
7376
* // SecurityGroup: "STRING_VALUE",
7477
* // SourceBackupId: "STRING_VALUE",

clients/client-cloudhsm-v2/src/models/models_0.ts

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -579,6 +579,12 @@ export interface Hsm {
579579
*/
580580
HsmId: string | undefined;
581581

582+
/**
583+
* <p>The type of HSM.</p>
584+
* @public
585+
*/
586+
HsmType?: string | undefined;
587+
582588
/**
583589
* <p>The HSM's state.</p>
584590
* @public
@@ -656,6 +662,12 @@ export interface Cluster {
656662
*/
657663
HsmType?: string | undefined;
658664

665+
/**
666+
* <p>The timestamp until when the cluster can be rolled back to its original HSM type.</p>
667+
* @public
668+
*/
669+
HsmTypeRollbackExpiration?: Date | undefined;
670+
659671
/**
660672
* <p>The default password for the cluster's Pre-Crypto Officer (PRECO) user.</p>
661673
* @public
@@ -701,11 +713,11 @@ export interface Cluster {
701713
VpcId?: string | undefined;
702714

703715
/**
704-
* <p>The cluster's NetworkType can be set to either IPV4 (which is the default) or DUALSTACK.
705-
* When set to IPV4, communication between your application and the Hardware Security Modules (HSMs) is restricted to the IPv4 protocol only.
706-
* In contrast, the DUALSTACK network type enables communication over both the IPv4 and IPv6 protocols.
707-
* To use the DUALSTACK option, you'll need to configure your Virtual Private Cloud (VPC) and subnets to support both IPv4 and IPv6. This involves adding IPv6 Classless Inter-Domain Routing (CIDR) blocks to the existing IPv4 CIDR blocks in your subnets.
708-
* The choice between IPV4 and DUALSTACK network types determines the flexibility of the network addressing setup for your cluster. The DUALSTACK option provides more flexibility by allowing both IPv4 and IPv6 communication.</p>
716+
* <p>The cluster's NetworkType can be IPv4 (the default) or DUALSTACK.
717+
* The IPv4 NetworkType restricts communication between your application and the hardware security modules (HSMs) to the IPv4 protocol only. The DUALSTACK NetworkType enables communication over both IPv4 and IPv6 protocols.
718+
* To use DUALSTACK, configure your virtual private cloud (VPC) and subnets to support both IPv4 and IPv6.
719+
* This configuration involves adding IPv6 Classless Inter-Domain Routing (CIDR) blocks to the existing IPv4 CIDR blocks in your subnets.
720+
* The NetworkType you choose affects the network addressing options for your cluster. DUALSTACK provides more flexibility by supporting both IPv4 and IPv6 communication.</p>
709721
* @public
710722
*/
711723
NetworkType?: NetworkType | undefined;
@@ -1168,11 +1180,17 @@ export interface ModifyBackupAttributesResponse {
11681180
* @public
11691181
*/
11701182
export interface ModifyClusterRequest {
1183+
/**
1184+
* <p>The desired HSM type of the cluster.</p>
1185+
* @public
1186+
*/
1187+
HsmType?: string | undefined;
1188+
11711189
/**
11721190
* <p>A policy that defines how the service retains backups.</p>
11731191
* @public
11741192
*/
1175-
BackupRetentionPolicy: BackupRetentionPolicy | undefined;
1193+
BackupRetentionPolicy?: BackupRetentionPolicy | undefined;
11761194

11771195
/**
11781196
* <p>The identifier (ID) of the cluster that you want to modify. To find the cluster ID, use

clients/client-cloudhsm-v2/src/protocols/Aws_json1_1.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -947,6 +947,7 @@ const de_Cluster = (output: any, context: __SerdeContext): Cluster => {
947947
ClusterId: __expectString,
948948
CreateTimestamp: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
949949
HsmType: __expectString,
950+
HsmTypeRollbackExpiration: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
950951
Hsms: _json,
951952
Mode: __expectString,
952953
NetworkType: __expectString,

codegen/sdk-codegen/aws-models/cloudhsm-v2.json

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1437,6 +1437,12 @@
14371437
"smithy.api#documentation": "<p>The type of HSM that the cluster contains.</p>"
14381438
}
14391439
},
1440+
"HsmTypeRollbackExpiration": {
1441+
"target": "com.amazonaws.cloudhsmv2#Timestamp",
1442+
"traits": {
1443+
"smithy.api#documentation": "<p>The timestamp until when the cluster can be rolled back to its original HSM type.</p>"
1444+
}
1445+
},
14401446
"PreCoPassword": {
14411447
"target": "com.amazonaws.cloudhsmv2#PreCoPassword",
14421448
"traits": {
@@ -1482,7 +1488,7 @@
14821488
"NetworkType": {
14831489
"target": "com.amazonaws.cloudhsmv2#NetworkType",
14841490
"traits": {
1485-
"smithy.api#documentation": "<p>The cluster's NetworkType can be set to either IPV4 (which is the default) or DUALSTACK.\n When set to IPV4, communication between your application and the Hardware Security Modules (HSMs) is restricted to the IPv4 protocol only.\n In contrast, the DUALSTACK network type enables communication over both the IPv4 and IPv6 protocols.\n To use the DUALSTACK option, you'll need to configure your Virtual Private Cloud (VPC) and subnets to support both IPv4 and IPv6. This involves adding IPv6 Classless Inter-Domain Routing (CIDR) blocks to the existing IPv4 CIDR blocks in your subnets.\n The choice between IPV4 and DUALSTACK network types determines the flexibility of the network addressing setup for your cluster. The DUALSTACK option provides more flexibility by allowing both IPv4 and IPv6 communication.</p>"
1491+
"smithy.api#documentation": "<p>The cluster's NetworkType can be IPv4 (the default) or DUALSTACK.\n The IPv4 NetworkType restricts communication between your application and the hardware security modules (HSMs) to the IPv4 protocol only. The DUALSTACK NetworkType enables communication over both IPv4 and IPv6 protocols.\n To use DUALSTACK, configure your virtual private cloud (VPC) and subnets to support both IPv4 and IPv6.\n This configuration involves adding IPv6 Classless Inter-Domain Routing (CIDR) blocks to the existing IPv4 CIDR blocks in your subnets.\n The NetworkType you choose affects the network addressing options for your cluster. DUALSTACK provides more flexibility by supporting both IPv4 and IPv6 communication.</p>"
14861492
}
14871493
},
14881494
"Certificates": {
@@ -2483,6 +2489,12 @@
24832489
"smithy.api#required": {}
24842490
}
24852491
},
2492+
"HsmType": {
2493+
"target": "com.amazonaws.cloudhsmv2#HsmType",
2494+
"traits": {
2495+
"smithy.api#documentation": "<p>The type of HSM.</p>"
2496+
}
2497+
},
24862498
"State": {
24872499
"target": "com.amazonaws.cloudhsmv2#HsmState",
24882500
"traits": {
@@ -2838,11 +2850,16 @@
28382850
"com.amazonaws.cloudhsmv2#ModifyClusterRequest": {
28392851
"type": "structure",
28402852
"members": {
2853+
"HsmType": {
2854+
"target": "com.amazonaws.cloudhsmv2#HsmType",
2855+
"traits": {
2856+
"smithy.api#documentation": "<p>The desired HSM type of the cluster.</p>"
2857+
}
2858+
},
28412859
"BackupRetentionPolicy": {
28422860
"target": "com.amazonaws.cloudhsmv2#BackupRetentionPolicy",
28432861
"traits": {
2844-
"smithy.api#documentation": "<p>A policy that defines how the service retains backups.</p>",
2845-
"smithy.api#required": {}
2862+
"smithy.api#documentation": "<p>A policy that defines how the service retains backups.</p>"
28462863
}
28472864
},
28482865
"ClusterId": {

0 commit comments

Comments
 (0)