aws-sdk-cloudhsmv2 1.30.0 → 1.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7324a55d0570f982e1801db0f6436f1a871ed699ef2cbb450612485f585c6d84
4
- data.tar.gz: d85811438bd8b5fe12b1d67700849a487cea2841ca1e786b15ef5cfc4918ccfa
3
+ metadata.gz: d6067f89da19df6f5e4541041c928413df3524459d234dff278c627f272814c7
4
+ data.tar.gz: 9ba74d44944d0d848084cbd11037a5e2ba7a8c2efd407d822e4726b1cfc244b8
5
5
  SHA512:
6
- metadata.gz: 33b9a1076d6d84dc544390642670ff7e548078ba30e5264847a1e2df2587527c2034976a9cb8c91eb7391cc69e3f7912252c508b0e14e18f81bccb2784074031
7
- data.tar.gz: 1da2a0613928b9350d8c562f6434cc1417343451d652b7acdc9845d342bd707468c17ac28b09a842f0eb1419d8ec77c94564a5cc40485eca918db472a2021830
6
+ metadata.gz: 4ee443d5b4e217ed44b021545e6e2dffe3165de5259104439cbca121e128292ac3f43f995e41cde877068bbd6a2cfd5d968e99e830921f078719f61b3802b63b
7
+ data.tar.gz: 55f86adbf106dfea17d4b4fe9d33441d9c8fdf565e9694fbbb1f98bff6f48e5022aab003a441d3f7676f72fe2597f2686aabb9e97b7de43fb04ddd90a4712932
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-cloudhsmv2/customizations'
48
48
  # @!group service
49
49
  module Aws::CloudHSMV2
50
50
 
51
- GEM_VERSION = '1.30.0'
51
+ GEM_VERSION = '1.31.0'
52
52
 
53
53
  end
@@ -386,14 +386,8 @@ module Aws::CloudHSMV2
386
386
 
387
387
  # Creates a new AWS CloudHSM cluster.
388
388
  #
389
- # @option params [required, Array<String>] :subnet_ids
390
- # The identifiers (IDs) of the subnets where you are creating the
391
- # cluster. You must specify at least one subnet. If you specify multiple
392
- # subnets, they must meet the following criteria:
393
- #
394
- # * All subnets must be in the same virtual private cloud (VPC).
395
- #
396
- # * You can specify only one subnet per Availability Zone.
389
+ # @option params [Types::BackupRetentionPolicy] :backup_retention_policy
390
+ # A policy that defines how the service retains backups.
397
391
  #
398
392
  # @option params [required, String] :hsm_type
399
393
  # The type of HSM to use in the cluster. Currently the only allowed
@@ -404,6 +398,15 @@ module Aws::CloudHSMV2
404
398
  # to restore the cluster from a backup instead of creating a new
405
399
  # cluster. To find the backup ID, use DescribeBackups.
406
400
  #
401
+ # @option params [required, Array<String>] :subnet_ids
402
+ # The identifiers (IDs) of the subnets where you are creating the
403
+ # cluster. You must specify at least one subnet. If you specify multiple
404
+ # subnets, they must meet the following criteria:
405
+ #
406
+ # * All subnets must be in the same virtual private cloud (VPC).
407
+ #
408
+ # * You can specify only one subnet per Availability Zone.
409
+ #
407
410
  # @option params [Array<Types::Tag>] :tag_list
408
411
  # Tags to apply to the CloudHSM cluster during creation.
409
412
  #
@@ -414,9 +417,13 @@ module Aws::CloudHSMV2
414
417
  # @example Request syntax with placeholder values
415
418
  #
416
419
  # resp = client.create_cluster({
417
- # subnet_ids: ["SubnetId"], # required
420
+ # backup_retention_policy: {
421
+ # type: "DAYS", # accepts DAYS
422
+ # value: "BackupRetentionValue",
423
+ # },
418
424
  # hsm_type: "HsmType", # required
419
425
  # source_backup_id: "BackupId",
426
+ # subnet_ids: ["SubnetId"], # required
420
427
  # tag_list: [
421
428
  # {
422
429
  # key: "TagKey", # required
@@ -428,6 +435,8 @@ module Aws::CloudHSMV2
428
435
  # @example Response structure
429
436
  #
430
437
  # resp.cluster.backup_policy #=> String, one of "DEFAULT"
438
+ # resp.cluster.backup_retention_policy.type #=> String, one of "DAYS"
439
+ # resp.cluster.backup_retention_policy.value #=> String
431
440
  # resp.cluster.cluster_id #=> String
432
441
  # resp.cluster.create_timestamp #=> Time
433
442
  # resp.cluster.hsms #=> Array
