Class: AWSCDK::DocDB::DatabaseClusterProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
doc_db/database_cluster_props.rb

Overview

Properties for a new database cluster.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(master_user:, vpc:, backup: nil, ca_certificate: nil, cloud_watch_logs_retention: nil, cloud_watch_logs_retention_role: nil, copy_tags_to_snapshot: nil, db_cluster_name: nil, deletion_protection: nil, enable_performance_insights: nil, engine_version: nil, export_audit_logs_to_cloud_watch: nil, export_profiler_logs_to_cloud_watch: nil, instance_identifier_base: nil, instance_removal_policy: nil, instances: nil, instance_type: nil, kms_key: nil, parameter_group: nil, port: nil, preferred_maintenance_window: nil, removal_policy: nil, security_group: nil, security_group_removal_policy: nil, serverless_v2_scaling_configuration: nil, storage_encrypted: nil, storage_type: nil, vpc_subnets: nil) ⇒ DatabaseClusterProps

Returns a new instance of DatabaseClusterProps.

Parameters:

  • master_user (AWSCDK::DocDB::Login)

    Username and password for the administrative user.

  • vpc (AWSCDK::EC2::IVPC)

    What subnets to run the DocumentDB instances in.

  • backup (AWSCDK::DocDB::BackupProps, nil) (defaults to: nil)

    Backup settings.

  • ca_certificate (AWSCDK::RDS::CaCertificate, nil) (defaults to: nil)

    The identifier of the CA certificate used for the instances.

  • cloud_watch_logs_retention (AWSCDK::Logs::RetentionDays, nil) (defaults to: nil)

    The number of days log events are kept in CloudWatch Logs.

  • cloud_watch_logs_retention_role (AWSCDK::IAM::IRole, nil) (defaults to: nil)

    The IAM role for the Lambda function associated with the custom resource that sets the retention policy.

  • copy_tags_to_snapshot (Boolean, nil) (defaults to: nil)

    Whether to copy tags to the snapshot when a snapshot is created.

  • db_cluster_name (String, nil) (defaults to: nil)

    An optional identifier for the cluster.

  • deletion_protection (Boolean, nil) (defaults to: nil)

    Specifies whether this cluster can be deleted.

  • enable_performance_insights (Boolean, nil) (defaults to: nil)

    A value that indicates whether to enable Performance Insights for the instances in the DB Cluster.

  • engine_version (String, nil) (defaults to: nil)

    What version of the database to start.

  • export_audit_logs_to_cloud_watch (Boolean, nil) (defaults to: nil)

    Whether the audit logs should be exported to CloudWatch.

  • export_profiler_logs_to_cloud_watch (Boolean, nil) (defaults to: nil)

    Whether the profiler logs should be exported to CloudWatch.

  • instance_identifier_base (String, nil) (defaults to: nil)

    Base identifier for instances.

  • instance_removal_policy (AWSCDK::RemovalPolicy, nil) (defaults to: nil)

    The removal policy to apply to the cluster's instances.

  • instances (Numeric, nil) (defaults to: nil)

    Number of DocDB compute instances.

  • instance_type (AWSCDK::EC2::InstanceType, nil) (defaults to: nil)

    What type of instance to start for the replicas.

  • kms_key (AWSCDK::KMS::IKey, nil) (defaults to: nil)

    The KMS key for storage encryption.

  • parameter_group (AWSCDK::Interfaces::AWSDocdb::IDBClusterParameterGroupRef, nil) (defaults to: nil)

    The DB parameter group to associate with the instance.

  • port (Numeric, nil) (defaults to: nil)

    The port the DocumentDB cluster will listen on.

  • preferred_maintenance_window (String, nil) (defaults to: nil)

    A weekly time range in which maintenance should preferably execute.

  • removal_policy (AWSCDK::RemovalPolicy, nil) (defaults to: nil)

    The removal policy to apply when the cluster and its instances are removed or replaced during a stack update, or when the stack is deleted.

  • security_group (AWSCDK::EC2::ISecurityGroup, nil) (defaults to: nil)

    Security group.

  • security_group_removal_policy (AWSCDK::RemovalPolicy, nil) (defaults to: nil)

    The removal policy to apply to the cluster's security group.

  • serverless_v2_scaling_configuration (AWSCDK::DocDB::ServerlessV2ScalingConfiguration, nil) (defaults to: nil)

    ServerlessV2 scaling configuration.

  • storage_encrypted (Boolean, nil) (defaults to: nil)

    Whether to enable storage encryption.

  • storage_type (AWSCDK::DocDB::StorageType, nil) (defaults to: nil)

    The storage type of the DocDB cluster.

  • vpc_subnets (AWSCDK::EC2::SubnetSelection, nil) (defaults to: nil)

    Where to place the instances within the VPC.



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# File 'doc_db/database_cluster_props.rb', line 35

