Documentation ¶
Index ¶
- func CfnClusterParameterGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnClusterParameterGroup_IsCfnElement(x interface{}) *bool
- func CfnClusterParameterGroup_IsCfnResource(x interface{}) *bool
- func CfnClusterParameterGroup_IsConstruct(x interface{}) *bool
- func CfnClusterSecurityGroupIngress_CFN_RESOURCE_TYPE_NAME() *string
- func CfnClusterSecurityGroupIngress_IsCfnElement(x interface{}) *bool
- func CfnClusterSecurityGroupIngress_IsCfnResource(x interface{}) *bool
- func CfnClusterSecurityGroupIngress_IsConstruct(x interface{}) *bool
- func CfnClusterSecurityGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnClusterSecurityGroup_IsCfnElement(x interface{}) *bool
- func CfnClusterSecurityGroup_IsCfnResource(x interface{}) *bool
- func CfnClusterSecurityGroup_IsConstruct(x interface{}) *bool
- func CfnClusterSubnetGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnClusterSubnetGroup_IsCfnElement(x interface{}) *bool
- func CfnClusterSubnetGroup_IsCfnResource(x interface{}) *bool
- func CfnClusterSubnetGroup_IsConstruct(x interface{}) *bool
- func CfnCluster_CFN_RESOURCE_TYPE_NAME() *string
- func CfnCluster_IsCfnElement(x interface{}) *bool
- func CfnCluster_IsCfnResource(x interface{}) *bool
- func CfnCluster_IsConstruct(x interface{}) *bool
- func CfnEndpointAccess_CFN_RESOURCE_TYPE_NAME() *string
- func CfnEndpointAccess_IsCfnElement(x interface{}) *bool
- func CfnEndpointAccess_IsCfnResource(x interface{}) *bool
- func CfnEndpointAccess_IsConstruct(x interface{}) *bool
- func CfnEndpointAuthorization_CFN_RESOURCE_TYPE_NAME() *string
- func CfnEndpointAuthorization_IsCfnElement(x interface{}) *bool
- func CfnEndpointAuthorization_IsCfnResource(x interface{}) *bool
- func CfnEndpointAuthorization_IsConstruct(x interface{}) *bool
- func CfnEventSubscription_CFN_RESOURCE_TYPE_NAME() *string
- func CfnEventSubscription_IsCfnElement(x interface{}) *bool
- func CfnEventSubscription_IsCfnResource(x interface{}) *bool
- func CfnEventSubscription_IsConstruct(x interface{}) *bool
- func CfnIntegration_CFN_RESOURCE_TYPE_NAME() *string
- func CfnIntegration_IsCfnElement(x interface{}) *bool
- func CfnIntegration_IsCfnResource(x interface{}) *bool
- func CfnIntegration_IsConstruct(x interface{}) *bool
- func CfnScheduledAction_CFN_RESOURCE_TYPE_NAME() *string
- func CfnScheduledAction_IsCfnElement(x interface{}) *bool
- func CfnScheduledAction_IsCfnResource(x interface{}) *bool
- func CfnScheduledAction_IsConstruct(x interface{}) *bool
- func NewCfnClusterParameterGroup_Override(c CfnClusterParameterGroup, scope constructs.Construct, id *string, ...)
- func NewCfnClusterSecurityGroupIngress_Override(c CfnClusterSecurityGroupIngress, scope constructs.Construct, id *string, ...)
- func NewCfnClusterSecurityGroup_Override(c CfnClusterSecurityGroup, scope constructs.Construct, id *string, ...)
- func NewCfnClusterSubnetGroup_Override(c CfnClusterSubnetGroup, scope constructs.Construct, id *string, ...)
- func NewCfnCluster_Override(c CfnCluster, scope constructs.Construct, id *string, props *CfnClusterProps)
- func NewCfnEndpointAccess_Override(c CfnEndpointAccess, scope constructs.Construct, id *string, ...)
- func NewCfnEndpointAuthorization_Override(c CfnEndpointAuthorization, scope constructs.Construct, id *string, ...)
- func NewCfnEventSubscription_Override(c CfnEventSubscription, scope constructs.Construct, id *string, ...)
- func NewCfnIntegration_Override(c CfnIntegration, scope constructs.Construct, id *string, ...)
- func NewCfnScheduledAction_Override(c CfnScheduledAction, scope constructs.Construct, id *string, ...)
- type CfnCluster
- type CfnClusterParameterGroup
- type CfnClusterParameterGroupProps
- type CfnClusterParameterGroup_ParameterProperty
- type CfnClusterProps
- type CfnClusterSecurityGroup
- type CfnClusterSecurityGroupIngress
- type CfnClusterSecurityGroupIngressProps
- type CfnClusterSecurityGroupProps
- type CfnClusterSubnetGroup
- type CfnClusterSubnetGroupProps
- type CfnCluster_EndpointProperty
- type CfnCluster_LoggingPropertiesProperty
- type CfnEndpointAccess
- type CfnEndpointAccessProps
- type CfnEndpointAccess_NetworkInterfaceProperty
- type CfnEndpointAccess_VpcEndpointProperty
- type CfnEndpointAccess_VpcSecurityGroupProperty
- type CfnEndpointAuthorization
- type CfnEndpointAuthorizationProps
- type CfnEventSubscription
- type CfnEventSubscriptionProps
- type CfnIntegration
- type CfnIntegrationProps
- type CfnScheduledAction
- type CfnScheduledActionProps
- type CfnScheduledAction_PauseClusterMessageProperty
- type CfnScheduledAction_ResizeClusterMessageProperty
- type CfnScheduledAction_ResumeClusterMessageProperty
- type CfnScheduledAction_ScheduledActionTypeProperty
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnClusterParameterGroup_CFN_RESOURCE_TYPE_NAME ¶
func CfnClusterParameterGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnClusterParameterGroup_IsCfnElement ¶
func CfnClusterParameterGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnClusterParameterGroup_IsCfnResource ¶
func CfnClusterParameterGroup_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnClusterParameterGroup_IsConstruct ¶
func CfnClusterParameterGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnClusterSecurityGroupIngress_CFN_RESOURCE_TYPE_NAME ¶
func CfnClusterSecurityGroupIngress_CFN_RESOURCE_TYPE_NAME() *string
func CfnClusterSecurityGroupIngress_IsCfnElement ¶
func CfnClusterSecurityGroupIngress_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnClusterSecurityGroupIngress_IsCfnResource ¶
func CfnClusterSecurityGroupIngress_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnClusterSecurityGroupIngress_IsConstruct ¶
func CfnClusterSecurityGroupIngress_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnClusterSecurityGroup_CFN_RESOURCE_TYPE_NAME ¶
func CfnClusterSecurityGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnClusterSecurityGroup_IsCfnElement ¶
func CfnClusterSecurityGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnClusterSecurityGroup_IsCfnResource ¶
func CfnClusterSecurityGroup_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnClusterSecurityGroup_IsConstruct ¶
func CfnClusterSecurityGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnClusterSubnetGroup_CFN_RESOURCE_TYPE_NAME ¶
func CfnClusterSubnetGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnClusterSubnetGroup_IsCfnElement ¶
func CfnClusterSubnetGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnClusterSubnetGroup_IsCfnResource ¶
func CfnClusterSubnetGroup_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnClusterSubnetGroup_IsConstruct ¶
func CfnClusterSubnetGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnCluster_CFN_RESOURCE_TYPE_NAME ¶
func CfnCluster_CFN_RESOURCE_TYPE_NAME() *string
func CfnCluster_IsCfnElement ¶
func CfnCluster_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnCluster_IsCfnResource ¶
func CfnCluster_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnCluster_IsConstruct ¶
func CfnCluster_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnEndpointAccess_CFN_RESOURCE_TYPE_NAME ¶
func CfnEndpointAccess_CFN_RESOURCE_TYPE_NAME() *string
func CfnEndpointAccess_IsCfnElement ¶
func CfnEndpointAccess_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnEndpointAccess_IsCfnResource ¶
func CfnEndpointAccess_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnEndpointAccess_IsConstruct ¶
func CfnEndpointAccess_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnEndpointAuthorization_CFN_RESOURCE_TYPE_NAME ¶
func CfnEndpointAuthorization_CFN_RESOURCE_TYPE_NAME() *string
func CfnEndpointAuthorization_IsCfnElement ¶
func CfnEndpointAuthorization_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnEndpointAuthorization_IsCfnResource ¶
func CfnEndpointAuthorization_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnEndpointAuthorization_IsConstruct ¶
func CfnEndpointAuthorization_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnEventSubscription_CFN_RESOURCE_TYPE_NAME ¶
func CfnEventSubscription_CFN_RESOURCE_TYPE_NAME() *string
func CfnEventSubscription_IsCfnElement ¶
func CfnEventSubscription_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnEventSubscription_IsCfnResource ¶
func CfnEventSubscription_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnEventSubscription_IsConstruct ¶
func CfnEventSubscription_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnIntegration_CFN_RESOURCE_TYPE_NAME ¶ added in v2.163.0
func CfnIntegration_CFN_RESOURCE_TYPE_NAME() *string
func CfnIntegration_IsCfnElement ¶ added in v2.163.0
func CfnIntegration_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnIntegration_IsCfnResource ¶ added in v2.163.0
func CfnIntegration_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnIntegration_IsConstruct ¶ added in v2.163.0
func CfnIntegration_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnScheduledAction_CFN_RESOURCE_TYPE_NAME ¶
func CfnScheduledAction_CFN_RESOURCE_TYPE_NAME() *string
func CfnScheduledAction_IsCfnElement ¶
func CfnScheduledAction_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnScheduledAction_IsCfnResource ¶
func CfnScheduledAction_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnScheduledAction_IsConstruct ¶
func CfnScheduledAction_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func NewCfnClusterParameterGroup_Override ¶
func NewCfnClusterParameterGroup_Override(c CfnClusterParameterGroup, scope constructs.Construct, id *string, props *CfnClusterParameterGroupProps)
func NewCfnClusterSecurityGroupIngress_Override ¶
func NewCfnClusterSecurityGroupIngress_Override(c CfnClusterSecurityGroupIngress, scope constructs.Construct, id *string, props *CfnClusterSecurityGroupIngressProps)
func NewCfnClusterSecurityGroup_Override ¶
func NewCfnClusterSecurityGroup_Override(c CfnClusterSecurityGroup, scope constructs.Construct, id *string, props *CfnClusterSecurityGroupProps)
func NewCfnClusterSubnetGroup_Override ¶
func NewCfnClusterSubnetGroup_Override(c CfnClusterSubnetGroup, scope constructs.Construct, id *string, props *CfnClusterSubnetGroupProps)
func NewCfnCluster_Override ¶
func NewCfnCluster_Override(c CfnCluster, scope constructs.Construct, id *string, props *CfnClusterProps)
func NewCfnEndpointAccess_Override ¶
func NewCfnEndpointAccess_Override(c CfnEndpointAccess, scope constructs.Construct, id *string, props *CfnEndpointAccessProps)
func NewCfnEndpointAuthorization_Override ¶
func NewCfnEndpointAuthorization_Override(c CfnEndpointAuthorization, scope constructs.Construct, id *string, props *CfnEndpointAuthorizationProps)
func NewCfnEventSubscription_Override ¶
func NewCfnEventSubscription_Override(c CfnEventSubscription, scope constructs.Construct, id *string, props *CfnEventSubscriptionProps)
func NewCfnIntegration_Override ¶ added in v2.163.0
func NewCfnIntegration_Override(c CfnIntegration, scope constructs.Construct, id *string, props *CfnIntegrationProps)
func NewCfnScheduledAction_Override ¶
func NewCfnScheduledAction_Override(c CfnScheduledAction, scope constructs.Construct, id *string, props *CfnScheduledActionProps)
Types ¶
type CfnCluster ¶
type CfnCluster interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // If `true` , major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster. AllowVersionUpgrade() interface{} SetAllowVersionUpgrade(val interface{}) // This parameter is retired. AquaConfigurationStatus() *string SetAquaConfigurationStatus(val *string) // The namespace Amazon Resource Name (ARN) of the cluster. AttrClusterNamespaceArn() *string // A unique identifier for the maintenance window. AttrDeferMaintenanceIdentifier() *string // The connection endpoint for the Amazon Redshift cluster. // // For example: `examplecluster.cg034hpkmmjt.us-east-1.redshift.amazonaws.com` . AttrEndpointAddress() *string // The port number on which the Amazon Redshift cluster accepts connections. // // For example: `5439` . AttrEndpointPort() *string AttrId() *string // The Amazon Resource Name (ARN) for the cluster's admin user credentials secret. AttrMasterPasswordSecretArn() *string // The number of days that automated snapshots are retained. AutomatedSnapshotRetentionPeriod() *float64 SetAutomatedSnapshotRetentionPeriod(val *float64) // The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision the cluster. AvailabilityZone() *string SetAvailabilityZone(val *string) // The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is created. AvailabilityZoneRelocation() interface{} SetAvailabilityZoneRelocation(val interface{}) // Describes the status of the Availability Zone relocation operation. AvailabilityZoneRelocationStatus() *string SetAvailabilityZoneRelocationStatus(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // A boolean value indicating whether the resize operation is using the classic resize process. Classic() interface{} SetClassic(val interface{}) // A unique identifier for the cluster. ClusterIdentifier() *string SetClusterIdentifier(val *string) // The name of the parameter group to be associated with this cluster. ClusterParameterGroupName() *string SetClusterParameterGroupName(val *string) // A list of security groups to be associated with this cluster. ClusterSecurityGroups() *[]*string SetClusterSecurityGroups(val *[]*string) // The name of a cluster subnet group to be associated with this cluster. ClusterSubnetGroupName() *string SetClusterSubnetGroupName(val *string) // The type of the cluster. // // When cluster type is specified as. ClusterType() *string SetClusterType(val *string) // The version of the Amazon Redshift engine software that you want to deploy on the cluster. ClusterVersion() *string SetClusterVersion(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The name of the first database to be created when the cluster is created. DbName() *string SetDbName(val *string) // A Boolean indicating whether to enable the deferred maintenance window. DeferMaintenance() interface{} SetDeferMaintenance(val interface{}) // An integer indicating the duration of the maintenance window in days. DeferMaintenanceDuration() *float64 SetDeferMaintenanceDuration(val *float64) // A timestamp for the end of the time period when we defer maintenance. DeferMaintenanceEndTime() *string SetDeferMaintenanceEndTime(val *string) // A timestamp indicating the start time for the deferred maintenance window. DeferMaintenanceStartTime() *string SetDeferMaintenanceStartTime(val *string) // The destination region that snapshots are automatically copied to when cross-region snapshot copy is enabled. DestinationRegion() *string SetDestinationRegion(val *string) // The Elastic IP (EIP) address for the cluster. ElasticIp() *string SetElasticIp(val *string) // If `true` , the data in the cluster is encrypted at rest. Encrypted() interface{} SetEncrypted(val interface{}) // The connection endpoint. Endpoint() interface{} SetEndpoint(val interface{}) // An option that specifies whether to create the cluster with enhanced VPC routing enabled. EnhancedVpcRouting() interface{} SetEnhancedVpcRouting(val interface{}) // Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM. HsmClientCertificateIdentifier() *string SetHsmClientCertificateIdentifier(val *string) // Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM. HsmConfigurationIdentifier() *string SetHsmConfigurationIdentifier(val *string) // A list of AWS Identity and Access Management (IAM) roles that can be used by the cluster to access other AWS services. IamRoles() *[]*string SetIamRoles(val *[]*string) // The AWS Key Management Service (KMS) key ID of the encryption key that you want to use to encrypt data in the cluster. KmsKeyId() *string SetKmsKeyId(val *string) // Specifies logging information, such as queries and connection attempts, for the specified Amazon Redshift cluster. LoggingProperties() interface{} SetLoggingProperties(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // An optional parameter for the name of the maintenance track for the cluster. MaintenanceTrackName() *string SetMaintenanceTrackName(val *string) // If `true` , Amazon Redshift uses AWS Secrets Manager to manage this cluster's admin credentials. ManageMasterPassword() interface{} SetManageMasterPassword(val interface{}) // The default number of days to retain a manual snapshot. ManualSnapshotRetentionPeriod() *float64 SetManualSnapshotRetentionPeriod(val *float64) // The ID of the AWS Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret. MasterPasswordSecretKmsKeyId() *string SetMasterPasswordSecretKmsKeyId(val *string) // The user name associated with the admin user account for the cluster that is being created. MasterUsername() *string SetMasterUsername(val *string) // The password associated with the admin user account for the cluster that is being created. MasterUserPassword() *string SetMasterUserPassword(val *string) // A boolean indicating whether Amazon Redshift should deploy the cluster in two Availability Zones. MultiAz() interface{} SetMultiAz(val interface{}) // The policy that is attached to a resource. NamespaceResourcePolicy() interface{} SetNamespaceResourcePolicy(val interface{}) // The tree node. Node() constructs.Node // The node type to be provisioned for the cluster. NodeType() *string SetNodeType(val *string) // The number of compute nodes in the cluster. NumberOfNodes() *float64 SetNumberOfNodes(val *float64) // The AWS account used to create or copy the snapshot. OwnerAccount() *string SetOwnerAccount(val *string) // The port number on which the cluster accepts incoming connections. Port() *float64 SetPort(val *float64) // The weekly time range (in UTC) during which automated cluster maintenance can occur. PreferredMaintenanceWindow() *string SetPreferredMaintenanceWindow(val *string) // If `true` , the cluster can be accessed from a public network. PubliclyAccessible() interface{} SetPubliclyAccessible(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The Amazon Redshift operation to be performed. ResourceAction() *string SetResourceAction(val *string) // Describes a `RevisionTarget` object. RevisionTarget() *string SetRevisionTarget(val *string) // Rotates the encryption keys for a cluster. RotateEncryptionKey() interface{} SetRotateEncryptionKey(val interface{}) // The name of the cluster the source snapshot was created from. SnapshotClusterIdentifier() *string SetSnapshotClusterIdentifier(val *string) // The name of the snapshot copy grant. SnapshotCopyGrantName() *string SetSnapshotCopyGrantName(val *string) // Indicates whether to apply the snapshot retention period to newly copied manual snapshots instead of automated snapshots. SnapshotCopyManual() interface{} SetSnapshotCopyManual(val interface{}) // The number of days to retain automated snapshots in the destination AWS Region after they are copied from the source AWS Region . SnapshotCopyRetentionPeriod() *float64 SetSnapshotCopyRetentionPeriod(val *float64) // The name of the snapshot from which to create the new cluster. SnapshotIdentifier() *string SetSnapshotIdentifier(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // A list of tag instances. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster. VpcSecurityGroupIds() *[]*string SetVpcSecurityGroupIds(val *[]*string) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Specifies a cluster. A *cluster* is a fully managed data warehouse that consists of a set of compute nodes.
To create a cluster in Virtual Private Cloud (VPC), you must provide a cluster subnet group name. The cluster subnet group identifies the subnets of your VPC that Amazon Redshift uses when creating the cluster. For more information about managing clusters, go to [Amazon Redshift Clusters](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html) in the *Amazon Redshift Cluster Management Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var namespaceResourcePolicy interface{} cfnCluster := awscdk.Aws_redshift.NewCfnCluster(this, jsii.String("MyCfnCluster"), &CfnClusterProps{ ClusterType: jsii.String("clusterType"), DbName: jsii.String("dbName"), MasterUsername: jsii.String("masterUsername"), NodeType: jsii.String("nodeType"), // the properties below are optional AllowVersionUpgrade: jsii.Boolean(false), AquaConfigurationStatus: jsii.String("aquaConfigurationStatus"), AutomatedSnapshotRetentionPeriod: jsii.Number(123), AvailabilityZone: jsii.String("availabilityZone"), AvailabilityZoneRelocation: jsii.Boolean(false), AvailabilityZoneRelocationStatus: jsii.String("availabilityZoneRelocationStatus"), Classic: jsii.Boolean(false), ClusterIdentifier: jsii.String("clusterIdentifier"), ClusterParameterGroupName: jsii.String("clusterParameterGroupName"), ClusterSecurityGroups: []*string{ jsii.String("clusterSecurityGroups"), }, ClusterSubnetGroupName: jsii.String("clusterSubnetGroupName"), ClusterVersion: jsii.String("clusterVersion"), DeferMaintenance: jsii.Boolean(false), DeferMaintenanceDuration: jsii.Number(123), DeferMaintenanceEndTime: jsii.String("deferMaintenanceEndTime"), DeferMaintenanceStartTime: jsii.String("deferMaintenanceStartTime"), DestinationRegion: jsii.String("destinationRegion"), ElasticIp: jsii.String("elasticIp"), Encrypted: jsii.Boolean(false), Endpoint: &EndpointProperty{ Address: jsii.String("address"), Port: jsii.String("port"), }, EnhancedVpcRouting: jsii.Boolean(false), HsmClientCertificateIdentifier: jsii.String("hsmClientCertificateIdentifier"), HsmConfigurationIdentifier: jsii.String("hsmConfigurationIdentifier"), IamRoles: []*string{ jsii.String("iamRoles"), }, KmsKeyId: jsii.String("kmsKeyId"), LoggingProperties: &LoggingPropertiesProperty{ BucketName: jsii.String("bucketName"), LogDestinationType: jsii.String("logDestinationType"), LogExports: []*string{ jsii.String("logExports"), }, S3KeyPrefix: jsii.String("s3KeyPrefix"), }, MaintenanceTrackName: jsii.String("maintenanceTrackName"), ManageMasterPassword: jsii.Boolean(false), ManualSnapshotRetentionPeriod: jsii.Number(123), MasterPasswordSecretKmsKeyId: jsii.String("masterPasswordSecretKmsKeyId"), MasterUserPassword: jsii.String("masterUserPassword"), MultiAz: jsii.Boolean(false), NamespaceResourcePolicy: namespaceResourcePolicy, NumberOfNodes: jsii.Number(123), OwnerAccount: jsii.String("ownerAccount"), Port: jsii.Number(123), PreferredMaintenanceWindow: jsii.String("preferredMaintenanceWindow"), PubliclyAccessible: jsii.Boolean(false), ResourceAction: jsii.String("resourceAction"), RevisionTarget: jsii.String("revisionTarget"), RotateEncryptionKey: jsii.Boolean(false), SnapshotClusterIdentifier: jsii.String("snapshotClusterIdentifier"), SnapshotCopyGrantName: jsii.String("snapshotCopyGrantName"), SnapshotCopyManual: jsii.Boolean(false), SnapshotCopyRetentionPeriod: jsii.Number(123), SnapshotIdentifier: jsii.String("snapshotIdentifier"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, VpcSecurityGroupIds: []*string{ jsii.String("vpcSecurityGroupIds"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html
func NewCfnCluster ¶
func NewCfnCluster(scope constructs.Construct, id *string, props *CfnClusterProps) CfnCluster
type CfnClusterParameterGroup ¶
type CfnClusterParameterGroup interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The description of the parameter group. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The name of the cluster parameter group family that this cluster parameter group is compatible with. ParameterGroupFamily() *string SetParameterGroupFamily(val *string) // The name of the cluster parameter group. ParameterGroupName() *string SetParameterGroupName(val *string) // An array of parameters to be modified. // // A maximum of 20 parameters can be modified in a single request. Parameters() interface{} SetParameters(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // The list of tags for the cluster parameter group. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Describes a parameter group.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterParameterGroup := awscdk.Aws_redshift.NewCfnClusterParameterGroup(this, jsii.String("MyCfnClusterParameterGroup"), &CfnClusterParameterGroupProps{ Description: jsii.String("description"), ParameterGroupFamily: jsii.String("parameterGroupFamily"), // the properties below are optional ParameterGroupName: jsii.String("parameterGroupName"), Parameters: []interface{}{ &ParameterProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
func NewCfnClusterParameterGroup ¶
func NewCfnClusterParameterGroup(scope constructs.Construct, id *string, props *CfnClusterParameterGroupProps) CfnClusterParameterGroup
type CfnClusterParameterGroupProps ¶
type CfnClusterParameterGroupProps struct { // The description of the parameter group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-description // Description *string `field:"required" json:"description" yaml:"description"` // The name of the cluster parameter group family that this cluster parameter group is compatible with. // // You can create a custom parameter group and then associate your cluster with it. For more information, see [Amazon Redshift parameter groups](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parametergroupfamily // ParameterGroupFamily *string `field:"required" json:"parameterGroupFamily" yaml:"parameterGroupFamily"` // The name of the cluster parameter group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parametergroupname // ParameterGroupName *string `field:"optional" json:"parameterGroupName" yaml:"parameterGroupName"` // An array of parameters to be modified. A maximum of 20 parameters can be modified in a single request. // // For each parameter to be modified, you must supply at least the parameter name and parameter value; other name-value pairs of the parameter are optional. // // For the workload management (WLM) configuration, you must supply all the name-value pairs in the wlm_json_configuration parameter. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parameters // Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // The list of tags for the cluster parameter group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnClusterParameterGroup`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterParameterGroupProps := &CfnClusterParameterGroupProps{ Description: jsii.String("description"), ParameterGroupFamily: jsii.String("parameterGroupFamily"), // the properties below are optional ParameterGroupName: jsii.String("parameterGroupName"), Parameters: []interface{}{ &ParameterProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnClusterParameterGroup_ParameterProperty ¶
type CfnClusterParameterGroup_ParameterProperty struct { // The name of the parameter. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametername // ParameterName *string `field:"required" json:"parameterName" yaml:"parameterName"` // The value of the parameter. // // If `ParameterName` is `wlm_json_configuration` , then the maximum size of `ParameterValue` is 8000 characters. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametervalue // ParameterValue *string `field:"required" json:"parameterValue" yaml:"parameterValue"` }
Describes a parameter in a cluster parameter group.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" parameterProperty := &ParameterProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }
type CfnClusterProps ¶
type CfnClusterProps struct { // The type of the cluster. When cluster type is specified as. // // - `single-node` , the *NumberOfNodes* parameter is not required. // - `multi-node` , the *NumberOfNodes* parameter is required. // // Valid Values: `multi-node` | `single-node` // // Default: `multi-node`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustertype // ClusterType *string `field:"required" json:"clusterType" yaml:"clusterType"` // The name of the first database to be created when the cluster is created. // // To create additional databases after the cluster is created, connect to the cluster with a SQL client and use SQL commands to create a database. For more information, go to [Create a Database](https://docs.aws.amazon.com/redshift/latest/dg/t_creating_database.html) in the Amazon Redshift Database Developer Guide. // // Default: `dev` // // Constraints: // // - Must contain 1 to 64 alphanumeric characters. // - Must contain only lowercase letters. // - Cannot be a word that is reserved by the service. A list of reserved words can be found in [Reserved Words](https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) in the Amazon Redshift Database Developer Guide. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-dbname // DbName *string `field:"required" json:"dbName" yaml:"dbName"` // The user name associated with the admin user account for the cluster that is being created. // // Constraints: // // - Must be 1 - 128 alphanumeric characters or hyphens. The user name can't be `PUBLIC` . // - Must contain only lowercase letters, numbers, underscore, plus sign, period (dot), at symbol (@), or hyphen. // - The first character must be a letter. // - Must not contain a colon (:) or a slash (/). // - Cannot be a reserved word. A list of reserved words can be found in [Reserved Words](https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) in the Amazon Redshift Database Developer Guide. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masterusername // MasterUsername *string `field:"required" json:"masterUsername" yaml:"masterUsername"` // The node type to be provisioned for the cluster. // // For information about node types, go to [Working with Clusters](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) in the *Amazon Redshift Cluster Management Guide* . // // Valid Values: `dc2.large` | `dc2.8xlarge` | `ra3.large` | `ra3.xlplus` | `ra3.4xlarge` | `ra3.16xlarge` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-nodetype // NodeType *string `field:"required" json:"nodeType" yaml:"nodeType"` // If `true` , major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster. // // When a new major version of the Amazon Redshift engine is released, you can request that the service automatically apply upgrades during the maintenance window to the Amazon Redshift engine that is running on your cluster. // // Default: `true`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-allowversionupgrade // AllowVersionUpgrade interface{} `field:"optional" json:"allowVersionUpgrade" yaml:"allowVersionUpgrade"` // This parameter is retired. // // It does not set the AQUA configuration status. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-aquaconfigurationstatus // AquaConfigurationStatus *string `field:"optional" json:"aquaConfigurationStatus" yaml:"aquaConfigurationStatus"` // The number of days that automated snapshots are retained. // // If the value is 0, automated snapshots are disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want with [CreateClusterSnapshot](https://docs.aws.amazon.com/redshift/latest/APIReference/API_CreateClusterSnapshot.html) in the *Amazon Redshift API Reference* . // // Default: `1` // // Constraints: Must be a value from 0 to 35. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-automatedsnapshotretentionperiod // AutomatedSnapshotRetentionPeriod *float64 `field:"optional" json:"automatedSnapshotRetentionPeriod" yaml:"automatedSnapshotRetentionPeriod"` // The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision the cluster. // // For example, if you have several EC2 instances running in a specific Availability Zone, then you might want the cluster to be provisioned in the same zone in order to decrease network latency. // // Default: A random, system-chosen Availability Zone in the region that is specified by the endpoint. // // Example: `us-east-2d` // // Constraint: The specified Availability Zone must be in the same region as the current endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-availabilityzone // AvailabilityZone *string `field:"optional" json:"availabilityZone" yaml:"availabilityZone"` // The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is created. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-availabilityzonerelocation // AvailabilityZoneRelocation interface{} `field:"optional" json:"availabilityZoneRelocation" yaml:"availabilityZoneRelocation"` // Describes the status of the Availability Zone relocation operation. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-availabilityzonerelocationstatus // AvailabilityZoneRelocationStatus *string `field:"optional" json:"availabilityZoneRelocationStatus" yaml:"availabilityZoneRelocationStatus"` // A boolean value indicating whether the resize operation is using the classic resize process. // // If you don't provide this parameter or set the value to `false` , the resize type is elastic. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-classic // Classic interface{} `field:"optional" json:"classic" yaml:"classic"` // A unique identifier for the cluster. // // You use this identifier to refer to the cluster for any subsequent cluster operations such as deleting or modifying. The identifier also appears in the Amazon Redshift console. // // Constraints: // // - Must contain from 1 to 63 alphanumeric characters or hyphens. // - Alphabetic characters must be lowercase. // - First character must be a letter. // - Cannot end with a hyphen or contain two consecutive hyphens. // - Must be unique for all clusters within an AWS account . // // Example: `myexamplecluster`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusteridentifier // ClusterIdentifier *string `field:"optional" json:"clusterIdentifier" yaml:"clusterIdentifier"` // The name of the parameter group to be associated with this cluster. // // Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, go to [Working with Amazon Redshift Parameter Groups](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html) // // Constraints: // // - Must be 1 to 255 alphanumeric characters or hyphens. // - First character must be a letter. // - Cannot end with a hyphen or contain two consecutive hyphens. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterparametergroupname // ClusterParameterGroupName *string `field:"optional" json:"clusterParameterGroupName" yaml:"clusterParameterGroupName"` // A list of security groups to be associated with this cluster. // // Default: The default cluster security group for Amazon Redshift. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersecuritygroups // ClusterSecurityGroups *[]*string `field:"optional" json:"clusterSecurityGroups" yaml:"clusterSecurityGroups"` // The name of a cluster subnet group to be associated with this cluster. // // If this parameter is not provided the resulting cluster will be deployed outside virtual private cloud (VPC). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersubnetgroupname // ClusterSubnetGroupName *string `field:"optional" json:"clusterSubnetGroupName" yaml:"clusterSubnetGroupName"` // The version of the Amazon Redshift engine software that you want to deploy on the cluster. // // The version selected runs on all the nodes in the cluster. // // Constraints: Only version 1.0 is currently available. // // Example: `1.0` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterversion // ClusterVersion *string `field:"optional" json:"clusterVersion" yaml:"clusterVersion"` // A Boolean indicating whether to enable the deferred maintenance window. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-defermaintenance // DeferMaintenance interface{} `field:"optional" json:"deferMaintenance" yaml:"deferMaintenance"` // An integer indicating the duration of the maintenance window in days. // // If you specify a duration, you can't specify an end time. The duration must be 45 days or less. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-defermaintenanceduration // DeferMaintenanceDuration *float64 `field:"optional" json:"deferMaintenanceDuration" yaml:"deferMaintenanceDuration"` // A timestamp for the end of the time period when we defer maintenance. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-defermaintenanceendtime // DeferMaintenanceEndTime *string `field:"optional" json:"deferMaintenanceEndTime" yaml:"deferMaintenanceEndTime"` // A timestamp indicating the start time for the deferred maintenance window. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-defermaintenancestarttime // DeferMaintenanceStartTime *string `field:"optional" json:"deferMaintenanceStartTime" yaml:"deferMaintenanceStartTime"` // The destination region that snapshots are automatically copied to when cross-region snapshot copy is enabled. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-destinationregion // DestinationRegion *string `field:"optional" json:"destinationRegion" yaml:"destinationRegion"` // The Elastic IP (EIP) address for the cluster. // // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible through an Internet gateway. Don't specify the Elastic IP address for a publicly accessible cluster with availability zone relocation turned on. For more information about provisioning clusters in EC2-VPC, go to [Supported Platforms to Launch Your Cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms) in the Amazon Redshift Cluster Management Guide. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-elasticip // ElasticIp *string `field:"optional" json:"elasticIp" yaml:"elasticIp"` // If `true` , the data in the cluster is encrypted at rest. // // Default: false. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-encrypted // Encrypted interface{} `field:"optional" json:"encrypted" yaml:"encrypted"` // The connection endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-endpoint // Endpoint interface{} `field:"optional" json:"endpoint" yaml:"endpoint"` // An option that specifies whether to create the cluster with enhanced VPC routing enabled. // // To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see [Enhanced VPC Routing](https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html) in the Amazon Redshift Cluster Management Guide. // // If this option is `true` , enhanced VPC routing is enabled. // // Default: false. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-enhancedvpcrouting // EnhancedVpcRouting interface{} `field:"optional" json:"enhancedVpcRouting" yaml:"enhancedVpcRouting"` // Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-hsmclientcertificateidentifier // HsmClientCertificateIdentifier *string `field:"optional" json:"hsmClientCertificateIdentifier" yaml:"hsmClientCertificateIdentifier"` // Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-hsmconfigurationidentifier // HsmConfigurationIdentifier *string `field:"optional" json:"hsmConfigurationIdentifier" yaml:"hsmConfigurationIdentifier"` // A list of AWS Identity and Access Management (IAM) roles that can be used by the cluster to access other AWS services. // // You must supply the IAM roles in their Amazon Resource Name (ARN) format. // // The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to [Quotas and limits](https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html) in the *Amazon Redshift Cluster Management Guide* . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-iamroles // IamRoles *[]*string `field:"optional" json:"iamRoles" yaml:"iamRoles"` // The AWS Key Management Service (KMS) key ID of the encryption key that you want to use to encrypt data in the cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-kmskeyid // KmsKeyId *string `field:"optional" json:"kmsKeyId" yaml:"kmsKeyId"` // Specifies logging information, such as queries and connection attempts, for the specified Amazon Redshift cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-loggingproperties // LoggingProperties interface{} `field:"optional" json:"loggingProperties" yaml:"loggingProperties"` // An optional parameter for the name of the maintenance track for the cluster. // // If you don't provide a maintenance track name, the cluster is assigned to the `current` track. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-maintenancetrackname // MaintenanceTrackName *string `field:"optional" json:"maintenanceTrackName" yaml:"maintenanceTrackName"` // If `true` , Amazon Redshift uses AWS Secrets Manager to manage this cluster's admin credentials. // // You can't use `MasterUserPassword` if `ManageMasterPassword` is true. If `ManageMasterPassword` is false or not set, Amazon Redshift uses `MasterUserPassword` for the admin user account's password. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-managemasterpassword // ManageMasterPassword interface{} `field:"optional" json:"manageMasterPassword" yaml:"manageMasterPassword"` // The default number of days to retain a manual snapshot. // // If the value is -1, the snapshot is retained indefinitely. This setting doesn't change the retention period of existing snapshots. // // The value must be either -1 or an integer between 1 and 3,653. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-manualsnapshotretentionperiod // ManualSnapshotRetentionPeriod *float64 `field:"optional" json:"manualSnapshotRetentionPeriod" yaml:"manualSnapshotRetentionPeriod"` // The ID of the AWS Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret. // // You can only use this parameter if `ManageMasterPassword` is true. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masterpasswordsecretkmskeyid // MasterPasswordSecretKmsKeyId *string `field:"optional" json:"masterPasswordSecretKmsKeyId" yaml:"masterPasswordSecretKmsKeyId"` // The password associated with the admin user account for the cluster that is being created. // // You can't use `MasterUserPassword` if `ManageMasterPassword` is `true` . // // Constraints: // // - Must be between 8 and 64 characters in length. // - Must contain at least one uppercase letter. // - Must contain at least one lowercase letter. // - Must contain one number. // - Can be any printable ASCII character (ASCII code 33-126) except `'` (single quote), `"` (double quote), `\` , `/` , or `@` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masteruserpassword // MasterUserPassword *string `field:"optional" json:"masterUserPassword" yaml:"masterUserPassword"` // A boolean indicating whether Amazon Redshift should deploy the cluster in two Availability Zones. // // The default is false. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-multiaz // MultiAz interface{} `field:"optional" json:"multiAz" yaml:"multiAz"` // The policy that is attached to a resource. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-namespaceresourcepolicy // NamespaceResourcePolicy interface{} `field:"optional" json:"namespaceResourcePolicy" yaml:"namespaceResourcePolicy"` // The number of compute nodes in the cluster. // // This parameter is required when the *ClusterType* parameter is specified as `multi-node` . // // For information about determining how many nodes you need, go to [Working with Clusters](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes) in the *Amazon Redshift Cluster Management Guide* . // // If you don't specify this parameter, you get a single-node cluster. When requesting a multi-node cluster, you must specify the number of nodes that you want in the cluster. // // Default: `1` // // Constraints: Value must be at least 1 and no more than 100. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-numberofnodes // NumberOfNodes *float64 `field:"optional" json:"numberOfNodes" yaml:"numberOfNodes"` // The AWS account used to create or copy the snapshot. // // Required if you are restoring a snapshot you do not own, optional if you own the snapshot. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-owneraccount // OwnerAccount *string `field:"optional" json:"ownerAccount" yaml:"ownerAccount"` // The port number on which the cluster accepts incoming connections. // // The cluster is accessible only via the JDBC and ODBC connection strings. Part of the connection string requires the port on which the cluster will listen for incoming connections. // // Default: `5439` // // Valid Values: // // - For clusters with ra3 nodes - Select a port within the ranges `5431-5455` or `8191-8215` . (If you have an existing cluster with ra3 nodes, it isn't required that you change the port to these ranges.) // - For clusters with dc2 nodes - Select a port within the range `1150-65535` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-port // Port *float64 `field:"optional" json:"port" yaml:"port"` // The weekly time range (in UTC) during which automated cluster maintenance can occur. // // Format: `ddd:hh24:mi-ddd:hh24:mi` // // Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. For more information about the time blocks for each region, see [Maintenance Windows](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows) in Amazon Redshift Cluster Management Guide. // // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun // // Constraints: Minimum 30-minute window. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-preferredmaintenancewindow // PreferredMaintenanceWindow *string `field:"optional" json:"preferredMaintenanceWindow" yaml:"preferredMaintenanceWindow"` // If `true` , the cluster can be accessed from a public network. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-publiclyaccessible // PubliclyAccessible interface{} `field:"optional" json:"publiclyAccessible" yaml:"publiclyAccessible"` // The Amazon Redshift operation to be performed. // // Supported operations are `pause-cluster` , `resume-cluster` , and `failover-primary-compute` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-resourceaction // ResourceAction *string `field:"optional" json:"resourceAction" yaml:"resourceAction"` // Describes a `RevisionTarget` object. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-revisiontarget // RevisionTarget *string `field:"optional" json:"revisionTarget" yaml:"revisionTarget"` // Rotates the encryption keys for a cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-rotateencryptionkey // RotateEncryptionKey interface{} `field:"optional" json:"rotateEncryptionKey" yaml:"rotateEncryptionKey"` // The name of the cluster the source snapshot was created from. // // This parameter is required if your user or role has a policy containing a snapshot resource element that specifies anything other than * for the cluster name. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotclusteridentifier // SnapshotClusterIdentifier *string `field:"optional" json:"snapshotClusterIdentifier" yaml:"snapshotClusterIdentifier"` // The name of the snapshot copy grant. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotcopygrantname // SnapshotCopyGrantName *string `field:"optional" json:"snapshotCopyGrantName" yaml:"snapshotCopyGrantName"` // Indicates whether to apply the snapshot retention period to newly copied manual snapshots instead of automated snapshots. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotcopymanual // SnapshotCopyManual interface{} `field:"optional" json:"snapshotCopyManual" yaml:"snapshotCopyManual"` // The number of days to retain automated snapshots in the destination AWS Region after they are copied from the source AWS Region . // // By default, this only changes the retention period of copied automated snapshots. // // If you decrease the retention period for automated snapshots that are copied to a destination AWS Region , Amazon Redshift deletes any existing automated snapshots that were copied to the destination AWS Region and that fall outside of the new retention period. // // Constraints: Must be at least 1 and no more than 35 for automated snapshots. // // If you specify the `manual` option, only newly copied manual snapshots will have the new retention period. // // If you specify the value of -1 newly copied manual snapshots are retained indefinitely. // // Constraints: The number of days must be either -1 or an integer between 1 and 3,653 for manual snapshots. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotcopyretentionperiod // SnapshotCopyRetentionPeriod *float64 `field:"optional" json:"snapshotCopyRetentionPeriod" yaml:"snapshotCopyRetentionPeriod"` // The name of the snapshot from which to create the new cluster. // // This parameter isn't case sensitive. You must specify this parameter or `snapshotArn` , but not both. // // Example: `my-snapshot-id`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotidentifier // SnapshotIdentifier *string `field:"optional" json:"snapshotIdentifier" yaml:"snapshotIdentifier"` // A list of tag instances. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster. // // Default: The default VPC security group is associated with the cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-vpcsecuritygroupids // VpcSecurityGroupIds *[]*string `field:"optional" json:"vpcSecurityGroupIds" yaml:"vpcSecurityGroupIds"` }
Properties for defining a `CfnCluster`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var namespaceResourcePolicy interface{} cfnClusterProps := &CfnClusterProps{ ClusterType: jsii.String("clusterType"), DbName: jsii.String("dbName"), MasterUsername: jsii.String("masterUsername"), NodeType: jsii.String("nodeType"), // the properties below are optional AllowVersionUpgrade: jsii.Boolean(false), AquaConfigurationStatus: jsii.String("aquaConfigurationStatus"), AutomatedSnapshotRetentionPeriod: jsii.Number(123), AvailabilityZone: jsii.String("availabilityZone"), AvailabilityZoneRelocation: jsii.Boolean(false), AvailabilityZoneRelocationStatus: jsii.String("availabilityZoneRelocationStatus"), Classic: jsii.Boolean(false), ClusterIdentifier: jsii.String("clusterIdentifier"), ClusterParameterGroupName: jsii.String("clusterParameterGroupName"), ClusterSecurityGroups: []*string{ jsii.String("clusterSecurityGroups"), }, ClusterSubnetGroupName: jsii.String("clusterSubnetGroupName"), ClusterVersion: jsii.String("clusterVersion"), DeferMaintenance: jsii.Boolean(false), DeferMaintenanceDuration: jsii.Number(123), DeferMaintenanceEndTime: jsii.String("deferMaintenanceEndTime"), DeferMaintenanceStartTime: jsii.String("deferMaintenanceStartTime"), DestinationRegion: jsii.String("destinationRegion"), ElasticIp: jsii.String("elasticIp"), Encrypted: jsii.Boolean(false), Endpoint: &EndpointProperty{ Address: jsii.String("address"), Port: jsii.String("port"), }, EnhancedVpcRouting: jsii.Boolean(false), HsmClientCertificateIdentifier: jsii.String("hsmClientCertificateIdentifier"), HsmConfigurationIdentifier: jsii.String("hsmConfigurationIdentifier"), IamRoles: []*string{ jsii.String("iamRoles"), }, KmsKeyId: jsii.String("kmsKeyId"), LoggingProperties: &LoggingPropertiesProperty{ BucketName: jsii.String("bucketName"), LogDestinationType: jsii.String("logDestinationType"), LogExports: []*string{ jsii.String("logExports"), }, S3KeyPrefix: jsii.String("s3KeyPrefix"), }, MaintenanceTrackName: jsii.String("maintenanceTrackName"), ManageMasterPassword: jsii.Boolean(false), ManualSnapshotRetentionPeriod: jsii.Number(123), MasterPasswordSecretKmsKeyId: jsii.String("masterPasswordSecretKmsKeyId"), MasterUserPassword: jsii.String("masterUserPassword"), MultiAz: jsii.Boolean(false), NamespaceResourcePolicy: namespaceResourcePolicy, NumberOfNodes: jsii.Number(123), OwnerAccount: jsii.String("ownerAccount"), Port: jsii.Number(123), PreferredMaintenanceWindow: jsii.String("preferredMaintenanceWindow"), PubliclyAccessible: jsii.Boolean(false), ResourceAction: jsii.String("resourceAction"), RevisionTarget: jsii.String("revisionTarget"), RotateEncryptionKey: jsii.Boolean(false), SnapshotClusterIdentifier: jsii.String("snapshotClusterIdentifier"), SnapshotCopyGrantName: jsii.String("snapshotCopyGrantName"), SnapshotCopyManual: jsii.Boolean(false), SnapshotCopyRetentionPeriod: jsii.Number(123), SnapshotIdentifier: jsii.String("snapshotIdentifier"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, VpcSecurityGroupIds: []*string{ jsii.String("vpcSecurityGroupIds"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html
type CfnClusterSecurityGroup ¶
type CfnClusterSecurityGroup interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // A description for the security group. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Specifies an arbitrary set of tags (key–value pairs) to associate with this security group. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Specifies a new Amazon Redshift security group. You use security groups to control access to non-VPC clusters.
For information about managing security groups, go to [Amazon Redshift Cluster Security Groups](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) in the *Amazon Redshift Cluster Management Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterSecurityGroup := awscdk.Aws_redshift.NewCfnClusterSecurityGroup(this, jsii.String("MyCfnClusterSecurityGroup"), &CfnClusterSecurityGroupProps{ Description: jsii.String("description"), // the properties below are optional Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
func NewCfnClusterSecurityGroup ¶
func NewCfnClusterSecurityGroup(scope constructs.Construct, id *string, props *CfnClusterSecurityGroupProps) CfnClusterSecurityGroup
type CfnClusterSecurityGroupIngress ¶
type CfnClusterSecurityGroupIngress interface { awscdk.CfnResource awscdk.IInspectable // Specifies an inbound (ingress) rule for an Amazon Redshift security group. AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The IP range to be added the Amazon Redshift security group. Cidrip() *string SetCidrip(val *string) // The name of the security group to which the ingress rule is added. ClusterSecurityGroupName() *string SetClusterSecurityGroupName(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The EC2 security group to be added the Amazon Redshift security group. Ec2SecurityGroupName() *string SetEc2SecurityGroupName(val *string) // The AWS account number of the owner of the security group specified by the *EC2SecurityGroupName* parameter. Ec2SecurityGroupOwnerId() *string SetEc2SecurityGroupOwnerId(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Adds an inbound (ingress) rule to an Amazon Redshift security group.
Depending on whether the application accessing your cluster is running on the Internet or an Amazon EC2 instance, you can authorize inbound access to either a Classless Interdomain Routing (CIDR)/Internet Protocol (IP) range or to an Amazon EC2 security group. You can add as many as 20 ingress rules to an Amazon Redshift security group.
If you authorize access to an Amazon EC2 security group, specify *EC2SecurityGroupName* and *EC2SecurityGroupOwnerId* . The Amazon EC2 security group and Amazon Redshift cluster must be in the same AWS Region .
If you authorize access to a CIDR/IP address range, specify *CIDRIP* . For an overview of CIDR blocks, see the Wikipedia article on [Classless Inter-Domain Routing](https://docs.aws.amazon.com/http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) .
You must also associate the security group with a cluster so that clients running on these IP addresses or the EC2 instance are authorized to connect to the cluster. For information about managing security groups, go to [Working with Security Groups](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) in the *Amazon Redshift Cluster Management Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterSecurityGroupIngress := awscdk.Aws_redshift.NewCfnClusterSecurityGroupIngress(this, jsii.String("MyCfnClusterSecurityGroupIngress"), &CfnClusterSecurityGroupIngressProps{ ClusterSecurityGroupName: jsii.String("clusterSecurityGroupName"), // the properties below are optional Cidrip: jsii.String("cidrip"), Ec2SecurityGroupName: jsii.String("ec2SecurityGroupName"), Ec2SecurityGroupOwnerId: jsii.String("ec2SecurityGroupOwnerId"), })
func NewCfnClusterSecurityGroupIngress ¶
func NewCfnClusterSecurityGroupIngress(scope constructs.Construct, id *string, props *CfnClusterSecurityGroupIngressProps) CfnClusterSecurityGroupIngress
type CfnClusterSecurityGroupIngressProps ¶
type CfnClusterSecurityGroupIngressProps struct { // The name of the security group to which the ingress rule is added. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-clustersecuritygroupname // ClusterSecurityGroupName *string `field:"required" json:"clusterSecurityGroupName" yaml:"clusterSecurityGroupName"` // The IP range to be added the Amazon Redshift security group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-cidrip // Cidrip *string `field:"optional" json:"cidrip" yaml:"cidrip"` // The EC2 security group to be added the Amazon Redshift security group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupname // Ec2SecurityGroupName *string `field:"optional" json:"ec2SecurityGroupName" yaml:"ec2SecurityGroupName"` // The AWS account number of the owner of the security group specified by the *EC2SecurityGroupName* parameter. // // The AWS Access Key ID is not an acceptable value. // // Example: `111122223333` // // Conditional. If you specify the `EC2SecurityGroupName` property, you must specify this property. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupownerid // Ec2SecurityGroupOwnerId *string `field:"optional" json:"ec2SecurityGroupOwnerId" yaml:"ec2SecurityGroupOwnerId"` }
Properties for defining a `CfnClusterSecurityGroupIngress`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterSecurityGroupIngressProps := &CfnClusterSecurityGroupIngressProps{ ClusterSecurityGroupName: jsii.String("clusterSecurityGroupName"), // the properties below are optional Cidrip: jsii.String("cidrip"), Ec2SecurityGroupName: jsii.String("ec2SecurityGroupName"), Ec2SecurityGroupOwnerId: jsii.String("ec2SecurityGroupOwnerId"), }
type CfnClusterSecurityGroupProps ¶
type CfnClusterSecurityGroupProps struct { // A description for the security group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-description // Description *string `field:"required" json:"description" yaml:"description"` // Specifies an arbitrary set of tags (key–value pairs) to associate with this security group. // // Use tags to manage your resources. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnClusterSecurityGroup`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterSecurityGroupProps := &CfnClusterSecurityGroupProps{ Description: jsii.String("description"), // the properties below are optional Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnClusterSubnetGroup ¶
type CfnClusterSubnetGroup interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The name of the cluster subnet group. AttrClusterSubnetGroupName() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // A description for the subnet group. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // An array of VPC subnet IDs. SubnetIds() *[]*string SetSubnetIds(val *[]*string) // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // Specifies an arbitrary set of tags (key–value pairs) to associate with this subnet group. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Specifies an Amazon Redshift subnet group.
You must provide a list of one or more subnets in your existing Amazon Virtual Private Cloud ( Amazon VPC ) when creating Amazon Redshift subnet group.
For information about subnet groups, go to [Amazon Redshift Cluster Subnet Groups](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-cluster-subnet-groups.html) in the *Amazon Redshift Cluster Management Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterSubnetGroup := awscdk.Aws_redshift.NewCfnClusterSubnetGroup(this, jsii.String("MyCfnClusterSubnetGroup"), &CfnClusterSubnetGroupProps{ Description: jsii.String("description"), SubnetIds: []*string{ jsii.String("subnetIds"), }, // the properties below are optional Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
func NewCfnClusterSubnetGroup ¶
func NewCfnClusterSubnetGroup(scope constructs.Construct, id *string, props *CfnClusterSubnetGroupProps) CfnClusterSubnetGroup
type CfnClusterSubnetGroupProps ¶
type CfnClusterSubnetGroupProps struct { // A description for the subnet group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-description // Description *string `field:"required" json:"description" yaml:"description"` // An array of VPC subnet IDs. // // A maximum of 20 subnets can be modified in a single request. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-subnetids // SubnetIds *[]*string `field:"required" json:"subnetIds" yaml:"subnetIds"` // Specifies an arbitrary set of tags (key–value pairs) to associate with this subnet group. // // Use tags to manage your resources. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnClusterSubnetGroup`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterSubnetGroupProps := &CfnClusterSubnetGroupProps{ Description: jsii.String("description"), SubnetIds: []*string{ jsii.String("subnetIds"), }, // the properties below are optional Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnCluster_EndpointProperty ¶
type CfnCluster_EndpointProperty struct { // The DNS address of the cluster. // // This property is read only. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-endpoint.html#cfn-redshift-cluster-endpoint-address // Address *string `field:"optional" json:"address" yaml:"address"` // The port that the database engine is listening on. // // This property is read only. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-endpoint.html#cfn-redshift-cluster-endpoint-port // Port *string `field:"optional" json:"port" yaml:"port"` }
Describes a connection endpoint.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" endpointProperty := &EndpointProperty{ Address: jsii.String("address"), Port: jsii.String("port"), }
type CfnCluster_LoggingPropertiesProperty ¶
type CfnCluster_LoggingPropertiesProperty struct { // The name of an existing S3 bucket where the log files are to be stored. // // Constraints: // // - Must be in the same region as the cluster // - The cluster must have read bucket and put object permissions. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-bucketname // BucketName *string `field:"optional" json:"bucketName" yaml:"bucketName"` // The log destination type. // // An enum with possible values of `s3` and `cloudwatch` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-logdestinationtype // LogDestinationType *string `field:"optional" json:"logDestinationType" yaml:"logDestinationType"` // The collection of exported log types. // // Possible values are `connectionlog` , `useractivitylog` , and `userlog` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-logexports // LogExports *[]*string `field:"optional" json:"logExports" yaml:"logExports"` // The prefix applied to the log file names. // // Valid characters are any letter from any language, any whitespace character, any numeric character, and the following characters: underscore ( `_` ), period ( `.` ), colon ( `:` ), slash ( `/` ), equal ( `=` ), plus ( `+` ), backslash ( `\` ), hyphen ( `-` ), at symbol ( `@` ). // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html#cfn-redshift-cluster-loggingproperties-s3keyprefix // S3KeyPrefix *string `field:"optional" json:"s3KeyPrefix" yaml:"s3KeyPrefix"` }
Specifies logging information, such as queries and connection attempts, for the specified Amazon Redshift cluster.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" loggingPropertiesProperty := &LoggingPropertiesProperty{ BucketName: jsii.String("bucketName"), LogDestinationType: jsii.String("logDestinationType"), LogExports: []*string{ jsii.String("logExports"), }, S3KeyPrefix: jsii.String("s3KeyPrefix"), }
type CfnEndpointAccess ¶
type CfnEndpointAccess interface { awscdk.CfnResource awscdk.IInspectable // The DNS address of the endpoint. AttrAddress() *string // The time (UTC) that the endpoint was created. AttrEndpointCreateTime() *string // The status of the endpoint. AttrEndpointStatus() *string // The port number on which the cluster accepts incoming connections. AttrPort() *float64 // The connection endpoint for connecting to an Amazon Redshift cluster through the proxy. AttrVpcEndpoint() awscdk.IResolvable AttrVpcEndpointNetworkInterfaces() awscdk.IResolvable // The connection endpoint ID for connecting an Amazon Redshift cluster through the proxy. AttrVpcEndpointVpcEndpointId() *string // The VPC identifier that the endpoint is associated. AttrVpcEndpointVpcId() *string // The security groups associated with the endpoint. AttrVpcSecurityGroups() awscdk.IResolvable // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The cluster identifier of the cluster associated with the endpoint. ClusterIdentifier() *string SetClusterIdentifier(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The name of the endpoint. EndpointName() *string SetEndpointName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The AWS account ID of the owner of the cluster. ResourceOwner() *string SetResourceOwner(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The subnet group name where Amazon Redshift chooses to deploy the endpoint. SubnetGroupName() *string SetSubnetGroupName(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // The security group that defines the ports, protocols, and sources for inbound traffic that you are authorizing into your endpoint. VpcSecurityGroupIds() *[]*string SetVpcSecurityGroupIds(val *[]*string) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Creates a Redshift-managed VPC endpoint.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnEndpointAccess := awscdk.Aws_redshift.NewCfnEndpointAccess(this, jsii.String("MyCfnEndpointAccess"), &CfnEndpointAccessProps{ ClusterIdentifier: jsii.String("clusterIdentifier"), EndpointName: jsii.String("endpointName"), SubnetGroupName: jsii.String("subnetGroupName"), VpcSecurityGroupIds: []*string{ jsii.String("vpcSecurityGroupIds"), }, // the properties below are optional ResourceOwner: jsii.String("resourceOwner"), })
func NewCfnEndpointAccess ¶
func NewCfnEndpointAccess(scope constructs.Construct, id *string, props *CfnEndpointAccessProps) CfnEndpointAccess
type CfnEndpointAccessProps ¶
type CfnEndpointAccessProps struct { // The cluster identifier of the cluster associated with the endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-clusteridentifier // ClusterIdentifier *string `field:"required" json:"clusterIdentifier" yaml:"clusterIdentifier"` // The name of the endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-endpointname // EndpointName *string `field:"required" json:"endpointName" yaml:"endpointName"` // The subnet group name where Amazon Redshift chooses to deploy the endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-subnetgroupname // SubnetGroupName *string `field:"required" json:"subnetGroupName" yaml:"subnetGroupName"` // The security group that defines the ports, protocols, and sources for inbound traffic that you are authorizing into your endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-vpcsecuritygroupids // VpcSecurityGroupIds *[]*string `field:"required" json:"vpcSecurityGroupIds" yaml:"vpcSecurityGroupIds"` // The AWS account ID of the owner of the cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-resourceowner // ResourceOwner *string `field:"optional" json:"resourceOwner" yaml:"resourceOwner"` }
Properties for defining a `CfnEndpointAccess`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnEndpointAccessProps := &CfnEndpointAccessProps{ ClusterIdentifier: jsii.String("clusterIdentifier"), EndpointName: jsii.String("endpointName"), SubnetGroupName: jsii.String("subnetGroupName"), VpcSecurityGroupIds: []*string{ jsii.String("vpcSecurityGroupIds"), }, // the properties below are optional ResourceOwner: jsii.String("resourceOwner"), }
type CfnEndpointAccess_NetworkInterfaceProperty ¶ added in v2.55.0
type CfnEndpointAccess_NetworkInterfaceProperty struct { // The Availability Zone. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-networkinterface.html#cfn-redshift-endpointaccess-networkinterface-availabilityzone // AvailabilityZone *string `field:"optional" json:"availabilityZone" yaml:"availabilityZone"` // The network interface identifier. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-networkinterface.html#cfn-redshift-endpointaccess-networkinterface-networkinterfaceid // NetworkInterfaceId *string `field:"optional" json:"networkInterfaceId" yaml:"networkInterfaceId"` // The IPv4 address of the network interface within the subnet. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-networkinterface.html#cfn-redshift-endpointaccess-networkinterface-privateipaddress // PrivateIpAddress *string `field:"optional" json:"privateIpAddress" yaml:"privateIpAddress"` // The subnet identifier. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-networkinterface.html#cfn-redshift-endpointaccess-networkinterface-subnetid // SubnetId *string `field:"optional" json:"subnetId" yaml:"subnetId"` }
Describes a network interface.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" networkInterfaceProperty := &NetworkInterfaceProperty{ AvailabilityZone: jsii.String("availabilityZone"), NetworkInterfaceId: jsii.String("networkInterfaceId"), PrivateIpAddress: jsii.String("privateIpAddress"), SubnetId: jsii.String("subnetId"), }
type CfnEndpointAccess_VpcEndpointProperty ¶ added in v2.55.0
type CfnEndpointAccess_VpcEndpointProperty struct { // One or more network interfaces of the endpoint. // // Also known as an interface endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-vpcendpoint.html#cfn-redshift-endpointaccess-vpcendpoint-networkinterfaces // NetworkInterfaces interface{} `field:"optional" json:"networkInterfaces" yaml:"networkInterfaces"` // The connection endpoint ID for connecting an Amazon Redshift cluster through the proxy. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-vpcendpoint.html#cfn-redshift-endpointaccess-vpcendpoint-vpcendpointid // VpcEndpointId *string `field:"optional" json:"vpcEndpointId" yaml:"vpcEndpointId"` // The VPC identifier that the endpoint is associated. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-vpcendpoint.html#cfn-redshift-endpointaccess-vpcendpoint-vpcid // VpcId *string `field:"optional" json:"vpcId" yaml:"vpcId"` }
The connection endpoint for connecting to an Amazon Redshift cluster through the proxy.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" vpcEndpointProperty := &VpcEndpointProperty{ NetworkInterfaces: []interface{}{ &NetworkInterfaceProperty{ AvailabilityZone: jsii.String("availabilityZone"), NetworkInterfaceId: jsii.String("networkInterfaceId"), PrivateIpAddress: jsii.String("privateIpAddress"), SubnetId: jsii.String("subnetId"), }, }, VpcEndpointId: jsii.String("vpcEndpointId"), VpcId: jsii.String("vpcId"), }
type CfnEndpointAccess_VpcSecurityGroupProperty ¶
type CfnEndpointAccess_VpcSecurityGroupProperty struct { // The status of the endpoint. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-vpcsecuritygroup.html#cfn-redshift-endpointaccess-vpcsecuritygroup-status // Status *string `field:"optional" json:"status" yaml:"status"` // The identifier of the VPC security group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-vpcsecuritygroup.html#cfn-redshift-endpointaccess-vpcsecuritygroup-vpcsecuritygroupid // VpcSecurityGroupId *string `field:"optional" json:"vpcSecurityGroupId" yaml:"vpcSecurityGroupId"` }
The security groups associated with the endpoint.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" vpcSecurityGroupProperty := &VpcSecurityGroupProperty{ Status: jsii.String("status"), VpcSecurityGroupId: jsii.String("vpcSecurityGroupId"), }
type CfnEndpointAuthorization ¶
type CfnEndpointAuthorization interface { awscdk.CfnResource awscdk.IInspectable // The AWS account ID of either the cluster owner (grantor) or grantee. Account() *string SetAccount(val *string) // Indicates whether all VPCs in the grantee account are allowed access to the cluster. AttrAllowedAllVpCs() awscdk.IResolvable // The VPCs allowed access to the cluster. AttrAllowedVpCs() *[]*string // The time (UTC) when the authorization was created. AttrAuthorizeTime() *string // The status of the cluster. AttrClusterStatus() *string // The number of Redshift-managed VPC endpoints created for the authorization. AttrEndpointCount() *float64 // The AWS account ID of the grantee of the cluster. AttrGrantee() *string // The AWS account ID of the cluster owner. AttrGrantor() *string // The status of the authorization action. AttrStatus() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The cluster identifier. ClusterIdentifier() *string SetClusterIdentifier(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // Indicates whether to force the revoke action. Force() interface{} SetForce(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // The virtual private cloud (VPC) identifiers to grant access to. VpcIds() *[]*string SetVpcIds(val *[]*string) // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Describes an endpoint authorization for authorizing Redshift-managed VPC endpoint access to a cluster across AWS accounts .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnEndpointAuthorization := awscdk.Aws_redshift.NewCfnEndpointAuthorization(this, jsii.String("MyCfnEndpointAuthorization"), &CfnEndpointAuthorizationProps{ Account: jsii.String("account"), ClusterIdentifier: jsii.String("clusterIdentifier"), // the properties below are optional Force: jsii.Boolean(false), VpcIds: []*string{ jsii.String("vpcIds"), }, })
func NewCfnEndpointAuthorization ¶
func NewCfnEndpointAuthorization(scope constructs.Construct, id *string, props *CfnEndpointAuthorizationProps) CfnEndpointAuthorization
type CfnEndpointAuthorizationProps ¶
type CfnEndpointAuthorizationProps struct { // The AWS account ID of either the cluster owner (grantor) or grantee. // // If `Grantee` parameter is true, then the `Account` value is of the grantor. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html#cfn-redshift-endpointauthorization-account // Account *string `field:"required" json:"account" yaml:"account"` // The cluster identifier. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html#cfn-redshift-endpointauthorization-clusteridentifier // ClusterIdentifier *string `field:"required" json:"clusterIdentifier" yaml:"clusterIdentifier"` // Indicates whether to force the revoke action. // // If true, the Redshift-managed VPC endpoints associated with the endpoint authorization are also deleted. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html#cfn-redshift-endpointauthorization-force // Force interface{} `field:"optional" json:"force" yaml:"force"` // The virtual private cloud (VPC) identifiers to grant access to. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html#cfn-redshift-endpointauthorization-vpcids // VpcIds *[]*string `field:"optional" json:"vpcIds" yaml:"vpcIds"` }
Properties for defining a `CfnEndpointAuthorization`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnEndpointAuthorizationProps := &CfnEndpointAuthorizationProps{ Account: jsii.String("account"), ClusterIdentifier: jsii.String("clusterIdentifier"), // the properties below are optional Force: jsii.Boolean(false), VpcIds: []*string{ jsii.String("vpcIds"), }, }
type CfnEventSubscription ¶
type CfnEventSubscription interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggable // The AWS account associated with the Amazon Redshift event notification subscription. AttrCustomerAwsId() *string // The name of the Amazon Redshift event notification subscription. AttrCustSubscriptionId() *string // The list of Amazon Redshift event categories specified in the event notification subscription. // // Values: Configuration, Management, Monitoring, Security, Pending. AttrEventCategoriesList() *[]*string // A list of the sources that publish events to the Amazon Redshift event notification subscription. AttrSourceIdsList() *[]*string // The status of the Amazon Redshift event notification subscription. // // Constraints: // // - Can be one of the following: active | no-permission | topic-not-exist // - The status "no-permission" indicates that Amazon Redshift no longer has permission to post to the Amazon SNS topic. The status "topic-not-exist" indicates that the topic was deleted after the subscription was created. AttrStatus() *string // The date and time the Amazon Redshift event notification subscription was created. AttrSubscriptionCreationTime() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // A boolean value;. Enabled() interface{} SetEnabled(val interface{}) // Specifies the Amazon Redshift event categories to be published by the event notification subscription. EventCategories() *[]*string SetEventCategories(val *[]*string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // Specifies the Amazon Redshift event severity to be published by the event notification subscription. Severity() *string SetSeverity(val *string) // The Amazon Resource Name (ARN) of the Amazon SNS topic used to transmit the event notifications. SnsTopicArn() *string SetSnsTopicArn(val *string) // A list of one or more identifiers of Amazon Redshift source objects. SourceIds() *[]*string SetSourceIds(val *[]*string) // The type of source that will be generating the events. SourceType() *string SetSourceType(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The name of the event subscription to be created. SubscriptionName() *string SetSubscriptionName(val *string) // Tag Manager which manages the tags for this resource. Tags() awscdk.TagManager // A list of tag instances. TagsRaw() *[]*awscdk.CfnTag SetTagsRaw(val *[]*awscdk.CfnTag) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnEventSubscription := awscdk.Aws_redshift.NewCfnEventSubscription(this, jsii.String("MyCfnEventSubscription"), &CfnEventSubscriptionProps{ SubscriptionName: jsii.String("subscriptionName"), // the properties below are optional Enabled: jsii.Boolean(false), EventCategories: []*string{ jsii.String("eventCategories"), }, Severity: jsii.String("severity"), SnsTopicArn: jsii.String("snsTopicArn"), SourceIds: []*string{ jsii.String("sourceIds"), }, SourceType: jsii.String("sourceType"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
func NewCfnEventSubscription ¶
func NewCfnEventSubscription(scope constructs.Construct, id *string, props *CfnEventSubscriptionProps) CfnEventSubscription
type CfnEventSubscriptionProps ¶
type CfnEventSubscriptionProps struct { // The name of the event subscription to be created. // // Constraints: // // - Cannot be null, empty, or blank. // - Must contain from 1 to 255 alphanumeric characters or hyphens. // - First character must be a letter. // - Cannot end with a hyphen or contain two consecutive hyphens. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-subscriptionname // SubscriptionName *string `field:"required" json:"subscriptionName" yaml:"subscriptionName"` // A boolean value; // // set to `true` to activate the subscription, and set to `false` to create the subscription but not activate it. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-enabled // Enabled interface{} `field:"optional" json:"enabled" yaml:"enabled"` // Specifies the Amazon Redshift event categories to be published by the event notification subscription. // // Values: configuration, management, monitoring, security, pending. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-eventcategories // EventCategories *[]*string `field:"optional" json:"eventCategories" yaml:"eventCategories"` // Specifies the Amazon Redshift event severity to be published by the event notification subscription. // // Values: ERROR, INFO. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-severity // Severity *string `field:"optional" json:"severity" yaml:"severity"` // The Amazon Resource Name (ARN) of the Amazon SNS topic used to transmit the event notifications. // // The ARN is created by Amazon SNS when you create a topic and subscribe to it. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-snstopicarn // SnsTopicArn *string `field:"optional" json:"snsTopicArn" yaml:"snsTopicArn"` // A list of one or more identifiers of Amazon Redshift source objects. // // All of the objects must be of the same type as was specified in the source type parameter. The event subscription will return only events generated by the specified objects. If not specified, then events are returned for all objects within the source type specified. // // Example: my-cluster-1, my-cluster-2 // // Example: my-snapshot-20131010. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-sourceids // SourceIds *[]*string `field:"optional" json:"sourceIds" yaml:"sourceIds"` // The type of source that will be generating the events. // // For example, if you want to be notified of events generated by a cluster, you would set this parameter to cluster. If this value is not specified, events are returned for all Amazon Redshift objects in your AWS account . You must specify a source type in order to specify source IDs. // // Valid values: cluster, cluster-parameter-group, cluster-security-group, cluster-snapshot, and scheduled-action. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-sourcetype // SourceType *string `field:"optional" json:"sourceType" yaml:"sourceType"` // A list of tag instances. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html#cfn-redshift-eventsubscription-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnEventSubscription`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnEventSubscriptionProps := &CfnEventSubscriptionProps{ SubscriptionName: jsii.String("subscriptionName"), // the properties below are optional Enabled: jsii.Boolean(false), EventCategories: []*string{ jsii.String("eventCategories"), }, Severity: jsii.String("severity"), SnsTopicArn: jsii.String("snsTopicArn"), SourceIds: []*string{ jsii.String("sourceIds"), }, SourceType: jsii.String("sourceType"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
type CfnIntegration ¶ added in v2.163.0
type CfnIntegration interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggableV2 // An optional set of non-secret key–value pairs that contains additional contextual information about the data. AdditionalEncryptionContext() interface{} SetAdditionalEncryptionContext(val interface{}) // The time (UTC) when the integration was created. AttrCreateTime() *string // The Amazon Resource Name (ARN) of the integration. AttrIntegrationArn() *string // Tag Manager which manages the tags for this resource. CdkTagManager() awscdk.TagManager // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The name of the integration. IntegrationName() *string SetIntegrationName(val *string) // An KMS key identifier for the key to use to encrypt the integration. KmsKeyId() *string SetKmsKeyId(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The Amazon Resource Name (ARN) of the database to use as the source for replication, for example, arn:aws:dynamodb:us-east-2:123412341234:table/dynamotable. SourceArn() *string SetSourceArn(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // An array of key-value pairs to apply to this resource. Tags() *[]*awscdk.CfnTag SetTags(val *[]*awscdk.CfnTag) // The Amazon Resource Name (ARN) of the Redshift data warehouse to use as the target for replication, for example, arn:aws:redshift:us-east-2:123412341234:namespace:e43aab3e-10a3-4ec4-83d4-f227ff9bfbcf. TargetArn() *string SetTargetArn(val *string) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Integration from a source AWS service to a Redshift cluster.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnIntegration := awscdk.Aws_redshift.NewCfnIntegration(this, jsii.String("MyCfnIntegration"), &CfnIntegrationProps{ SourceArn: jsii.String("sourceArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional AdditionalEncryptionContext: map[string]*string{ "additionalEncryptionContextKey": jsii.String("additionalEncryptionContext"), }, IntegrationName: jsii.String("integrationName"), KmsKeyId: jsii.String("kmsKeyId"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html
func NewCfnIntegration ¶ added in v2.163.0
func NewCfnIntegration(scope constructs.Construct, id *string, props *CfnIntegrationProps) CfnIntegration
type CfnIntegrationProps ¶ added in v2.163.0
type CfnIntegrationProps struct { // The Amazon Resource Name (ARN) of the database to use as the source for replication, for example, arn:aws:dynamodb:us-east-2:123412341234:table/dynamotable. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html#cfn-redshift-integration-sourcearn // SourceArn *string `field:"required" json:"sourceArn" yaml:"sourceArn"` // The Amazon Resource Name (ARN) of the Redshift data warehouse to use as the target for replication, for example, arn:aws:redshift:us-east-2:123412341234:namespace:e43aab3e-10a3-4ec4-83d4-f227ff9bfbcf. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html#cfn-redshift-integration-targetarn // TargetArn *string `field:"required" json:"targetArn" yaml:"targetArn"` // An optional set of non-secret key–value pairs that contains additional contextual information about the data. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html#cfn-redshift-integration-additionalencryptioncontext // AdditionalEncryptionContext interface{} `field:"optional" json:"additionalEncryptionContext" yaml:"additionalEncryptionContext"` // The name of the integration. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html#cfn-redshift-integration-integrationname // IntegrationName *string `field:"optional" json:"integrationName" yaml:"integrationName"` // An KMS key identifier for the key to use to encrypt the integration. // // If you don't specify an encryption key, the default AWS owned KMS key is used. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html#cfn-redshift-integration-kmskeyid // KmsKeyId *string `field:"optional" json:"kmsKeyId" yaml:"kmsKeyId"` // An array of key-value pairs to apply to this resource. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html#cfn-redshift-integration-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnIntegration`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnIntegrationProps := &CfnIntegrationProps{ SourceArn: jsii.String("sourceArn"), TargetArn: jsii.String("targetArn"), // the properties below are optional AdditionalEncryptionContext: map[string]*string{ "additionalEncryptionContextKey": jsii.String("additionalEncryptionContext"), }, IntegrationName: jsii.String("integrationName"), KmsKeyId: jsii.String("kmsKeyId"), Tags: []cfnTag{ &cfnTag{ Key: jsii.String("key"), Value: jsii.String("value"), }, }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html
type CfnScheduledAction ¶
type CfnScheduledAction interface { awscdk.CfnResource awscdk.IInspectable // List of times when the scheduled action will run. AttrNextInvocations() *[]*string // The state of the scheduled action. // // For example, `DISABLED` . AttrState() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // If true, the schedule is enabled. Enable() interface{} SetEnable(val interface{}) // The end time in UTC when the schedule is no longer active. EndTime() *string SetEndTime(val *string) // The IAM role to assume to run the scheduled action. IamRole() *string SetIamRole(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The schedule for a one-time (at format) or recurring (cron format) scheduled action. Schedule() *string SetSchedule(val *string) // The description of the scheduled action. ScheduledActionDescription() *string SetScheduledActionDescription(val *string) // The name of the scheduled action. ScheduledActionName() *string SetScheduledActionName(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The start time in UTC when the schedule is active. StartTime() *string SetStartTime(val *string) // A JSON format string of the Amazon Redshift API operation with input parameters. TargetAction() interface{} SetTargetAction(val interface{}) // Deprecated. // Deprecated: use `updatedProperties` // // Return properties modified after initiation // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
Creates a scheduled action.
A scheduled action contains a schedule and an Amazon Redshift API action. For example, you can create a schedule of when to run the `ResizeCluster` API operation.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnScheduledAction := awscdk.Aws_redshift.NewCfnScheduledAction(this, jsii.String("MyCfnScheduledAction"), &CfnScheduledActionProps{ ScheduledActionName: jsii.String("scheduledActionName"), // the properties below are optional Enable: jsii.Boolean(false), EndTime: jsii.String("endTime"), IamRole: jsii.String("iamRole"), Schedule: jsii.String("schedule"), ScheduledActionDescription: jsii.String("scheduledActionDescription"), StartTime: jsii.String("startTime"), TargetAction: &ScheduledActionTypeProperty{ PauseCluster: &PauseClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }, ResizeCluster: &ResizeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), // the properties below are optional Classic: jsii.Boolean(false), ClusterType: jsii.String("clusterType"), NodeType: jsii.String("nodeType"), NumberOfNodes: jsii.Number(123), }, ResumeCluster: &ResumeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }, }, })
func NewCfnScheduledAction ¶
func NewCfnScheduledAction(scope constructs.Construct, id *string, props *CfnScheduledActionProps) CfnScheduledAction
type CfnScheduledActionProps ¶
type CfnScheduledActionProps struct { // The name of the scheduled action. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-scheduledactionname // ScheduledActionName *string `field:"required" json:"scheduledActionName" yaml:"scheduledActionName"` // If true, the schedule is enabled. // // If false, the scheduled action does not trigger. For more information about `state` of the scheduled action, see `ScheduledAction` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-enable // Enable interface{} `field:"optional" json:"enable" yaml:"enable"` // The end time in UTC when the schedule is no longer active. // // After this time, the scheduled action does not trigger. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-endtime // EndTime *string `field:"optional" json:"endTime" yaml:"endTime"` // The IAM role to assume to run the scheduled action. // // This IAM role must have permission to run the Amazon Redshift API operation in the scheduled action. This IAM role must allow the Amazon Redshift scheduler (Principal scheduler.redshift.amazonaws.com) to assume permissions on your behalf. For more information about the IAM role to use with the Amazon Redshift scheduler, see [Using Identity-Based Policies for Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html) in the *Amazon Redshift Cluster Management Guide* . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-iamrole // IamRole *string `field:"optional" json:"iamRole" yaml:"iamRole"` // The schedule for a one-time (at format) or recurring (cron format) scheduled action. // // Schedule invocations must be separated by at least one hour. // // Format of at expressions is " `at(yyyy-mm-ddThh:mm:ss)` ". For example, " `at(2016-03-04T17:27:00)` ". // // Format of cron expressions is " `cron(Minutes Hours Day-of-month Month Day-of-week Year)` ". For example, " `cron(0 10 ? * MON *)` ". For more information, see [Cron Expressions](https://docs.aws.amazon.com//AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) in the *Amazon CloudWatch Events User Guide* . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-schedule // Schedule *string `field:"optional" json:"schedule" yaml:"schedule"` // The description of the scheduled action. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-scheduledactiondescription // ScheduledActionDescription *string `field:"optional" json:"scheduledActionDescription" yaml:"scheduledActionDescription"` // The start time in UTC when the schedule is active. // // Before this time, the scheduled action does not trigger. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-starttime // StartTime *string `field:"optional" json:"startTime" yaml:"startTime"` // A JSON format string of the Amazon Redshift API operation with input parameters. // // " `{\"ResizeCluster\":{\"NodeType\":\"ra3.4xlarge\",\"ClusterIdentifier\":\"my-test-cluster\",\"NumberOfNodes\":3}}` ". // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html#cfn-redshift-scheduledaction-targetaction // TargetAction interface{} `field:"optional" json:"targetAction" yaml:"targetAction"` }
Properties for defining a `CfnScheduledAction`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnScheduledActionProps := &CfnScheduledActionProps{ ScheduledActionName: jsii.String("scheduledActionName"), // the properties below are optional Enable: jsii.Boolean(false), EndTime: jsii.String("endTime"), IamRole: jsii.String("iamRole"), Schedule: jsii.String("schedule"), ScheduledActionDescription: jsii.String("scheduledActionDescription"), StartTime: jsii.String("startTime"), TargetAction: &ScheduledActionTypeProperty{ PauseCluster: &PauseClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }, ResizeCluster: &ResizeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), // the properties below are optional Classic: jsii.Boolean(false), ClusterType: jsii.String("clusterType"), NodeType: jsii.String("nodeType"), NumberOfNodes: jsii.Number(123), }, ResumeCluster: &ResumeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }, }, }
type CfnScheduledAction_PauseClusterMessageProperty ¶
type CfnScheduledAction_PauseClusterMessageProperty struct { // The identifier of the cluster to be paused. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-pauseclustermessage.html#cfn-redshift-scheduledaction-pauseclustermessage-clusteridentifier // ClusterIdentifier *string `field:"required" json:"clusterIdentifier" yaml:"clusterIdentifier"` }
Describes a pause cluster operation.
For example, a scheduled action to run the `PauseCluster` API operation.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" pauseClusterMessageProperty := &PauseClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }
type CfnScheduledAction_ResizeClusterMessageProperty ¶
type CfnScheduledAction_ResizeClusterMessageProperty struct { // The unique identifier for the cluster to resize. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resizeclustermessage.html#cfn-redshift-scheduledaction-resizeclustermessage-clusteridentifier // ClusterIdentifier *string `field:"required" json:"clusterIdentifier" yaml:"clusterIdentifier"` // A boolean value indicating whether the resize operation is using the classic resize process. // // If you don't provide this parameter or set the value to `false` , the resize type is elastic. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resizeclustermessage.html#cfn-redshift-scheduledaction-resizeclustermessage-classic // Classic interface{} `field:"optional" json:"classic" yaml:"classic"` // The new cluster type for the specified cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resizeclustermessage.html#cfn-redshift-scheduledaction-resizeclustermessage-clustertype // ClusterType *string `field:"optional" json:"clusterType" yaml:"clusterType"` // The new node type for the nodes you are adding. // // If not specified, the cluster's current node type is used. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resizeclustermessage.html#cfn-redshift-scheduledaction-resizeclustermessage-nodetype // NodeType *string `field:"optional" json:"nodeType" yaml:"nodeType"` // The new number of nodes for the cluster. // // If not specified, the cluster's current number of nodes is used. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resizeclustermessage.html#cfn-redshift-scheduledaction-resizeclustermessage-numberofnodes // NumberOfNodes *float64 `field:"optional" json:"numberOfNodes" yaml:"numberOfNodes"` }
Describes a resize cluster operation.
For example, a scheduled action to run the `ResizeCluster` API operation.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" resizeClusterMessageProperty := &ResizeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), // the properties below are optional Classic: jsii.Boolean(false), ClusterType: jsii.String("clusterType"), NodeType: jsii.String("nodeType"), NumberOfNodes: jsii.Number(123), }
type CfnScheduledAction_ResumeClusterMessageProperty ¶
type CfnScheduledAction_ResumeClusterMessageProperty struct { // The identifier of the cluster to be resumed. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resumeclustermessage.html#cfn-redshift-scheduledaction-resumeclustermessage-clusteridentifier // ClusterIdentifier *string `field:"required" json:"clusterIdentifier" yaml:"clusterIdentifier"` }
Describes a resume cluster operation.
For example, a scheduled action to run the `ResumeCluster` API operation.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" resumeClusterMessageProperty := &ResumeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }
type CfnScheduledAction_ScheduledActionTypeProperty ¶
type CfnScheduledAction_ScheduledActionTypeProperty struct { // An action that runs a `PauseCluster` API operation. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-scheduledactiontype.html#cfn-redshift-scheduledaction-scheduledactiontype-pausecluster // PauseCluster interface{} `field:"optional" json:"pauseCluster" yaml:"pauseCluster"` // An action that runs a `ResizeCluster` API operation. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-scheduledactiontype.html#cfn-redshift-scheduledaction-scheduledactiontype-resizecluster // ResizeCluster interface{} `field:"optional" json:"resizeCluster" yaml:"resizeCluster"` // An action that runs a `ResumeCluster` API operation. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-scheduledactiontype.html#cfn-redshift-scheduledaction-scheduledactiontype-resumecluster // ResumeCluster interface{} `field:"optional" json:"resumeCluster" yaml:"resumeCluster"` }
The action type that specifies an Amazon Redshift API operation that is supported by the Amazon Redshift scheduler.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" scheduledActionTypeProperty := &ScheduledActionTypeProperty{ PauseCluster: &PauseClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }, ResizeCluster: &ResizeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), // the properties below are optional Classic: jsii.Boolean(false), ClusterType: jsii.String("clusterType"), NodeType: jsii.String("nodeType"), NumberOfNodes: jsii.Number(123), }, ResumeCluster: &ResumeClusterMessageProperty{ ClusterIdentifier: jsii.String("clusterIdentifier"), }, }
Source Files ¶
- CfnCluster.go
- CfnClusterParameterGroup.go
- CfnClusterParameterGroupProps.go
- CfnClusterParameterGroup_ParameterProperty.go
- CfnClusterParameterGroup__checks.go
- CfnClusterProps.go
- CfnClusterSecurityGroup.go
- CfnClusterSecurityGroupIngress.go
- CfnClusterSecurityGroupIngressProps.go
- CfnClusterSecurityGroupIngress__checks.go
- CfnClusterSecurityGroupProps.go
- CfnClusterSecurityGroup__checks.go
- CfnClusterSubnetGroup.go
- CfnClusterSubnetGroupProps.go
- CfnClusterSubnetGroup__checks.go
- CfnCluster_EndpointProperty.go
- CfnCluster_LoggingPropertiesProperty.go
- CfnCluster__checks.go
- CfnEndpointAccess.go
- CfnEndpointAccessProps.go
- CfnEndpointAccess_NetworkInterfaceProperty.go
- CfnEndpointAccess_VpcEndpointProperty.go
- CfnEndpointAccess_VpcSecurityGroupProperty.go
- CfnEndpointAccess__checks.go
- CfnEndpointAuthorization.go
- CfnEndpointAuthorizationProps.go
- CfnEndpointAuthorization__checks.go
- CfnEventSubscription.go
- CfnEventSubscriptionProps.go
- CfnEventSubscription__checks.go
- CfnIntegration.go
- CfnIntegrationProps.go
- CfnIntegration__checks.go
- CfnScheduledAction.go
- CfnScheduledActionProps.go
- CfnScheduledAction_PauseClusterMessageProperty.go
- CfnScheduledAction_ResizeClusterMessageProperty.go
- CfnScheduledAction_ResumeClusterMessageProperty.go
- CfnScheduledAction_ScheduledActionTypeProperty.go
- CfnScheduledAction__checks.go
- main.go