@@ -540,6 +549,7 @@ module Aws::CloudHSMV2
540
549
  # resp.backup.cluster_id #=> String
541
550
  # resp.backup.create_timestamp #=> Time
542
551
  # resp.backup.copy_timestamp #=> Time
552
+ # resp.backup.never_expires #=> Boolean
543
553
  # resp.backup.source_region #=> String
544
554
  # resp.backup.source_backup #=> String
545
555
  # resp.backup.source_cluster #=> String
@@ -579,6 +589,8 @@ module Aws::CloudHSMV2
579
589
  # @example Response structure
580
590
  #
581
591
  # resp.cluster.backup_policy #=> String, one of "DEFAULT"
592
+ # resp.cluster.backup_retention_policy.type #=> String, one of "DAYS"
593
+ # resp.cluster.backup_retention_policy.value #=> String
582
594
  # resp.cluster.cluster_id #=> String
583
595
  # resp.cluster.create_timestamp #=> Time
584
596
  # resp.cluster.hsms #=> Array
@@ -697,6 +709,11 @@ module Aws::CloudHSMV2
697
709
  # Use the `states` filter to return only backups that match the
698
710
  # specified state.
699
711
  #
712
+ # Use the `neverExpires` filter to return backups filtered by the value
713
+ # in the `neverExpires` parameter. `True` returns all backups exempt
714
+ # from the backup retention policy. `False` returns all backups with a
715
+ # backup retention policy defined at the cluster.
716
+ #
700
717
  # @option params [Boolean] :sort_ascending
701
718
  # Designates whether or not to sort the return backups by ascending
702
719
  # chronological order of generation.
@@ -727,6 +744,7 @@ module Aws::CloudHSMV2
727
744
  # resp.backups[0].cluster_id #=> String
728
745
  # resp.backups[0].create_timestamp #=> Time
729
746
  # resp.backups[0].copy_timestamp #=> Time
747
+ # resp.backups[0].never_expires #=> Boolean
730
748
  # resp.backups[0].source_region #=> String
731
749
  # resp.backups[0].source_backup #=> String
732
750
  # resp.backups[0].source_cluster #=> String
@@ -797,6 +815,8 @@ module Aws::CloudHSMV2
797
815
  #
798
816
  # resp.clusters #=> Array
799
817
  # resp.clusters[0].backup_policy #=> String, one of "DEFAULT"
818
+ # resp.clusters[0].backup_retention_policy.type #=> String, one of "DAYS"
819
+ # resp.clusters[0].backup_retention_policy.value #=> String
800
820
  # resp.clusters[0].cluster_id #=> String
801
821
  # resp.clusters[0].create_timestamp #=> Time
802
822
  # resp.clusters[0].hsms #=> Array
@@ -938,6 +958,120 @@ module Aws::CloudHSMV2
938
958
  req.send_request(options)
939
959
  end
940
960
 
