Source code for troposphere.redshift

# Copyright (c) 2012-2024, Mark Peek <mark@peek.org>
# All rights reserved.
#
# See LICENSE file for full license.
#
# *** Do not modify - this file is autogenerated ***


from . import AWSObject, AWSProperty, PropsDictType, Tags
from .validators import boolean, integer


[docs]class Endpoint(AWSProperty): """ `Endpoint <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-endpoint.html>`__ """ props: PropsDictType = { "Address": (str, False), "Port": (str, False), }
[docs]class LoggingProperties(AWSProperty): """ `LoggingProperties <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-cluster-loggingproperties.html>`__ """ props: PropsDictType = { "BucketName": (str, False), "S3KeyPrefix": (str, False), }
[docs]class Cluster(AWSObject): """ `Cluster <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html>`__ """ resource_type = "AWS::Redshift::Cluster" props: PropsDictType = { "AllowVersionUpgrade": (boolean, False), "AquaConfigurationStatus": (str, False), "AutomatedSnapshotRetentionPeriod": (integer, False), "AvailabilityZone": (str, False), "AvailabilityZoneRelocation": (boolean, False), "AvailabilityZoneRelocationStatus": (str, False), "Classic": (boolean, False), "ClusterIdentifier": (str, False), "ClusterParameterGroupName": (str, False), "ClusterSecurityGroups": ([str], False), "ClusterSubnetGroupName": (str, False), "ClusterType": (str, True), "ClusterVersion": (str, False), "DBName": (str, True), "DeferMaintenance": (boolean, False), "DeferMaintenanceDuration": (integer, False), "DeferMaintenanceEndTime": (str, False), "DeferMaintenanceStartTime": (str, False), "DestinationRegion": (str, False), "ElasticIp": (str, False), "Encrypted": (boolean, False), "Endpoint": (Endpoint, False), "EnhancedVpcRouting": (boolean, False), "HsmClientCertificateIdentifier": (str, False), "HsmConfigurationIdentifier": (str, False), "IamRoles": ([str], False), "KmsKeyId": (str, False), "LoggingProperties": (LoggingProperties, False), "MaintenanceTrackName": (str, False), "ManageMasterPassword": (boolean, False), "ManualSnapshotRetentionPeriod": (integer, False), "MasterPasswordSecretKmsKeyId": (str, False), "MasterUserPassword": (str, False), "MasterUsername": (str, True), "MultiAZ": (boolean, False), "NamespaceResourcePolicy": (dict, False), "NodeType": (str, True), "NumberOfNodes": (integer, False), "OwnerAccount": (str, False), "Port": (integer, False), "PreferredMaintenanceWindow": (str, False), "PubliclyAccessible": (boolean, False), "ResourceAction": (str, False), "RevisionTarget": (str, False), "RotateEncryptionKey": (boolean, False), "SnapshotClusterIdentifier": (str, False), "SnapshotCopyGrantName": (str, False), "SnapshotCopyManual": (boolean, False), "SnapshotCopyRetentionPeriod": (integer, False), "SnapshotIdentifier": (str, False), "Tags": (Tags, False), "VpcSecurityGroupIds": ([str], False), }
[docs]class AmazonRedshiftParameter(AWSProperty): """ `AmazonRedshiftParameter <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-clusterparametergroup-parameter.html>`__ """ props: PropsDictType = { "ParameterName": (str, True), "ParameterValue": (str, True), }
[docs]class ClusterParameterGroup(AWSObject): """ `ClusterParameterGroup <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html>`__ """ resource_type = "AWS::Redshift::ClusterParameterGroup" props: PropsDictType = { "Description": (str, True), "ParameterGroupFamily": (str, True), "ParameterGroupName": (str, False), "Parameters": ([AmazonRedshiftParameter], False), "Tags": (Tags, False), }
[docs]class ClusterSecurityGroup(AWSObject): """ `ClusterSecurityGroup <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html>`__ """ resource_type = "AWS::Redshift::ClusterSecurityGroup" props: PropsDictType = { "Description": (str, True), "Tags": (Tags, False), }
[docs]class ClusterSecurityGroupIngress(AWSObject): """ `ClusterSecurityGroupIngress <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html>`__ """ resource_type = "AWS::Redshift::ClusterSecurityGroupIngress" props: PropsDictType = { "CIDRIP": (str, False), "ClusterSecurityGroupName": (str, True), "EC2SecurityGroupName": (str, False), "EC2SecurityGroupOwnerId": (str, False), }
[docs]class ClusterSubnetGroup(AWSObject): """ `ClusterSubnetGroup <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html>`__ """ resource_type = "AWS::Redshift::ClusterSubnetGroup" props: PropsDictType = { "Description": (str, True), "SubnetIds": ([str], True), "Tags": (Tags, False), }
[docs]class EndpointAccess(AWSObject): """ `EndpointAccess <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html>`__ """ resource_type = "AWS::Redshift::EndpointAccess" props: PropsDictType = { "ClusterIdentifier": (str, True), "EndpointName": (str, True), "ResourceOwner": (str, False), "SubnetGroupName": (str, True), "VpcSecurityGroupIds": ([str], True), }
[docs]class EndpointAuthorization(AWSObject): """ `EndpointAuthorization <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html>`__ """ resource_type = "AWS::Redshift::EndpointAuthorization" props: PropsDictType = { "Account": (str, True), "ClusterIdentifier": (str, True), "Force": (boolean, False), "VpcIds": ([str], False), }
[docs]class EventSubscription(AWSObject): """ `EventSubscription <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html>`__ """ resource_type = "AWS::Redshift::EventSubscription" props: PropsDictType = { "Enabled": (boolean, False), "EventCategories": ([str], False), "Severity": (str, False), "SnsTopicArn": (str, False), "SourceIds": ([str], False), "SourceType": (str, False), "SubscriptionName": (str, True), "Tags": (Tags, False), }
[docs]class PauseClusterMessage(AWSProperty): """ `PauseClusterMessage <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-pauseclustermessage.html>`__ """ props: PropsDictType = { "ClusterIdentifier": (str, True), }
[docs]class ResizeClusterMessage(AWSProperty): """ `ResizeClusterMessage <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resizeclustermessage.html>`__ """ props: PropsDictType = { "Classic": (boolean, False), "ClusterIdentifier": (str, True), "ClusterType": (str, False), "NodeType": (str, False), "NumberOfNodes": (integer, False), }
[docs]class ResumeClusterMessage(AWSProperty): """ `ResumeClusterMessage <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-resumeclustermessage.html>`__ """ props: PropsDictType = { "ClusterIdentifier": (str, True), }
[docs]class ScheduledActionType(AWSProperty): """ `ScheduledActionType <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-scheduledaction-scheduledactiontype.html>`__ """ props: PropsDictType = { "PauseCluster": (PauseClusterMessage, False), "ResizeCluster": (ResizeClusterMessage, False), "ResumeCluster": (ResumeClusterMessage, False), }
[docs]class ScheduledAction(AWSObject): """ `ScheduledAction <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html>`__ """ resource_type = "AWS::Redshift::ScheduledAction" props: PropsDictType = { "Enable": (boolean, False), "EndTime": (str, False), "IamRole": (str, False), "Schedule": (str, False), "ScheduledActionDescription": (str, False), "ScheduledActionName": (str, True), "StartTime": (str, False), "TargetAction": (ScheduledActionType, False), }
[docs]class NetworkInterface(AWSProperty): """ `NetworkInterface <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-networkinterface.html>`__ """ props: PropsDictType = { "AvailabilityZone": (str, False), "NetworkInterfaceId": (str, False), "PrivateIpAddress": (str, False), "SubnetId": (str, False), }
[docs]class VpcEndpoint(AWSProperty): """ `VpcEndpoint <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-vpcendpoint.html>`__ """ props: PropsDictType = { "NetworkInterfaces": ([NetworkInterface], False), "VpcEndpointId": (str, False), "VpcId": (str, False), }
[docs]class VpcSecurityGroup(AWSProperty): """ `VpcSecurityGroup <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-redshift-endpointaccess-vpcsecuritygroup.html>`__ """ props: PropsDictType = { "Status": (str, False), "VpcSecurityGroupId": (str, False), }