def initialize(master_user:, vpc:, backup: nil, ca_certificate: nil, cloud_watch_logs_retention: nil, cloud_watch_logs_retention_role: nil, copy_tags_to_snapshot: nil, db_cluster_name: nil, deletion_protection: nil, enable_performance_insights: nil, engine_version: nil, export_audit_logs_to_cloud_watch: nil, export_profiler_logs_to_cloud_watch: nil, instance_identifier_base: nil, instance_removal_policy: nil, instances: nil, instance_type: nil, kms_key: nil, parameter_group: nil, port: nil, preferred_maintenance_window: nil, removal_policy: nil, security_group: nil, security_group_removal_policy: nil, serverless_v2_scaling_configuration: nil, storage_encrypted: nil, storage_type: nil, vpc_subnets: nil)
  @master_user = master_user.is_a?(Hash) ? ::AWSCDK::DocDB::Login.new(**master_user.transform_keys(&:to_sym)) : master_user
  Jsii::Type.check_type(@master_user, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZG9jZGIuTG9naW4ifQ==")), "masterUser")
  @vpc = vpc
  Jsii::Type.check_type(@vpc, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWMyLklWcGMifQ==")), "vpc")
  @backup = backup.is_a?(Hash) ? ::AWSCDK::DocDB::BackupProps.new(**backup.transform_keys(&:to_sym)) : backup
  Jsii::Type.check_type(@backup, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZG9jZGIuQmFja3VwUHJvcHMifQ==")), "backup") unless @backup.nil?
  @ca_certificate = ca_certificate
  Jsii::Type.check_type(@ca_certificate, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfcmRzLkNhQ2VydGlmaWNhdGUifQ==")), "caCertificate") unless @ca_certificate.nil?
  @cloud_watch_logs_retention = cloud_watch_logs_retention
  Jsii::Type.check_type(@cloud_watch_logs_retention, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbG9ncy5SZXRlbnRpb25EYXlzIn0=")), "cloudWatchLogsRetention") unless @cloud_watch_logs_retention.nil?
  @cloud_watch_logs_retention_role = cloud_watch_logs_retention_role
  Jsii::Type.check_type(@cloud_watch_logs_retention_role, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklSb2xlIn0=")), "cloudWatchLogsRetentionRole") unless @cloud_watch_logs_retention_role.nil?
  @copy_tags_to_snapshot = copy_tags_to_snapshot
  Jsii::Type.check_type(@copy_tags_to_snapshot, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "copyTagsToSnapshot") unless @copy_tags_to_snapshot.nil?
  @db_cluster_name = db_cluster_name
  Jsii::Type.check_type(@db_cluster_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dbClusterName") unless @db_cluster_name.nil?
  @deletion_protection = deletion_protection
  Jsii::Type.check_type(@deletion_protection, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "deletionProtection") unless @deletion_protection.nil?
  @enable_performance_insights = enable_performance_insights
  Jsii::Type.check_type(@enable_performance_insights, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "enablePerformanceInsights") unless @enable_performance_insights.nil?
  @engine_version = engine_version
  Jsii::Type.check_type(@engine_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "engineVersion") unless @engine_version.nil?
  @export_audit_logs_to_cloud_watch = export_audit_logs_to_cloud_watch
  Jsii::Type.check_type(@export_audit_logs_to_cloud_watch, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "exportAuditLogsToCloudWatch") unless @export_audit_logs_to_cloud_watch.nil?
  @export_profiler_logs_to_cloud_watch = export_profiler_logs_to_cloud_watch
  Jsii::Type.check_type(@export_profiler_logs_to_cloud_watch, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "exportProfilerLogsToCloudWatch") unless @export_profiler_logs_to_cloud_watch.nil?
  @instance_identifier_base = instance_identifier_base
  Jsii::Type.check_type(@instance_identifier_base, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "instanceIdentifierBase") unless @instance_identifier_base.nil?
  @instance_removal_policy = instance_removal_policy
  Jsii::Type.check_type(@instance_removal_policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5In0=")), "instanceRemovalPolicy") unless @instance_removal_policy.nil?
  @instances = instances
  Jsii::Type.check_type(@instances, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "instances") unless @instances.nil?
  @instance_type = instance_type
  Jsii::Type.check_type(@instance_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWMyLkluc3RhbmNlVHlwZSJ9")), "instanceType") unless @instance_type.nil?
  @kms_key = kms_key
  Jsii::Type.check_type(@kms_key, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa21zLklLZXkifQ==")), "kmsKey") unless @kms_key.nil?
  @parameter_group = parameter_group
  Jsii::Type.check_type(@parameter_group, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19kb2NkYi5JREJDbHVzdGVyUGFyYW1ldGVyR3JvdXBSZWYifQ==")), "parameterGroup") unless @parameter_group.nil?
  @port = port
  Jsii::Type.check_type(@port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "port") unless @port.nil?
  @preferred_maintenance_window = preferred_maintenance_window
  Jsii::Type.check_type(@preferred_maintenance_window, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "preferredMaintenanceWindow") unless @preferred_maintenance_window.nil?
  @removal_policy = removal_policy
  Jsii::Type.check_type(@removal_policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5In0=")), "removalPolicy") unless @removal_policy.nil?
  @security_group = security_group
  Jsii::Type.check_type(@security_group, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWMyLklTZWN1cml0eUdyb3VwIn0=")), "securityGroup") unless @security_group.nil?
  @security_group_removal_policy = security_group_removal_policy
  Jsii::Type.check_type(@security_group_removal_policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5In0=")), "securityGroupRemovalPolicy") unless @security_group_removal_policy.nil?
  @serverless_v2_scaling_configuration = serverless_v2_scaling_configuration.is_a?(Hash) ? ::AWSCDK::DocDB::ServerlessV2ScalingConfiguration.new(**serverless_v2_scaling_configuration.transform_keys(&:to_sym)) : serverless_v2_scaling_configuration
  Jsii::Type.check_type(@serverless_v2_scaling_configuration, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZG9jZGIuU2VydmVybGVzc1YyU2NhbGluZ0NvbmZpZ3VyYXRpb24ifQ==")), "serverlessV2ScalingConfiguration") unless @serverless_v2_scaling_configuration.nil?
  @storage_encrypted = storage_encrypted
  Jsii::Type.check_type(@storage_encrypted, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "storageEncrypted") unless @storage_encrypted.nil?
  @storage_type = storage_type
  Jsii::Type.check_type(@storage_type, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZG9jZGIuU3RvcmFnZVR5cGUifQ==")), "storageType") unless @storage_type.nil?
  @vpc_subnets = vpc_subnets.is_a?(Hash) ? ::AWSCDK::EC2::SubnetSelection.new(**vpc_subnets.transform_keys(&:to_sym)) : vpc_subnets
  Jsii::Type.check_type(@vpc_subnets, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWMyLlN1Ym5ldFNlbGVjdGlvbiJ9")), "vpcSubnets") unless @vpc_subnets.nil?
end

Instance Attribute Details

#backupAWSCDK::DocDB::BackupProps? (readonly)

Note:

Default: - Backup retention period for automated backups is 1 day. Backup preferred window is set to a 30-minute window selected at random from an 8-hour block of time for each AWS Region, occurring on a random day of the week.

Backup settings.



109
110
111
# File 'doc_db/database_cluster_props.rb', line 109

def backup
  @backup
end

#ca_certificateAWSCDK::RDS::CaCertificate? (readonly)

Note:

Default: - DocumentDB will choose a certificate authority

The identifier of the CA certificate used for the instances.

Specifying or updating this property triggers a reboot.



117
118
119
# File 'doc_db/database_cluster_props.rb', line 117

def ca_certificate
  @ca_certificate
end

#cloud_watch_logs_retentionAWSCDK::Logs::RetentionDays? (readonly)

Note:

Default: - logs never expire

The number of days log events are kept in CloudWatch Logs.

When updating this property, unsetting it doesn't remove the log retention policy. To remove the retention policy, set the value to Infinity.

Returns:



126
127
128
# File 'doc_db/database_cluster_props.rb', line 126

def cloud_watch_logs_retention
  @cloud_watch_logs_retention
end

#cloud_watch_logs_retention_roleAWSCDK::IAM::IRole? (readonly)

Note:

Default: - a new role is created.

The IAM role for the Lambda function associated with the custom resource that sets the retention policy.

Returns:



131
132
133
# File 'doc_db/database_cluster_props.rb', line 131

def cloud_watch_logs_retention_role
  @cloud_watch_logs_retention_role
end

#copy_tags_to_snapshotBoolean? (readonly)

Note:

Default: - false

Whether to copy tags to the snapshot when a snapshot is created.

Returns:

  • (Boolean, nil)


136
137
138
# File 'doc_db/database_cluster_props.rb', line 136

def copy_tags_to_snapshot
  @copy_tags_to_snapshot
end

#db_cluster_nameString? (readonly)

Note:

Default: - A name is automatically generated.

An optional identifier for the cluster.

Returns:

  • (String, nil)


141
142
143
# File 'doc_db/database_cluster_props.rb', line 141

def db_cluster_name
  @db_cluster_name
end

#deletion_protectionBoolean? (readonly)

Note:

Default: - false

Specifies whether this cluster can be deleted.

If deletionProtection is enabled, the cluster cannot be deleted unless it is modified and deletionProtection is disabled. deletionProtection protects clusters from being accidentally deleted.

Returns:

  • (Boolean, nil)


151
152
153
# File 'doc_db/database_cluster_props.rb', line 151

def deletion_protection
  @deletion_protection
end

#enable_performance_insightsBoolean? (readonly)

Note:

Default: - false

A value that indicates whether to enable Performance Insights for the instances in the DB Cluster.

Returns:

  • (Boolean, nil)


156
157
158
# File 'doc_db/database_cluster_props.rb', line 156

def enable_performance_insights
  @enable_performance_insights
end

#engine_versionString? (readonly)

Note:

Default: - the latest major version

What version of the database to start.

Returns:

  • (String, nil)


161
162
163
# File 'doc_db/database_cluster_props.rb', line 161

def engine_version
  @engine_version
end

#export_audit_logs_to_cloud_watchBoolean? (readonly)

Note:

Default: false

Whether the audit logs should be exported to CloudWatch.

Note that you also have to configure the audit log export in the Cluster's Parameter Group.



169
170
171
# File 'doc_db/database_cluster_props.rb', line 169

def export_audit_logs_to_cloud_watch
  @export_audit_logs_to_cloud_watch
end

#export_profiler_logs_to_cloud_watchBoolean? (readonly)

Note:

Default: false

Whether the profiler logs should be exported to CloudWatch.

Note that you also have to configure the profiler log export in the Cluster's Parameter Group.



177
178
179
# File 'doc_db/database_cluster_props.rb', line 177

def export_profiler_logs_to_cloud_watch
  @export_profiler_logs_to_cloud_watch
end

#instance_identifier_baseString? (readonly)

Note:

Default: - dbClusterName is used with the word "Instance" appended. If dbClusterName is not provided, the identifier is automatically generated.

Base identifier for instances.

Every replica is named by appending the replica number to this string, 1-based. Only applicable for provisioned clusters.

Returns:

  • (String, nil)


185
186
187
# File 'doc_db/database_cluster_props.rb', line 185

def instance_identifier_base
  @instance_identifier_base
end

#instance_removal_policyAWSCDK::RemovalPolicy? (readonly)

Note:

Default: - RemovalPolicy.DESTROY when removalPolicy is set to SNAPSHOT, removalPolicy otherwise.

The removal policy to apply to the cluster's instances.

Cannot be set to SNAPSHOT.



193
194
195
# File 'doc_db/database_cluster_props.rb', line 193

def instance_removal_policy
  @instance_removal_policy
end

#instance_typeAWSCDK::EC2::InstanceType? (readonly)

Note:

Default: None

What type of instance to start for the replicas.

Required for provisioned clusters, not applicable for serverless clusters.

Returns:



205
206
207
# File 'doc_db/database_cluster_props.rb', line 205

def instance_type
  @instance_type
end

#instancesNumeric? (readonly)

Note:

Default: 1

Number of DocDB compute instances.

Returns:

  • (Numeric, nil)


198
199
200
# File 'doc_db/database_cluster_props.rb', line 198

def instances
  @instances
end

#kms_keyAWSCDK::KMS::IKey? (readonly)

Note:

Default: - default master key.

The KMS key for storage encryption.

Returns:



210
211
212
# File 'doc_db/database_cluster_props.rb', line 210

def kms_key
  @kms_key
end

#master_userAWSCDK::DocDB::Login (readonly)

Username and password for the administrative user.



97
98
99
# File 'doc_db/database_cluster_props.rb', line 97

def master_user
  @master_user
end

#parameter_groupAWSCDK::Interfaces::AWSDocdb::IDBClusterParameterGroupRef? (readonly)

Note:

Default: no parameter group

The DB parameter group to associate with the instance.



215
216
217
# File 'doc_db/database_cluster_props.rb', line 215

def parameter_group
  @parameter_group
end

#portNumeric? (readonly)

Note:

Default: DatabaseCluster.DEFAULT_PORT

The port the DocumentDB cluster will listen on.

Returns:

  • (Numeric, nil)


220
221
222
# File 'doc_db/database_cluster_props.rb', line 220

def port
  @port
end

#preferred_maintenance_windowString? (readonly)

Note:

Default: - 30-minute window selected at random from an 8-hour block of time for each AWS Region, occurring on a random day of the week.

A weekly time range in which maintenance should preferably execute.

Must be at least 30 minutes long.

Example: 'tue:04:17-tue:04:47'



230
231
232
# File 'doc_db/database_cluster_props.rb', line 230

def preferred_maintenance_window
  @preferred_maintenance_window
end

#removal_policyAWSCDK::RemovalPolicy? (readonly)

Note:

Default: - Retain cluster.

The removal policy to apply when the cluster and its instances are removed or replaced during a stack update, or when the stack is deleted.

This removal policy also applies to the implicit security group created for the cluster if one is not supplied as a parameter.

When set to SNAPSHOT, the removal policy for the instances and the security group will default to DESTROY as those resources do not support the policy.

Use the instance_removal_policy and security_group_removal_policy to change the behavior.

Returns:



244
245
246
# File 'doc_db/database_cluster_props.rb', line 244

def removal_policy
  @removal_policy
end

#security_groupAWSCDK::EC2::ISecurityGroup? (readonly)

Note:

Default: a new security group is created.

Security group.

Returns:



249
250
251
# File 'doc_db/database_cluster_props.rb', line 249

def security_group
  @security_group
end

#security_group_removal_policyAWSCDK::RemovalPolicy? (readonly)

Note:

Default: - RemovalPolicy.DESTROY when removalPolicy is set to SNAPSHOT, removalPolicy otherwise.

The removal policy to apply to the cluster's security group.

Cannot be set to SNAPSHOT.



257
258
259
# File 'doc_db/database_cluster_props.rb', line 257

def security_group_removal_policy
  @security_group_removal_policy
end

#serverless_v2_scaling_configurationAWSCDK::DocDB::ServerlessV2ScalingConfiguration? (readonly)

Note:

Default: None

ServerlessV2 scaling configuration.

When specified, the cluster will be created as a serverless cluster.



264
265
266
# File 'doc_db/database_cluster_props.rb', line 264

def serverless_v2_scaling_configuration
  @serverless_v2_scaling_configuration
end

#storage_encryptedBoolean? (readonly)

Note:

Default: true

Whether to enable storage encryption.

Returns:

  • (Boolean, nil)


269
270
271
# File 'doc_db/database_cluster_props.rb', line 269

def storage_encrypted
  @storage_encrypted
end

#storage_typeAWSCDK::DocDB::StorageType? (readonly)

Note:

Default: StorageType.STANDARD

The storage type of the DocDB cluster.

I/O-optimized storage is supported starting with engine version 5.0.0.



277
278
279
# File 'doc_db/database_cluster_props.rb', line 277

def storage_type
  @storage_type
end

#vpcAWSCDK::EC2::IVPC (readonly)

What subnets to run the DocumentDB instances in.

Must be at least 2 subnets in two different AZs.

Returns:



103
104
105
# File 'doc_db/database_cluster_props.rb', line 103

def vpc
  @vpc
end

#vpc_subnetsAWSCDK::EC2::SubnetSelection? (readonly)

Note:

Default: private subnets

Where to place the instances within the VPC.



282
283
284
# File 'doc_db/database_cluster_props.rb', line 282

def vpc_subnets
  @vpc_subnets
end

Class Method Details

.jsii_propertiesObject



284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
# File 'doc_db/database_cluster_props.rb', line 284

def self.jsii_properties
  {
    :master_user => "masterUser",
    :vpc => "vpc",
    :backup => "backup",
    :ca_certificate => "caCertificate",
    :cloud_watch_logs_retention => "cloudWatchLogsRetention",
    :cloud_watch_logs_retention_role => "cloudWatchLogsRetentionRole",
    :copy_tags_to_snapshot => "copyTagsToSnapshot",
    :db_cluster_name => "dbClusterName",
    :deletion_protection => "deletionProtection",
    :enable_performance_insights => "enablePerformanceInsights",
    :engine_version => "engineVersion",
    :export_audit_logs_to_cloud_watch => "exportAuditLogsToCloudWatch",
    :export_profiler_logs_to_cloud_watch => "exportProfilerLogsToCloudWatch",
    :instance_identifier_base => "instanceIdentifierBase",
    :instance_removal_policy => "instanceRemovalPolicy",
    :instances => "instances",
    :instance_type => "instanceType",
    :kms_key => "kmsKey",
    :parameter_group => "parameterGroup",
    :port => "port",
    :preferred_maintenance_window => "preferredMaintenanceWindow",
    :removal_policy => "removalPolicy",
    :security_group => "securityGroup",
    :security_group_removal_policy => "securityGroupRemovalPolicy",
    :serverless_v2_scaling_configuration => "serverlessV2ScalingConfiguration",
    :storage_encrypted => "storageEncrypted",
    :storage_type => "storageType",
    :vpc_subnets => "vpcSubnets",
  }
end

Instance Method Details

#to_jsiiObject



317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
# File 'doc_db/database_cluster_props.rb', line 317

def to_jsii
  result = {}
  result.merge!({
    "masterUser" => @master_user,
    "vpc" => @vpc,
    "backup" => @backup,
    "caCertificate" => @ca_certificate,
    "cloudWatchLogsRetention" => @cloud_watch_logs_retention,
    "cloudWatchLogsRetentionRole" => @cloud_watch_logs_retention_role,
    "copyTagsToSnapshot" => @copy_tags_to_snapshot,
    "dbClusterName" => @db_cluster_name,
    "deletionProtection" => @deletion_protection,
    "enablePerformanceInsights" => @enable_performance_insights,
    "engineVersion" => @engine_version,
    "exportAuditLogsToCloudWatch" => @export_audit_logs_to_cloud_watch,
    "exportProfilerLogsToCloudWatch" => @export_profiler_logs_to_cloud_watch,
    "instanceIdentifierBase" => @instance_identifier_base,
    "instanceRemovalPolicy" => @instance_removal_policy,
    "instances" => @instances,
    "instanceType" => @instance_type,
    "kmsKey" => @kms_key,
    "parameterGroup" => @parameter_group,
    "port" => @port,
    "preferredMaintenanceWindow" => @preferred_maintenance_window,
    "removalPolicy" => @removal_policy,
    "securityGroup" => @security_group,
    "securityGroupRemovalPolicy" => @security_group_removal_policy,
    "serverlessV2ScalingConfiguration" => @serverless_v2_scaling_configuration,
    "storageEncrypted" => @storage_encrypted,
    "storageType" => @storage_type,
    "vpcSubnets" => @vpc_subnets,
  })
  result.compact
end