961
+ # Modifies attributes for AWS CloudHSM backup.
962
+ #
963
+ # @option params [required, String] :backup_id
964
+ # The identifier (ID) of the backup to modify. To find the ID of a
965
+ # backup, use the DescribeBackups operation.
966
+ #
967
+ # @option params [required, Boolean] :never_expires
968
+ # Specifies whether the service should exempt a backup from the
969
+ # retention policy for the cluster. `True` exempts a backup from the
970
+ # retention policy. `False` means the service applies the backup
971
+ # retention policy defined at the cluster.
972
+ #
973
+ # @return [Types::ModifyBackupAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
974
+ #
975
+ # * {Types::ModifyBackupAttributesResponse#backup #backup} => Types::Backup
976
+ #
977
+ # @example Request syntax with placeholder values
978
+ #
979
+ # resp = client.modify_backup_attributes({
980
+ # backup_id: "BackupId", # required
981
+ # never_expires: false, # required
982
+ # })
983
+ #
984
+ # @example Response structure
985
+ #
986
+ # resp.backup.backup_id #=> String
987
+ # resp.backup.backup_state #=> String, one of "CREATE_IN_PROGRESS", "READY", "DELETED", "PENDING_DELETION"
988
+ # resp.backup.cluster_id #=> String
989
+ # resp.backup.create_timestamp #=> Time
990
+ # resp.backup.copy_timestamp #=> Time
991
+ # resp.backup.never_expires #=> Boolean
992
+ # resp.backup.source_region #=> String
993
+ # resp.backup.source_backup #=> String
994
+ # resp.backup.source_cluster #=> String
995
+ # resp.backup.delete_timestamp #=> Time
996
+ # resp.backup.tag_list #=> Array
997
+ # resp.backup.tag_list[0].key #=> String
998
+ # resp.backup.tag_list[0].value #=> String
999
+ #
1000
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/ModifyBackupAttributes AWS API Documentation
1001
+ #
1002
+ # @overload modify_backup_attributes(params = {})
1003
+ # @param [Hash] params ({})
1004
+ def modify_backup_attributes(params = {}, options = {})
1005
+ req = build_request(:modify_backup_attributes, params)
1006
+ req.send_request(options)
1007
+ end
1008
+
1009
+ # Modifies AWS CloudHSM cluster.
1010
+ #
1011
+ # @option params [required, Types::BackupRetentionPolicy] :backup_retention_policy
1012
+ # A policy that defines how the service retains backups.
1013
+ #
1014
+ # @option params [required, String] :cluster_id
1015
+ # The identifier (ID) of the cluster that you want to modify. To find
1016
+ # the cluster ID, use DescribeClusters.
1017
+ #
1018
+ # @return [Types::ModifyClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1019
+ #
1020
+ # * {Types::ModifyClusterResponse#cluster #cluster} => Types::Cluster
1021
+ #
1022
+ # @example Request syntax with placeholder values
1023
+ #
1024
+ # resp = client.modify_cluster({
1025
+ # backup_retention_policy: { # required
1026
+ # type: "DAYS", # accepts DAYS
1027
+ # value: "BackupRetentionValue",
1028
+ # },
1029
+ # cluster_id: "ClusterId", # required
1030
+ # })
1031
+ #
1032
+ # @example Response structure
1033
+ #
1034
+ # resp.cluster.backup_policy #=> String, one of "DEFAULT"
1035
+ # resp.cluster.backup_retention_policy.type #=> String, one of "DAYS"
1036
+ # resp.cluster.backup_retention_policy.value #=> String
1037
+ # resp.cluster.cluster_id #=> String
1038
+ # resp.cluster.create_timestamp #=> Time
1039
+ # resp.cluster.hsms #=> Array
1040
+ # resp.cluster.hsms[0].availability_zone #=> String
1041
+ # resp.cluster.hsms[0].cluster_id #=> String
1042
+ # resp.cluster.hsms[0].subnet_id #=> String
1043
+ # resp.cluster.hsms[0].eni_id #=> String
1044
+ # resp.cluster.hsms[0].eni_ip #=> String
1045
+ # resp.cluster.hsms[0].hsm_id #=> String
1046
+ # resp.cluster.hsms[0].state #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DEGRADED", "DELETE_IN_PROGRESS", "DELETED"
1047
+ # resp.cluster.hsms[0].state_message #=> String
1048
+ # resp.cluster.hsm_type #=> String
1049
+ # resp.cluster.pre_co_password #=> String
1050
+ # resp.cluster.security_group #=> String
1051
+ # resp.cluster.source_backup_id #=> String
1052
+ # resp.cluster.state #=> String, one of "CREATE_IN_PROGRESS", "UNINITIALIZED", "INITIALIZE_IN_PROGRESS", "INITIALIZED", "ACTIVE", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "DELETED", "DEGRADED"
1053
+ # resp.cluster.state_message #=> String
1054
+ # resp.cluster.subnet_mapping #=> Hash
1055
+ # resp.cluster.subnet_mapping["ExternalAz"] #=> String
1056
+ # resp.cluster.vpc_id #=> String
1057
+ # resp.cluster.certificates.cluster_csr #=> String
1058
+ # resp.cluster.certificates.hsm_certificate #=> String
1059
+ # resp.cluster.certificates.aws_hardware_certificate #=> String
1060
+ # resp.cluster.certificates.manufacturer_hardware_certificate #=> String
1061
+ # resp.cluster.certificates.cluster_certificate #=> String
1062
+ # resp.cluster.tag_list #=> Array
1063
+ # resp.cluster.tag_list[0].key #=> String
1064
+ # resp.cluster.tag_list[0].value #=> String
1065
+ #
1066
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/ModifyCluster AWS API Documentation
1067
+ #
1068
+ # @overload modify_cluster(params = {})
1069
+ # @param [Hash] params ({})
1070
+ def modify_cluster(params = {}, options = {})
1071
+ req = build_request(:modify_cluster, params)
1072
+ req.send_request(options)
1073
+ end
1074
+
941
1075
  # Restores a specified AWS CloudHSM backup that is in the
942
1076
  # `PENDING_DELETION` state. For mor information on deleting a backup,
943
1077
  # see DeleteBackup.
@@ -963,6 +1097,7 @@ module Aws::CloudHSMV2
963
1097
  # resp.backup.cluster_id #=> String
964
1098
  # resp.backup.create_timestamp #=> Time
965
1099
  # resp.backup.copy_timestamp #=> Time
1100
+ # resp.backup.never_expires #=> Boolean
966
1101
  # resp.backup.source_region #=> String
