Class: AWSCDK::RDS::CfnGlobalClusterProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
rds/cfn_global_cluster_props.rb

Overview

Properties for defining a CfnGlobalCluster.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(deletion_protection: nil, engine: nil, engine_lifecycle_support: nil, engine_version: nil, global_cluster_identifier: nil, source_db_cluster_identifier: nil, storage_encrypted: nil, tags: nil) ⇒ CfnGlobalClusterProps

Returns a new instance of CfnGlobalClusterProps.

Parameters:

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

    Specifies whether to enable deletion protection for the new global database cluster.

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

    The database engine to use for this global database cluster.

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

    The life cycle type for this global database cluster.

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

    The engine version to use for this global database cluster.

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

    The cluster identifier for this global database cluster.

  • source_db_cluster_identifier (String, AWSCDK::Interfaces::AWSRDS::IDBClusterRef, nil) (defaults to: nil)

    The Amazon Resource Name (ARN) to use as the primary cluster of the global database.

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

    Specifies whether to enable storage encryption for the new global database cluster.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Metadata assigned to an Amazon RDS resource consisting of a key-value pair.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'rds/cfn_global_cluster_props.rb', line 17

def initialize(deletion_protection: nil, engine: nil, engine_lifecycle_support: nil, engine_version: nil, global_cluster_identifier: nil, source_db_cluster_identifier: nil, storage_encrypted: nil, tags: nil)
  @deletion_protection = deletion_protection
  Jsii::Type.check_type(@deletion_protection, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "deletionProtection") unless @deletion_protection.nil?
  @engine = engine
  Jsii::Type.check_type(@engine, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "engine") unless @engine.nil?
  @engine_lifecycle_support = engine_lifecycle_support
  Jsii::Type.check_type(@engine_lifecycle_support, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "engineLifecycleSupport") unless @engine_lifecycle_support.nil?
  @engine_version = engine_version
  Jsii::Type.check_type(@engine_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "engineVersion") unless @engine_version.nil?
  @global_cluster_identifier = global_cluster_identifier
  Jsii::Type.check_type(@global_cluster_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "globalClusterIdentifier") unless @global_cluster_identifier.nil?
  @source_db_cluster_identifier = source_db_cluster_identifier
  Jsii::Type.check_type(@source_db_cluster_identifier, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19yZHMuSURCQ2x1c3RlclJlZiJ9XX19")), "sourceDbClusterIdentifier") unless @source_db_cluster_identifier.nil?
  @storage_encrypted = storage_encrypted
  Jsii::Type.check_type(@storage_encrypted, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "storageEncrypted") unless @storage_encrypted.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#deletion_protectionBoolean, ... (readonly)

Specifies whether to enable deletion protection for the new global database cluster.

The global database can't be deleted when deletion protection is enabled.



42
43
44
# File 'rds/cfn_global_cluster_props.rb', line 42

def deletion_protection
  @deletion_protection
end

#engineString? (readonly)

The database engine to use for this global database cluster.

Valid Values: aurora-mysql | aurora-postgresql

Constraints:

  • Can't be specified if SourceDBClusterIdentifier is specified. In this case, Amazon Aurora uses the engine of the source DB cluster.


53
54
55
# File 'rds/cfn_global_cluster_props.rb', line 53

def engine
  @engine
end

#engine_lifecycle_supportString? (readonly)

The life cycle type for this global database cluster.

By default, this value is set to open-source-rds-extended-support , which enrolls your global cluster into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to open-source-rds-extended-support-disabled . In this case, creating the global cluster will fail if the DB major version is past its end of standard support date.

This setting only applies to Aurora PostgreSQL-based global databases.

You can use this setting to enroll your global cluster into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your global cluster past the end of standard support for that engine version. For more information, see Amazon RDS Extended Support with Amazon Aurora in the Amazon Aurora User Guide .

Valid Values: open-source-rds-extended-support | open-source-rds-extended-support-disabled

Default: open-source-rds-extended-support



68
69
70
# File 'rds/cfn_global_cluster_props.rb', line 68

def engine_lifecycle_support
  @engine_lifecycle_support
end

#engine_versionString? (readonly)

The engine version to use for this global database cluster.

Constraints:

  • Can't be specified if SourceDBClusterIdentifier is specified. In this case, Amazon Aurora uses the engine version of the source DB cluster.


77
78
79
# File 'rds/cfn_global_cluster_props.rb', line 77

def engine_version
  @engine_version
end

#global_cluster_identifierString? (readonly)

The cluster identifier for this global database cluster.

This parameter is stored as a lowercase string.



84
85
86
# File 'rds/cfn_global_cluster_props.rb', line 84

def global_cluster_identifier
  @global_cluster_identifier
end

#source_db_cluster_identifierString, ... (readonly)

The Amazon Resource Name (ARN) to use as the primary cluster of the global database.

If you provide a value for this parameter, don't specify values for the following settings because Amazon Aurora uses the values from the specified source DB cluster:

  • DatabaseName
  • Engine
  • EngineVersion
  • StorageEncrypted


96
97
98
# File 'rds/cfn_global_cluster_props.rb', line 96

def source_db_cluster_identifier
  @source_db_cluster_identifier
end

#storage_encryptedBoolean, ... (readonly)

Specifies whether to enable storage encryption for the new global database cluster.

Constraints:

  • Can't be specified if SourceDBClusterIdentifier is specified. In this case, Amazon Aurora uses the setting from the source DB cluster.


105
106
107
# File 'rds/cfn_global_cluster_props.rb', line 105

def storage_encrypted
  @storage_encrypted
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Metadata assigned to an Amazon RDS resource consisting of a key-value pair.

For more information, see Tagging Amazon RDS resources in the Amazon RDS User Guide or Tagging Amazon Aurora and Amazon RDS resources in the Amazon Aurora User Guide .



112
113
114
# File 'rds/cfn_global_cluster_props.rb', line 112

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



114
115
116
117
118
119
120
121
122
123
124
125
# File 'rds/cfn_global_cluster_props.rb', line 114

def self.jsii_properties
  {
    :deletion_protection => "deletionProtection",
    :engine => "engine",
    :engine_lifecycle_support => "engineLifecycleSupport",
    :engine_version => "engineVersion",
    :global_cluster_identifier => "globalClusterIdentifier",
    :source_db_cluster_identifier => "sourceDbClusterIdentifier",
    :storage_encrypted => "storageEncrypted",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



127
128
129
130
131
132
133
134
135
136
137
138
139
140
# File 'rds/cfn_global_cluster_props.rb', line 127

def to_jsii
  result = {}
  result.merge!({
    "deletionProtection" => @deletion_protection,
    "engine" => @engine,
    "engineLifecycleSupport" => @engine_lifecycle_support,
    "engineVersion" => @engine_version,
    "globalClusterIdentifier" => @global_cluster_identifier,
    "sourceDbClusterIdentifier" => @source_db_cluster_identifier,
    "storageEncrypted" => @storage_encrypted,
    "tags" => @tags,
  })
  result.compact
end