File Coverage

blib/lib/Cfn/Resource/AWS/AutoScaling/LaunchConfiguration.pm
Criterion Covered Total %
statement 32 32 100.0
branch n/a
condition n/a
subroutine 12 12 100.0
pod 0 2 0.0
total 44 46 95.6


line stmt bran cond sub pod time code
1             # AWS::AutoScaling::LaunchConfiguration generated from spec 20.1.0
2 5     5   3928 use Moose::Util::TypeConstraints;
  5         14  
  5         62  
3              
4             coerce 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::AutoScaling::LaunchConfiguration {
9 5     5   11221 use Moose;
  5         12  
  5         53  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 4 [ ]
15             }
16             sub supported_regions {
17 1     1 0 1216 [ 'af-south-1','ap-east-1','ap-northeast-1','ap-northeast-2','ap-northeast-3','ap-south-1','ap-southeast-1','ap-southeast-2','ca-central-1','cn-north-1','cn-northwest-1','eu-central-1','eu-north-1','eu-south-1','eu-west-1','eu-west-2','eu-west-3','me-south-1','sa-east-1','us-east-1','us-east-2','us-gov-east-1','us-gov-west-1','us-west-1','us-west-2' ]
18             }
19             }
20              
21              
22              
23             subtype 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDevice',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDevice',
27             from 'HashRef',
28             via {
29             if (my $f = Cfn::TypeLibrary::try_function($_)) {
30             return $f
31             } else {
32             return Cfn::Resource::Properties::Object::AWS::AutoScaling::LaunchConfiguration::BlockDevice->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::Object::AWS::AutoScaling::LaunchConfiguration::BlockDevice {
37 5     5   37575 use Moose;
  5         15  
  5         35  
38 5     5   33487 use MooseX::StrictConstructor;
  5         25  
  5         51  
39             extends 'Cfn::Value::TypedValue';
40            
41             has DeleteOnTermination => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             has Encrypted => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
43             has Iops => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
44             has SnapshotId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
45             has VolumeSize => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
46             has VolumeType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
47             }
48              
49             subtype 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::MetadataOption',
50             as 'Cfn::Value';
51              
52             coerce 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::MetadataOption',
53             from 'HashRef',
54             via {
55             if (my $f = Cfn::TypeLibrary::try_function($_)) {
56             return $f
57             } else {
58             return Cfn::Resource::Properties::Object::AWS::AutoScaling::LaunchConfiguration::MetadataOption->new( %$_ );
59             }
60             };
61              
62             package Cfn::Resource::Properties::Object::AWS::AutoScaling::LaunchConfiguration::MetadataOption {
63 5     5   19102 use Moose;
  5         14  
  5         40  
64 5     5   34129 use MooseX::StrictConstructor;
  5         28  
  5         34  
65             extends 'Cfn::Value::TypedValue';
66            
67             has HttpEndpoint => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
68             has HttpPutResponseHopLimit => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
69             has HttpTokens => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
70             }
71             subtype 'ArrayOfCfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping',
72             as 'Cfn::Value',
73             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
74             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
75              
76             coerce 'ArrayOfCfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping',
77             from 'HashRef',
78             via {
79             if (my $f = Cfn::TypeLibrary::try_function($_)) {
80             return $f
81             } else {
82             die 'Only accepts functions';
83             }
84             },
85             from 'ArrayRef',
86             via {
87             Cfn::Value::Array->new(Value => [
88             map {
89             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping')->coerce($_)
90             } @$_
91             ]);
92             };
93              
94             subtype 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping',
95             as 'Cfn::Value';
96              
97             coerce 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping',
98             from 'HashRef',
99             via {
100             if (my $f = Cfn::TypeLibrary::try_function($_)) {
101             return $f
102             } else {
103             return Cfn::Resource::Properties::Object::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping->new( %$_ );
104             }
105             };
106              
107             package Cfn::Resource::Properties::Object::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping {
108 5     5   18279 use Moose;
  5         17  
  5         38  
109 5     5   33676 use MooseX::StrictConstructor;
  5         17  
  5         27  
110             extends 'Cfn::Value::TypedValue';
111            
112             has DeviceName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
113             has Ebs => (isa => 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDevice', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
114             has NoDevice => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
115             has VirtualName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
116             }
117              
118             package Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration {
119 5     5   17349 use Moose;
  5         14  
  5         30  
120 5     5   33723 use MooseX::StrictConstructor;
  5         16  
  5         31  
121             extends 'Cfn::Resource::Properties';
122            
123             has AssociatePublicIpAddress => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
124             has BlockDeviceMappings => (isa => 'ArrayOfCfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::BlockDeviceMapping', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
125             has ClassicLinkVPCId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
126             has ClassicLinkVPCSecurityGroups => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
127             has EbsOptimized => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
128             has IamInstanceProfile => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
129             has ImageId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
130             has InstanceId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
131             has InstanceMonitoring => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
132             has InstanceType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
133             has KernelId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
134             has KeyName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
135             has LaunchConfigurationName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
136             has MetadataOptions => (isa => 'Cfn::Resource::Properties::AWS::AutoScaling::LaunchConfiguration::MetadataOption', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
137             has PlacementTenancy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
138             has RamDiskId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
139             has SecurityGroups => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
140             has SpotPrice => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
141             has UserData => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
142             }
143              
144             1;
145             ### main pod documentation begin ###
146              
147             =encoding UTF-8
148              
149             =head1 NAME
150              
151             Cfn::Resource::AWS::AutoScaling::LaunchConfiguration - Cfn resource for AWS::AutoScaling::LaunchConfiguration
152              
153             =head1 DESCRIPTION
154              
155             This module implements a Perl module that represents the CloudFormation object AWS::AutoScaling::LaunchConfiguration.
156              
157             See L<Cfn> for more information on how to use it.
158              
159             =head1 AUTHOR
160              
161             Jose Luis Martinez
162             CAPSiDE
163             jlmartinez@capside.com
164              
165             =head1 COPYRIGHT and LICENSE
166              
167             Copyright (c) 2013 by CAPSiDE
168             This code is distributed under the Apache 2 License. The full text of the
169             license can be found in the LICENSE file included with this module.
170              
171             =cut