967
1102
  # resp.backup.source_backup #=> String
968
1103
  # resp.backup.source_cluster #=> String
@@ -1055,7 +1190,7 @@ module Aws::CloudHSMV2
1055
1190
  params: params,
1056
1191
  config: config)
1057
1192
  context[:gem_name] = 'aws-sdk-cloudhsmv2'
1058
- context[:gem_version] = '1.30.0'
1193
+ context[:gem_version] = '1.31.0'
1059
1194
  Seahorse::Client::Request.new(handlers, context)
1060
1195
  end
1061
1196
 
@@ -16,8 +16,12 @@ module Aws::CloudHSMV2
16
16
  Backup = Shapes::StructureShape.new(name: 'Backup')
17
17
  BackupId = Shapes::StringShape.new(name: 'BackupId')
18
18
  BackupPolicy = Shapes::StringShape.new(name: 'BackupPolicy')
19
+ BackupRetentionPolicy = Shapes::StructureShape.new(name: 'BackupRetentionPolicy')
20
+ BackupRetentionType = Shapes::StringShape.new(name: 'BackupRetentionType')
21
+ BackupRetentionValue = Shapes::StringShape.new(name: 'BackupRetentionValue')
19
22
  BackupState = Shapes::StringShape.new(name: 'BackupState')
20
23
  Backups = Shapes::ListShape.new(name: 'Backups')
24
+ BackupsMaxSize = Shapes::IntegerShape.new(name: 'BackupsMaxSize')
21
25
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
22
26
  Cert = Shapes::StringShape.new(name: 'Cert')
23
27
  Certificates = Shapes::StructureShape.new(name: 'Certificates')
@@ -31,6 +35,7 @@ module Aws::CloudHSMV2
31
35
  ClusterId = Shapes::StringShape.new(name: 'ClusterId')
32
36
  ClusterState = Shapes::StringShape.new(name: 'ClusterState')
33
37
  Clusters = Shapes::ListShape.new(name: 'Clusters')
38
+ ClustersMaxSize = Shapes::IntegerShape.new(name: 'ClustersMaxSize')
34
39
  CopyBackupToRegionRequest = Shapes::StructureShape.new(name: 'CopyBackupToRegionRequest')
35
40
  CopyBackupToRegionResponse = Shapes::StructureShape.new(name: 'CopyBackupToRegionResponse')
36
41
  CreateClusterRequest = Shapes::StructureShape.new(name: 'CreateClusterRequest')
@@ -64,6 +69,10 @@ module Aws::CloudHSMV2
64
69
  ListTagsRequest = Shapes::StructureShape.new(name: 'ListTagsRequest')
65
70
  ListTagsResponse = Shapes::StructureShape.new(name: 'ListTagsResponse')
66
71
  MaxSize = Shapes::IntegerShape.new(name: 'MaxSize')
72
+ ModifyBackupAttributesRequest = Shapes::StructureShape.new(name: 'ModifyBackupAttributesRequest')
73
+ ModifyBackupAttributesResponse = Shapes::StructureShape.new(name: 'ModifyBackupAttributesResponse')
74
+ ModifyClusterRequest = Shapes::StructureShape.new(name: 'ModifyClusterRequest')
75
+ ModifyClusterResponse = Shapes::StructureShape.new(name: 'ModifyClusterResponse')
67
76
  NextToken = Shapes::StringShape.new(name: 'NextToken')
68
77
  PreCoPassword = Shapes::StringShape.new(name: 'PreCoPassword')
69
78
  Region = Shapes::StringShape.new(name: 'Region')
@@ -94,6 +103,7 @@ module Aws::CloudHSMV2
94
103
  Backup.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, location_name: "ClusterId"))
