File Coverage

blib/lib/Cfn/Resource/AWS/EC2/EC2Fleet.pm
Criterion Covered Total %
statement 68 68 100.0
branch n/a
condition n/a
subroutine 24 24 100.0
pod 0 2 0.0
total 92 94 97.8


line stmt bran cond sub pod time code
1             # AWS::EC2::EC2Fleet generated from spec 18.4.0
2 1     1   751 use Moose::Util::TypeConstraints;
  1         4  
  1         10  
3              
4             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::EC2::EC2Fleet->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::EC2::EC2Fleet {
9 1     1   2145 use Moose;
  1         2  
  1         8  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 3 [ ]
15             }
16             sub supported_regions {
17 1     1 0 1184 [ '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-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::EC2::EC2Fleet::Placement',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::Placement',
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::EC2::EC2Fleet::Placement->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::Placement {
37 1     1   7256 use Moose;
  1         3  
  1         6  
38 1     1   6665 use MooseX::StrictConstructor;
  1         2  
  1         11  
39             extends 'Cfn::Value::TypedValue';
40            
41             has Affinity => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
42             has AvailabilityZone => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
43             has GroupName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
44             has HostId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
45             has HostResourceGroupArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
46             has PartitionNumber => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
47             has SpreadDomain => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
48             has Tenancy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
49             }
50              
51             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateSpecificationRequest',
52             as 'Cfn::Value';
53              
54             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateSpecificationRequest',
55             from 'HashRef',
56             via {
57             if (my $f = Cfn::TypeLibrary::try_function($_)) {
58             return $f
59             } else {
60             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::FleetLaunchTemplateSpecificationRequest->new( %$_ );
61             }
62             };
63              
64             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::FleetLaunchTemplateSpecificationRequest {
65 1     1   3741 use Moose;
  1         3  
  1         6  
66 1     1   6688 use MooseX::StrictConstructor;
  1         3  
  1         5  
67             extends 'Cfn::Value::TypedValue';
68            
69             has LaunchTemplateId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
70             has LaunchTemplateName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
71             has Version => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
72             }
73             subtype 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest',
74             as 'Cfn::Value',
75             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
76             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
77              
78             coerce 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest',
79             from 'HashRef',
80             via {
81             if (my $f = Cfn::TypeLibrary::try_function($_)) {
82             return $f
83             } else {
84             die 'Only accepts functions';
85             }
86             },
87             from 'ArrayRef',
88             via {
89             Cfn::Value::Array->new(Value => [
90             map {
91             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest')->coerce($_)
92             } @$_
93             ]);
94             };
95              
96             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest',
97             as 'Cfn::Value';
98              
99             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest',
100             from 'HashRef',
101             via {
102             if (my $f = Cfn::TypeLibrary::try_function($_)) {
103             return $f
104             } else {
105             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest->new( %$_ );
106             }
107             };
108              
109             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest {
110 1     1   3615 use Moose;
  1         3  
  1         5  
111 1     1   6641 use MooseX::StrictConstructor;
  1         3  
  1         6  
112             extends 'Cfn::Value::TypedValue';
113            
114             has AvailabilityZone => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
115             has InstanceType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
116             has MaxPrice => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
117             has Placement => (isa => 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::Placement', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
118             has Priority => (isa => 'Cfn::Value::Double', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
119             has SubnetId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
120             has WeightedCapacity => (isa => 'Cfn::Value::Double', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
121             }
122              
123             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::CapacityReservationOptionsRequest',
124             as 'Cfn::Value';
125              
126             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::CapacityReservationOptionsRequest',
127             from 'HashRef',
128             via {
129             if (my $f = Cfn::TypeLibrary::try_function($_)) {
130             return $f
131             } else {
132             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::CapacityReservationOptionsRequest->new( %$_ );
133             }
134             };
135              
136             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::CapacityReservationOptionsRequest {
137 1     1   3510 use Moose;
  1         3  
  1         6  
138 1     1   6729 use MooseX::StrictConstructor;
  1         2  
  1         5  
139             extends 'Cfn::Value::TypedValue';
140            
141             has UsageStrategy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
142             }
143              
144             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::TargetCapacitySpecificationRequest',
145             as 'Cfn::Value';
146              
147             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::TargetCapacitySpecificationRequest',
148             from 'HashRef',
149             via {
150             if (my $f = Cfn::TypeLibrary::try_function($_)) {
151             return $f
152             } else {
153             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::TargetCapacitySpecificationRequest->new( %$_ );
154             }
155             };
156              
157             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::TargetCapacitySpecificationRequest {
158 1     1   3535 use Moose;
  1         2  
  1         7  
159 1     1   6647 use MooseX::StrictConstructor;
  1         3  
  1         6  
160             extends 'Cfn::Value::TypedValue';
161            
162             has DefaultTargetCapacityType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
163             has OnDemandTargetCapacity => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
164             has SpotTargetCapacity => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
165             has TotalTargetCapacity => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
166             }
167             subtype 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::TagSpecification',
168             as 'Cfn::Value',
169             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
170             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
171              
172             coerce 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::TagSpecification',
173             from 'HashRef',
174             via {
175             if (my $f = Cfn::TypeLibrary::try_function($_)) {
176             return $f
177             } else {
178             die 'Only accepts functions';
179             }
180             },
181             from 'ArrayRef',
182             via {
183             Cfn::Value::Array->new(Value => [
184             map {
185             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::EC2::EC2Fleet::TagSpecification')->coerce($_)
186             } @$_
187             ]);
188             };
189              
190             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::TagSpecification',
191             as 'Cfn::Value';
192              
193             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::TagSpecification',
194             from 'HashRef',
195             via {
196             if (my $f = Cfn::TypeLibrary::try_function($_)) {
197             return $f
198             } else {
199             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::TagSpecification->new( %$_ );
200             }
201             };
202              
203             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::TagSpecification {
204 1     1   3634 use Moose;
  1         3  
  1         7  
205 1     1   6705 use MooseX::StrictConstructor;
  1         3  
  1         7  
206             extends 'Cfn::Value::TypedValue';
207            
208             has ResourceType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
209             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
210             }
211              
212             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::SpotOptionsRequest',
213             as 'Cfn::Value';
214              
215             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::SpotOptionsRequest',
216             from 'HashRef',
217             via {
218             if (my $f = Cfn::TypeLibrary::try_function($_)) {
219             return $f
220             } else {
221             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::SpotOptionsRequest->new( %$_ );
222             }
223             };
224              
225             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::SpotOptionsRequest {
226 1     1   3371 use Moose;
  1         2  
  1         6  
227 1     1   6718 use MooseX::StrictConstructor;
  1         4  
  1         6  
228             extends 'Cfn::Value::TypedValue';
229            
230             has AllocationStrategy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
231             has InstanceInterruptionBehavior => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
232             has InstancePoolsToUseCount => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
233             has MaxTotalPrice => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
234             has MinTargetCapacity => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
235             has SingleAvailabilityZone => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
236             has SingleInstanceType => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
237             }
238              
239             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::OnDemandOptionsRequest',
240             as 'Cfn::Value';
241              
242             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::OnDemandOptionsRequest',
243             from 'HashRef',
244             via {
245             if (my $f = Cfn::TypeLibrary::try_function($_)) {
246             return $f
247             } else {
248             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::OnDemandOptionsRequest->new( %$_ );
249             }
250             };
251              
252             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::OnDemandOptionsRequest {
253 1     1   3607 use Moose;
  1         2  
  1         7  
254 1     1   6989 use MooseX::StrictConstructor;
  1         3  
  1         5  
255             extends 'Cfn::Value::TypedValue';
256            
257             has AllocationStrategy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
258             has CapacityReservationOptions => (isa => 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::CapacityReservationOptionsRequest', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
259             has MaxTotalPrice => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
260             has MinTargetCapacity => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
261             has SingleAvailabilityZone => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
262             has SingleInstanceType => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
263             }
264             subtype 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest',
265             as 'Cfn::Value',
266             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
267             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
268              
269             coerce 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest',
270             from 'HashRef',
271             via {
272             if (my $f = Cfn::TypeLibrary::try_function($_)) {
273             return $f
274             } else {
275             die 'Only accepts functions';
276             }
277             },
278             from 'ArrayRef',
279             via {
280             Cfn::Value::Array->new(Value => [
281             map {
282             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest')->coerce($_)
283             } @$_
284             ]);
285             };
286              
287             subtype 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest',
288             as 'Cfn::Value';
289              
290             coerce 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest',
291             from 'HashRef',
292             via {
293             if (my $f = Cfn::TypeLibrary::try_function($_)) {
294             return $f
295             } else {
296             return Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest->new( %$_ );
297             }
298             };
299              
300             package Cfn::Resource::Properties::Object::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest {
301 1     1   4359 use Moose;
  1         3  
  1         5  
302 1     1   6808 use MooseX::StrictConstructor;
  1         4  
  1         4  
303             extends 'Cfn::Value::TypedValue';
304            
305             has LaunchTemplateSpecification => (isa => 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateSpecificationRequest', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
306             has Overrides => (isa => 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateOverridesRequest', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
307             }
308              
309             package Cfn::Resource::Properties::AWS::EC2::EC2Fleet {
310 1     1   3375 use Moose;
  1         3  
  1         20  
311 1     1   6626 use MooseX::StrictConstructor;
  1         4  
  1         5  
312             extends 'Cfn::Resource::Properties';
313            
314             has ExcessCapacityTerminationPolicy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
315             has LaunchTemplateConfigs => (isa => 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::FleetLaunchTemplateConfigRequest', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
316             has OnDemandOptions => (isa => 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::OnDemandOptionsRequest', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
317             has ReplaceUnhealthyInstances => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
318             has SpotOptions => (isa => 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::SpotOptionsRequest', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
319             has TagSpecifications => (isa => 'ArrayOfCfn::Resource::Properties::AWS::EC2::EC2Fleet::TagSpecification', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
320             has TargetCapacitySpecification => (isa => 'Cfn::Resource::Properties::AWS::EC2::EC2Fleet::TargetCapacitySpecificationRequest', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
321             has TerminateInstancesWithExpiration => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
322             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
323             has ValidFrom => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
324             has ValidUntil => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
325             }
326              
327             1;
328             ### main pod documentation begin ###
329              
330             =encoding UTF-8
331              
332             =head1 NAME
333              
334             Cfn::Resource::AWS::EC2::EC2Fleet - Cfn resource for AWS::EC2::EC2Fleet
335              
336             =head1 DESCRIPTION
337              
338             This module implements a Perl module that represents the CloudFormation object AWS::EC2::EC2Fleet.
339              
340             See L<Cfn> for more information on how to use it.
341              
342             =head1 AUTHOR
343              
344             Jose Luis Martinez
345             CAPSiDE
346             jlmartinez@capside.com
347              
348             =head1 COPYRIGHT and LICENSE
349              
350             Copyright (c) 2013 by CAPSiDE
351             This code is distributed under the Apache 2 License. The full text of the
352             license can be found in the LICENSE file included with this module.
353              
354             =cut