File Coverage

blib/lib/Cfn/Resource/AWS/Redshift/Cluster.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1 1     1   689 use Moose::Util::TypeConstraints;
  1         4  
  1         10  
2              
3             coerce 'Cfn::Resource::Properties::AWS::Redshift::Cluster',
4             from 'HashRef',
5             via { Cfn::Resource::Properties::AWS::Redshift::Cluster->new( %$_ ) };
6              
7             package Cfn::Resource::AWS::Redshift::Cluster {
8 1     1   2528 use Moose;
  1         3  
  1         7  
9             extends 'Cfn::Resource';
10             has Properties => (isa => 'Cfn::Resource::Properties::AWS::Redshift::Cluster', is => 'rw', coerce => 1, required => 1);
11             }
12              
13             package Cfn::Resource::Properties::AWS::Redshift::Cluster {
14 1     1   7648 use Moose;
  1         6  
  1         5  
15 1     1   6757 use MooseX::StrictConstructor;
  1         2  
  1         10  
16             extends 'Cfn::Resource::Properties';
17             has AllowVersionUpgrade => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
18             has AutomatedSnapshotRetentionPeriod => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
19             has AvailabilityZone => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
20             has ClusterParameterGroupName => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
21             has ClusterSecurityGroups => (isa => 'Cfn::Value::Array|Cfn::Value::Function', is => 'rw', coerce => 1);
22             has ClusterSubnetGroupName => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
23             has ClusterType => (isa => 'Cfn::Value', is => 'rw', coerce => 1, required => 1);
24             has ClusterVersion => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
25             has DBName => (isa => 'Cfn::Value', is => 'rw', coerce => 1, required => 1);
26             has ElasticIp => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
27             has Encrypted => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
28             has HsmClientCertificateIdentifier => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
29             has HsmConfigurationIdentifier => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
30             has KmsKeyId => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
31             has MasterUsername => (isa => 'Cfn::Value', is => 'rw', coerce => 1, required => 1);
32             has MasterUserPassword => (isa => 'Cfn::Value', is => 'rw', coerce => 1, required => 1);
33             has NodeType => (isa => 'Cfn::Value', is => 'rw', coerce => 1, required => 1);
34             has NumberOfNodes => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
35             has OwnerAccount => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
36             has Port => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
37             has PreferredMaintenanceWindow => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
38             has PubliclyAccessible => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
39             has SnapshotClusterIdentifier => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
40             has SnapshotIdentifier => (isa => 'Cfn::Value', is => 'rw', coerce => 1);
41             has VpcSecurityGroupIds => (isa => 'Cfn::Value::Array|Cfn::Value::Function', is => 'rw', coerce => 1);
42             }
43              
44             1;
45