95
104
  Backup.add_member(:create_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreateTimestamp"))
96
105
  Backup.add_member(:copy_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CopyTimestamp"))
106
+ Backup.add_member(:never_expires, Shapes::ShapeRef.new(shape: Boolean, location_name: "NeverExpires"))
97
107
  Backup.add_member(:source_region, Shapes::ShapeRef.new(shape: Region, location_name: "SourceRegion"))
98
108
  Backup.add_member(:source_backup, Shapes::ShapeRef.new(shape: BackupId, location_name: "SourceBackup"))
99
109
  Backup.add_member(:source_cluster, Shapes::ShapeRef.new(shape: ClusterId, location_name: "SourceCluster"))
@@ -101,6 +111,10 @@ module Aws::CloudHSMV2
101
111
  Backup.add_member(:tag_list, Shapes::ShapeRef.new(shape: TagList, location_name: "TagList"))
102
112
  Backup.struct_class = Types::Backup
103
113
 
114
+ BackupRetentionPolicy.add_member(:type, Shapes::ShapeRef.new(shape: BackupRetentionType, location_name: "Type"))
115
+ BackupRetentionPolicy.add_member(:value, Shapes::ShapeRef.new(shape: BackupRetentionValue, location_name: "Value"))
116
+ BackupRetentionPolicy.struct_class = Types::BackupRetentionPolicy
117
+
104
118
  Backups.member = Shapes::ShapeRef.new(shape: Backup)
105
119
 
106
120
  Certificates.add_member(:cluster_csr, Shapes::ShapeRef.new(shape: Cert, location_name: "ClusterCsr"))
@@ -129,6 +143,7 @@ module Aws::CloudHSMV2
129
143
  CloudHsmTagException.struct_class = Types::CloudHsmTagException
130
144
 
131
145
  Cluster.add_member(:backup_policy, Shapes::ShapeRef.new(shape: BackupPolicy, location_name: "BackupPolicy"))
146
+ Cluster.add_member(:backup_retention_policy, Shapes::ShapeRef.new(shape: BackupRetentionPolicy, location_name: "BackupRetentionPolicy"))
132
147
  Cluster.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, location_name: "ClusterId"))
133
148
  Cluster.add_member(:create_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreateTimestamp"))
134
149
  Cluster.add_member(:hsms, Shapes::ShapeRef.new(shape: Hsms, location_name: "Hsms"))
@@ -154,9 +169,10 @@ module Aws::CloudHSMV2
154
169
  CopyBackupToRegionResponse.add_member(:destination_backup, Shapes::ShapeRef.new(shape: DestinationBackup, location_name: "DestinationBackup"))
155
170
  CopyBackupToRegionResponse.struct_class = Types::CopyBackupToRegionResponse
156
171
 
157
- CreateClusterRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIds, required: true, location_name: "SubnetIds"))
172
+ CreateClusterRequest.add_member(:backup_retention_policy, Shapes::ShapeRef.new(shape: BackupRetentionPolicy, location_name: "BackupRetentionPolicy"))
158
173
  CreateClusterRequest.add_member(:hsm_type, Shapes::ShapeRef.new(shape: HsmType, required: true, location_name: "HsmType"))
159
174
  CreateClusterRequest.add_member(:source_backup_id, Shapes::ShapeRef.new(shape: BackupId, location_name: "SourceBackupId"))
175
+ CreateClusterRequest.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIds, required: true, location_name: "SubnetIds"))
160
176
  CreateClusterRequest.add_member(:tag_list, Shapes::ShapeRef.new(shape: TagList, location_name: "TagList"))
161
177
  CreateClusterRequest.struct_class = Types::CreateClusterRequest
162
178
 
@@ -193,7 +209,7 @@ module Aws::CloudHSMV2
193
209
  DeleteHsmResponse.struct_class = Types::DeleteHsmResponse
194
210
 
195
211
  DescribeBackupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
196
- DescribeBackupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxSize, location_name: "MaxResults"))
212
+ DescribeBackupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: BackupsMaxSize, location_name: "MaxResults"))
197
213
  DescribeBackupsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: Filters, location_name: "Filters"))
198
214
  DescribeBackupsRequest.add_member(:sort_ascending, Shapes::ShapeRef.new(shape: Boolean, location_name: "SortAscending"))
199
215
  DescribeBackupsRequest.struct_class = Types::DescribeBackupsRequest
@@ -204,7 +220,7 @@ module Aws::CloudHSMV2
204
220
 
205
221
  DescribeClustersRequest.add_member(:filters, Shapes::ShapeRef.new(shape: Filters, location_name: "Filters"))
206
222
  DescribeClustersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
207
- DescribeClustersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxSize, location_name: "MaxResults"))
223
+ DescribeClustersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ClustersMaxSize, location_name: "MaxResults"))
208
224
  DescribeClustersRequest.struct_class = Types::DescribeClustersRequest
209
225
 
210
226
  DescribeClustersResponse.add_member(:clusters, Shapes::ShapeRef.new(shape: Clusters, location_name: "Clusters"))
@@ -253,6 +269,20 @@ module Aws::CloudHSMV2
253
269
  ListTagsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
254
270
  ListTagsResponse.struct_class = Types::ListTagsResponse
255
271
 
272
+ ModifyBackupAttributesRequest.add_member(:backup_id, Shapes::ShapeRef.new(shape: BackupId, required: true, location_name: "BackupId"))
273
+ ModifyBackupAttributesRequest.add_member(:never_expires, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "NeverExpires"))
274
+ ModifyBackupAttributesRequest.struct_class = Types::ModifyBackupAttributesRequest
275
+
276
+ ModifyBackupAttributesResponse.add_member(:backup, Shapes::ShapeRef.new(shape: Backup, location_name: "Backup"))
277
+ ModifyBackupAttributesResponse.struct_class = Types::ModifyBackupAttributesResponse
278
+
279
+ ModifyClusterRequest.add_member(:backup_retention_policy, Shapes::ShapeRef.new(shape: BackupRetentionPolicy, required: true, location_name: "BackupRetentionPolicy"))
280
+ ModifyClusterRequest.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "ClusterId"))
281
+ ModifyClusterRequest.struct_class = Types::ModifyClusterRequest
282
+
283
+ ModifyClusterResponse.add_member(:cluster, Shapes::ShapeRef.new(shape: Cluster, location_name: "Cluster"))
284
+ ModifyClusterResponse.struct_class = Types::ModifyClusterResponse
285
+
256
286
  RestoreBackupRequest.add_member(:backup_id, Shapes::ShapeRef.new(shape: BackupId, required: true, location_name: "BackupId"))
257
287
  RestoreBackupRequest.struct_class = Types::RestoreBackupRequest
258
288
 
@@ -456,6 +486,32 @@ module Aws::CloudHSMV2
456
486
  )
457
487
  end)
458
488
 
489
+ api.add_operation(:modify_backup_attributes, Seahorse::Model::Operation.new.tap do |o|
490
+ o.name = "ModifyBackupAttributes"
491
+ o.http_method = "POST"
492
+ o.http_request_uri = "/"
493
+ o.input = Shapes::ShapeRef.new(shape: ModifyBackupAttributesRequest)
494
+ o.output = Shapes::ShapeRef.new(shape: ModifyBackupAttributesResponse)
495
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmAccessDeniedException)
496
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmInternalFailureException)
497
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmInvalidRequestException)
498
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmResourceNotFoundException)
499
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmServiceException)
500
+ end)
501
+
502
+ api.add_operation(:modify_cluster, Seahorse::Model::Operation.new.tap do |o|
503
+ o.name = "ModifyCluster"
504
+ o.http_method = "POST"
505
+ o.http_request_uri = "/"
506
+ o.input = Shapes::ShapeRef.new(shape: ModifyClusterRequest)
507
+ o.output = Shapes::ShapeRef.new(shape: ModifyClusterResponse)
508
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmAccessDeniedException)
509
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmInternalFailureException)
510
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmInvalidRequestException)
511
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmResourceNotFoundException)
512
+ o.errors << Shapes::ShapeRef.new(shape: CloudHsmServiceException)
513
+ end)
514
+
459
515
  api.add_operation(:restore_backup, Seahorse::Model::Operation.new.tap do |o|
460
516
  o.name = "RestoreBackup"
461
517
  o.http_method = "POST"
@@ -11,11 +11,12 @@ module Aws::CloudHSMV2
11
11
  module Types
12
12
 
13
13
  # Contains information about a backup of an AWS CloudHSM cluster. All
14
- # backup objects contain the BackupId, BackupState, ClusterId, and
15
- # CreateTimestamp parameters. Backups that were copied into a
16
- # destination region additionally contain the CopyTimestamp,
17
- # SourceBackup, SourceCluster, and SourceRegion paramters. A backup that
18
- # is pending deletion will include the DeleteTimestamp parameter.
14
+ # backup objects contain the `BackupId`, `BackupState`, `ClusterId`, and
15
+ # `CreateTimestamp` parameters. Backups that were copied into a
16
+ # destination region additionally contain the `CopyTimestamp`,
17
+ # `SourceBackup`, `SourceCluster`, and `SourceRegion` parameters. A
18
+ # backup that is pending deletion will include the `DeleteTimestamp`
19
+ # parameter.
19
20
  #
20
21
  # @!attribute [rw] backup_id
21
22
  # The identifier (ID) of the backup.
@@ -37,6 +38,13 @@ module Aws::CloudHSMV2
37
38
  # The date and time when the backup was copied from a source backup.
38
39
  # @return [Time]
39
40
  #
41
+ # @!attribute [rw] never_expires
42
+ # Specifies whether the service should exempt a backup from the
43
+ # retention policy for the cluster. `True` exempts a backup from the
44
+ # retention policy. `False` means the service applies the backup
45
+ # retention policy defined at the cluster.
46
+ # @return [Boolean]
47
+ #
40
48
  # @!attribute [rw] source_region
41
49
  # The AWS Region that contains the source backup from which the new
42
50
  # backup was copied.
@@ -68,6 +76,7 @@ module Aws::CloudHSMV2
68
76
  :cluster_id,
69
77
  :create_timestamp,
70
78
  :copy_timestamp,
79
+ :never_expires,
71
80
  :source_region,
72
81
  :source_backup,
73
82
  :source_cluster,
@@ -77,6 +86,34 @@ module Aws::CloudHSMV2
77
86
  include Aws::Structure
78
87
  end
79
88
 
89
+ # A policy that defines the number of days to retain backups.
90
+ #
91
+ # @note When making an API call, you may pass BackupRetentionPolicy
92
+ # data as a hash:
93
+ #
94
+ # {
95
+ # type: "DAYS", # accepts DAYS
96
+ # value: "BackupRetentionValue",
97
+ # }
98
+ #
99
+ # @!attribute [rw] type
100
+ # The type of backup retention policy. For the `DAYS` type, the value
101
+ # is the number of days to retain backups.
102
+ # @return [String]
103
+ #
104
+ # @!attribute [rw] value
105
+ # Use a value between 7 - 379.
106
+ # @return [String]
107
+ #
108
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/BackupRetentionPolicy AWS API Documentation
109
+ #
110
+ class BackupRetentionPolicy < Struct.new(
111
+ :type,
112
+ :value)
113
+ SENSITIVE = []
114
+ include Aws::Structure
115
+ end
116
+
80
117
  # Contains one or more certificates or a certificate signing request
81
118
  # (CSR).
82
119
  #
@@ -203,6 +240,10 @@ module Aws::CloudHSMV2
203
240
  # The cluster's backup policy.
204
241
  # @return [String]
205
242
  #
243
+ # @!attribute [rw] backup_retention_policy
244
+ # A policy that defines how the service retains backups.
245
+ # @return [Types::BackupRetentionPolicy]
246
+ #
206
247
  # @!attribute [rw] cluster_id
207
248
  # The cluster's identifier (ID).
208
249
  # @return [String]
@@ -264,6 +305,7 @@ module Aws::CloudHSMV2
264
305
  #
265
306
  class Cluster < Struct.new(
266
307
  :backup_policy,
308
+ :backup_retention_policy,
267
309
  :cluster_id,
268
310
  :create_timestamp,
269
311
  :hsms,
@@ -344,9 +386,13 @@ module Aws::CloudHSMV2
344
386
  # data as a hash:
345
387
  #
346
388
  # {
347
- # subnet_ids: ["SubnetId"], # required
389
+ # backup_retention_policy: {
390
+ # type: "DAYS", # accepts DAYS
391
+ # value: "BackupRetentionValue",
392
+ # },
348
393
  # hsm_type: "HsmType", # required
349
394
  # source_backup_id: "BackupId",
395
+ # subnet_ids: ["SubnetId"], # required
350
396
  # tag_list: [
351
397
  # {
352
398
  # key: "TagKey", # required
@@ -355,15 +401,9 @@ module Aws::CloudHSMV2
355
401
  # ],
356
402
  # }
357
403
  #
358
- # @!attribute [rw] subnet_ids
359
- # The identifiers (IDs) of the subnets where you are creating the
360
- # cluster. You must specify at least one subnet. If you specify
361
- # multiple subnets, they must meet the following criteria:
362
- #
363
- # * All subnets must be in the same virtual private cloud (VPC).
364
- #
365
- # * You can specify only one subnet per Availability Zone.
366
- # @return [Array<String>]
404
+ # @!attribute [rw] backup_retention_policy
405
+ # A policy that defines how the service retains backups.
406
+ # @return [Types::BackupRetentionPolicy]
367
407
  #
368
408
  # @!attribute [rw] hsm_type
369
409
  # The type of HSM to use in the cluster. Currently the only allowed
@@ -376,6 +416,16 @@ module Aws::CloudHSMV2
376
416
  # cluster. To find the backup ID, use DescribeBackups.
377
417
  # @return [String]
378
418
  #
419
+ # @!attribute [rw] subnet_ids
420
+ # The identifiers (IDs) of the subnets where you are creating the
421
+ # cluster. You must specify at least one subnet. If you specify
422
+ # multiple subnets, they must meet the following criteria:
423
+ #
424
+ # * All subnets must be in the same virtual private cloud (VPC).
425
+ #
426
+ # * You can specify only one subnet per Availability Zone.
427
+ # @return [Array<String>]
428
+ #
379
429
  # @!attribute [rw] tag_list
380
430
  # Tags to apply to the CloudHSM cluster during creation.
381
431
  # @return [Array<Types::Tag>]
@@ -383,9 +433,10 @@ module Aws::CloudHSMV2
383
433
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/CreateClusterRequest AWS API Documentation
384
434
  #
385
435
  class CreateClusterRequest < Struct.new(
386
- :subnet_ids,
436
+ :backup_retention_policy,
387
437
  :hsm_type,
388
438
  :source_backup_id,
439
+ :subnet_ids,
389
440
  :tag_list)
390
441
  SENSITIVE = []
391
442
  include Aws::Structure
@@ -606,6 +657,11 @@ module Aws::CloudHSMV2
606
657
  #
607
658
  # Use the `states` filter to return only backups that match the
608
659
  # specified state.
660
+ #
661
+ # Use the `neverExpires` filter to return backups filtered by the
662
+ # value in the `neverExpires` parameter. `True` returns all backups
663
+ # exempt from the backup retention policy. `False` returns all backups
664
+ # with a backup retention policy defined at the cluster.
609
665
  # @return [Hash<String,Array<String>>]
610
666
  #
611
667
  # @!attribute [rw] sort_ascending
@@ -901,6 +957,94 @@ module Aws::CloudHSMV2
901
957
  include Aws::Structure
902
958
  end
903
959
 
960
+ # @note When making an API call, you may pass ModifyBackupAttributesRequest
961
+ # data as a hash:
962
+ #
963
+ # {
964
+ # backup_id: "BackupId", # required
965
+ # never_expires: false, # required
966
+ # }
967
+ #
968
+ # @!attribute [rw] backup_id
969
+ # The identifier (ID) of the backup to modify. To find the ID of a
970
+ # backup, use the DescribeBackups operation.
971
+ # @return [String]
972
+ #
973
+ # @!attribute [rw] never_expires
974
+ # Specifies whether the service should exempt a backup from the
975
+ # retention policy for the cluster. `True` exempts a backup from the
976
+ # retention policy. `False` means the service applies the backup
977
+ # retention policy defined at the cluster.
978
+ # @return [Boolean]
979
+ #
980
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/ModifyBackupAttributesRequest AWS API Documentation
981
+ #
982
+ class ModifyBackupAttributesRequest < Struct.new(
983
+ :backup_id,
984
+ :never_expires)
985
+ SENSITIVE = []
986
+ include Aws::Structure
987
+ end
988
+
989
+ # @!attribute [rw] backup
990
+ # Contains information about a backup of an AWS CloudHSM cluster. All
991
+ # backup objects contain the `BackupId`, `BackupState`, `ClusterId`,
992
+ # and `CreateTimestamp` parameters. Backups that were copied into a
993
+ # destination region additionally contain the `CopyTimestamp`,
994
+ # `SourceBackup`, `SourceCluster`, and `SourceRegion` parameters. A
995
+ # backup that is pending deletion will include the `DeleteTimestamp`
996
+ # parameter.
997
+ # @return [Types::Backup]
998
+ #
999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/ModifyBackupAttributesResponse AWS API Documentation
1000
+ #
1001
+ class ModifyBackupAttributesResponse < Struct.new(
1002
+ :backup)
1003
+ SENSITIVE = []
1004
+ include Aws::Structure
1005
+ end
1006
+
1007
+ # @note When making an API call, you may pass ModifyClusterRequest
1008
+ # data as a hash:
1009
+ #
1010
+ # {
1011
+ # backup_retention_policy: { # required
1012
+ # type: "DAYS", # accepts DAYS
1013
+ # value: "BackupRetentionValue",
1014
+ # },
1015
+ # cluster_id: "ClusterId", # required
1016
+ # }
1017
+ #
1018
+ # @!attribute [rw] backup_retention_policy
1019
+ # A policy that defines how the service retains backups.
1020
+ # @return [Types::BackupRetentionPolicy]
1021
+ #
1022
+ # @!attribute [rw] cluster_id
1023
+ # The identifier (ID) of the cluster that you want to modify. To find
1024
+ # the cluster ID, use DescribeClusters.
1025
+ # @return [String]
1026
+ #
1027
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/ModifyClusterRequest AWS API Documentation
1028
+ #
1029
+ class ModifyClusterRequest < Struct.new(
1030
+ :backup_retention_policy,
1031
+ :cluster_id)
1032
+ SENSITIVE = []
1033
+ include Aws::Structure
1034
+ end
1035
+
1036
+ # @!attribute [rw] cluster
1037
+ # Contains information about an AWS CloudHSM cluster.
1038
+ # @return [Types::Cluster]
1039
+ #
1040
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/ModifyClusterResponse AWS API Documentation
1041
+ #
1042
+ class ModifyClusterResponse < Struct.new(
1043
+ :cluster)
1044
+ SENSITIVE = []
1045
+ include Aws::Structure
1046
+ end
1047
+
904
1048
  # @note When making an API call, you may pass RestoreBackupRequest
905
1049
  # data as a hash:
906
1050
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cloudhsmv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.30.0
4
+ version: 1.31.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: 2020-09-30 00:00:00.000000000 Z
11
+ date: 2020-11-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core