File Coverage

blib/lib/Cfn/Resource/AWS/Batch/JobDefinition.pm
Criterion Covered Total %
statement 116 116 100.0
branch n/a
condition n/a
subroutine 40 40 100.0
pod 0 2 0.0
total 156 158 98.7


line stmt bran cond sub pod time code
1             # AWS::Batch::JobDefinition generated from spec 20.1.0
2 3     3   2552 use Moose::Util::TypeConstraints;
  3         10  
  3         38  
3              
4             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::Batch::JobDefinition->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::Batch::JobDefinition {
9 3     3   6550 use Moose;
  3         9  
  3         28  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 5 [ ]
15             }
16             sub supported_regions {
17 1     1 0 1208 [ 'ap-northeast-1','ap-northeast-2','ap-south-1','ap-southeast-1','ap-southeast-2','ca-central-1','eu-central-1','eu-west-1','eu-west-2','eu-west-3','sa-east-1','us-east-1','us-east-2','us-west-1','us-west-2' ]
18             }
19             }
20              
21              
22              
23             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::VolumesHost',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::VolumesHost',
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::Batch::JobDefinition::VolumesHost->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::VolumesHost {
37 3     3   21446 use Moose;
  3         9  
  3         16  
38 3     3   19112 use MooseX::StrictConstructor;
  3         7  
  3         28  
39             extends 'Cfn::Value::TypedValue';
40            
41             has SourcePath => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             }
43             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Tmpfs',
44             as 'Cfn::Value',
45             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
46             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
47              
48             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Tmpfs',
49             from 'HashRef',
50             via {
51             if (my $f = Cfn::TypeLibrary::try_function($_)) {
52             return $f
53             } else {
54             die 'Only accepts functions';
55             }
56             },
57             from 'ArrayRef',
58             via {
59             Cfn::Value::Array->new(Value => [
60             map {
61             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::Tmpfs')->coerce($_)
62             } @$_
63             ]);
64             };
65              
66             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Tmpfs',
67             as 'Cfn::Value';
68              
69             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Tmpfs',
70             from 'HashRef',
71             via {
72             if (my $f = Cfn::TypeLibrary::try_function($_)) {
73             return $f
74             } else {
75             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Tmpfs->new( %$_ );
76             }
77             };
78              
79             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Tmpfs {
80 3     3   11366 use Moose;
  3         8  
  3         15  
81 3     3   19006 use MooseX::StrictConstructor;
  3         9  
  3         16  
82             extends 'Cfn::Value::TypedValue';
83            
84             has ContainerPath => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
85             has MountOptions => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
86             has Size => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
87             }
88             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Secret',
89             as 'Cfn::Value',
90             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
91             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
92              
93             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Secret',
94             from 'HashRef',
95             via {
96             if (my $f = Cfn::TypeLibrary::try_function($_)) {
97             return $f
98             } else {
99             die 'Only accepts functions';
100             }
101             },
102             from 'ArrayRef',
103             via {
104             Cfn::Value::Array->new(Value => [
105             map {
106             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::Secret')->coerce($_)
107             } @$_
108             ]);
109             };
110              
111             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Secret',
112             as 'Cfn::Value';
113              
114             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Secret',
115             from 'HashRef',
116             via {
117             if (my $f = Cfn::TypeLibrary::try_function($_)) {
118             return $f
119             } else {
120             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Secret->new( %$_ );
121             }
122             };
123              
124             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Secret {
125 3     3   10302 use Moose;
  3         8  
  3         14  
126 3     3   19899 use MooseX::StrictConstructor;
  3         7  
  3         17  
127             extends 'Cfn::Value::TypedValue';
128            
129             has Name => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
130             has ValueFrom => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
131             }
132             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Device',
133             as 'Cfn::Value',
134             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
135             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
136              
137             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Device',
138             from 'HashRef',
139             via {
140             if (my $f = Cfn::TypeLibrary::try_function($_)) {
141             return $f
142             } else {
143             die 'Only accepts functions';
144             }
145             },
146             from 'ArrayRef',
147             via {
148             Cfn::Value::Array->new(Value => [
149             map {
150             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::Device')->coerce($_)
151             } @$_
152             ]);
153             };
154              
155             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Device',
156             as 'Cfn::Value';
157              
158             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Device',
159             from 'HashRef',
160             via {
161             if (my $f = Cfn::TypeLibrary::try_function($_)) {
162             return $f
163             } else {
164             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Device->new( %$_ );
165             }
166             };
167              
168             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Device {
169 3     3   10372 use Moose;
  3         30  
  3         20  
170 3     3   18862 use MooseX::StrictConstructor;
  3         7  
  3         14  
171             extends 'Cfn::Value::TypedValue';
172            
173             has ContainerPath => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
174             has HostPath => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
175             has Permissions => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
176             }
177             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Volumes',
178             as 'Cfn::Value',
179             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
180             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
181              
182             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Volumes',
183             from 'HashRef',
184             via {
185             if (my $f = Cfn::TypeLibrary::try_function($_)) {
186             return $f
187             } else {
188             die 'Only accepts functions';
189             }
190             },
191             from 'ArrayRef',
192             via {
193             Cfn::Value::Array->new(Value => [
194             map {
195             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::Volumes')->coerce($_)
196             } @$_
197             ]);
198             };
199              
200             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Volumes',
201             as 'Cfn::Value';
202              
203             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Volumes',
204             from 'HashRef',
205             via {
206             if (my $f = Cfn::TypeLibrary::try_function($_)) {
207             return $f
208             } else {
209             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Volumes->new( %$_ );
210             }
211             };
212              
213             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Volumes {
214 3     3   10319 use Moose;
  3         10  
  3         16  
215 3     3   19506 use MooseX::StrictConstructor;
  3         10  
  3         18  
216             extends 'Cfn::Value::TypedValue';
217            
218             has Host => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::VolumesHost', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
219             has Name => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
220             }
221             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Ulimit',
222             as 'Cfn::Value',
223             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
224             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
225              
226             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Ulimit',
227             from 'HashRef',
228             via {
229             if (my $f = Cfn::TypeLibrary::try_function($_)) {
230             return $f
231             } else {
232             die 'Only accepts functions';
233             }
234             },
235             from 'ArrayRef',
236             via {
237             Cfn::Value::Array->new(Value => [
238             map {
239             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::Ulimit')->coerce($_)
240             } @$_
241             ]);
242             };
243              
244             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Ulimit',
245             as 'Cfn::Value';
246              
247             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Ulimit',
248             from 'HashRef',
249             via {
250             if (my $f = Cfn::TypeLibrary::try_function($_)) {
251             return $f
252             } else {
253             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Ulimit->new( %$_ );
254             }
255             };
256              
257             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Ulimit {
258 3     3   10551 use Moose;
  3         10  
  3         16  
259 3     3   19612 use MooseX::StrictConstructor;
  3         11  
  3         19  
260             extends 'Cfn::Value::TypedValue';
261            
262             has HardLimit => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
263             has Name => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
264             has SoftLimit => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
265             }
266             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::ResourceRequirement',
267             as 'Cfn::Value',
268             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
269             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
270              
271             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::ResourceRequirement',
272             from 'HashRef',
273             via {
274             if (my $f = Cfn::TypeLibrary::try_function($_)) {
275             return $f
276             } else {
277             die 'Only accepts functions';
278             }
279             },
280             from 'ArrayRef',
281             via {
282             Cfn::Value::Array->new(Value => [
283             map {
284             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::ResourceRequirement')->coerce($_)
285             } @$_
286             ]);
287             };
288              
289             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::ResourceRequirement',
290             as 'Cfn::Value';
291              
292             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::ResourceRequirement',
293             from 'HashRef',
294             via {
295             if (my $f = Cfn::TypeLibrary::try_function($_)) {
296             return $f
297             } else {
298             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::ResourceRequirement->new( %$_ );
299             }
300             };
301              
302             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::ResourceRequirement {
303 3     3   10645 use Moose;
  3         9  
  3         20  
304 3     3   20082 use MooseX::StrictConstructor;
  3         10  
  3         17  
305             extends 'Cfn::Value::TypedValue';
306            
307             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
308             has Value => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
309             }
310             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::MountPoints',
311             as 'Cfn::Value',
312             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
313             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
314              
315             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::MountPoints',
316             from 'HashRef',
317             via {
318             if (my $f = Cfn::TypeLibrary::try_function($_)) {
319             return $f
320             } else {
321             die 'Only accepts functions';
322             }
323             },
324             from 'ArrayRef',
325             via {
326             Cfn::Value::Array->new(Value => [
327             map {
328             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::MountPoints')->coerce($_)
329             } @$_
330             ]);
331             };
332              
333             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::MountPoints',
334             as 'Cfn::Value';
335              
336             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::MountPoints',
337             from 'HashRef',
338             via {
339             if (my $f = Cfn::TypeLibrary::try_function($_)) {
340             return $f
341             } else {
342             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::MountPoints->new( %$_ );
343             }
344             };
345              
346             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::MountPoints {
347 3     3   10827 use Moose;
  3         21  
  3         18  
348 3     3   20197 use MooseX::StrictConstructor;
  3         8  
  3         22  
349             extends 'Cfn::Value::TypedValue';
350            
351             has ContainerPath => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
352             has ReadOnly => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
353             has SourceVolume => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
354             }
355              
356             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::LogConfiguration',
357             as 'Cfn::Value';
358              
359             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::LogConfiguration',
360             from 'HashRef',
361             via {
362             if (my $f = Cfn::TypeLibrary::try_function($_)) {
363             return $f
364             } else {
365             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::LogConfiguration->new( %$_ );
366             }
367             };
368              
369             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::LogConfiguration {
370 3     3   10621 use Moose;
  3         9  
  3         17  
371 3     3   19413 use MooseX::StrictConstructor;
  3         17  
  3         20  
372             extends 'Cfn::Value::TypedValue';
373            
374             has LogDriver => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
375             has Options => (isa => 'Cfn::Value::Json|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
376             has SecretOptions => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Secret', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
377             }
378              
379             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::LinuxParameters',
380             as 'Cfn::Value';
381              
382             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::LinuxParameters',
383             from 'HashRef',
384             via {
385             if (my $f = Cfn::TypeLibrary::try_function($_)) {
386             return $f
387             } else {
388             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::LinuxParameters->new( %$_ );
389             }
390             };
391              
392             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::LinuxParameters {
393 3     3   9860 use Moose;
  3         11  
  3         27  
394 3     3   19807 use MooseX::StrictConstructor;
  3         7  
  3         20  
395             extends 'Cfn::Value::TypedValue';
396            
397             has Devices => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Device', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
398             has InitProcessEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
399             has MaxSwap => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
400             has SharedMemorySize => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
401             has Swappiness => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
402             has Tmpfs => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Tmpfs', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
403             }
404             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Environment',
405             as 'Cfn::Value',
406             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
407             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
408              
409             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Environment',
410             from 'HashRef',
411             via {
412             if (my $f = Cfn::TypeLibrary::try_function($_)) {
413             return $f
414             } else {
415             die 'Only accepts functions';
416             }
417             },
418             from 'ArrayRef',
419             via {
420             Cfn::Value::Array->new(Value => [
421             map {
422             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::Environment')->coerce($_)
423             } @$_
424             ]);
425             };
426              
427             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Environment',
428             as 'Cfn::Value';
429              
430             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Environment',
431             from 'HashRef',
432             via {
433             if (my $f = Cfn::TypeLibrary::try_function($_)) {
434             return $f
435             } else {
436             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Environment->new( %$_ );
437             }
438             };
439              
440             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Environment {
441 3     3   11184 use Moose;
  3         8  
  3         16  
442 3     3   19346 use MooseX::StrictConstructor;
  3         7  
  3         20  
443             extends 'Cfn::Value::TypedValue';
444            
445             has Name => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
446             has Value => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
447             }
448              
449             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::ContainerProperties',
450             as 'Cfn::Value';
451              
452             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::ContainerProperties',
453             from 'HashRef',
454             via {
455             if (my $f = Cfn::TypeLibrary::try_function($_)) {
456             return $f
457             } else {
458             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::ContainerProperties->new( %$_ );
459             }
460             };
461              
462             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::ContainerProperties {
463 3     3   10066 use Moose;
  3         9  
  3         31  
464 3     3   18954 use MooseX::StrictConstructor;
  3         6  
  3         27  
465             extends 'Cfn::Value::TypedValue';
466            
467             has Command => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
468             has Environment => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Environment', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
469             has ExecutionRoleArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
470             has Image => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
471             has InstanceType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
472             has JobRoleArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
473             has LinuxParameters => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::LinuxParameters', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
474             has LogConfiguration => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::LogConfiguration', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
475             has Memory => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
476             has MountPoints => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::MountPoints', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
477             has Privileged => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
478             has ReadonlyRootFilesystem => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
479             has ResourceRequirements => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::ResourceRequirement', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
480             has Secrets => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Secret', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
481             has Ulimits => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Ulimit', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
482             has User => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
483             has Vcpus => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
484             has Volumes => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::Volumes', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
485             }
486             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::NodeRangeProperty',
487             as 'Cfn::Value',
488             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
489             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
490              
491             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::NodeRangeProperty',
492             from 'HashRef',
493             via {
494             if (my $f = Cfn::TypeLibrary::try_function($_)) {
495             return $f
496             } else {
497             die 'Only accepts functions';
498             }
499             },
500             from 'ArrayRef',
501             via {
502             Cfn::Value::Array->new(Value => [
503             map {
504             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::NodeRangeProperty')->coerce($_)
505             } @$_
506             ]);
507             };
508              
509             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::NodeRangeProperty',
510             as 'Cfn::Value';
511              
512             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::NodeRangeProperty',
513             from 'HashRef',
514             via {
515             if (my $f = Cfn::TypeLibrary::try_function($_)) {
516             return $f
517             } else {
518             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::NodeRangeProperty->new( %$_ );
519             }
520             };
521              
522             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::NodeRangeProperty {
523 3     3   11058 use Moose;
  3         14  
  3         17  
524 3     3   19211 use MooseX::StrictConstructor;
  3         7  
  3         17  
525             extends 'Cfn::Value::TypedValue';
526            
527             has Container => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::ContainerProperties', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
528             has TargetNodes => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
529             }
530             subtype 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::EvaluateOnExit',
531             as 'Cfn::Value',
532             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
533             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
534              
535             coerce 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::EvaluateOnExit',
536             from 'HashRef',
537             via {
538             if (my $f = Cfn::TypeLibrary::try_function($_)) {
539             return $f
540             } else {
541             die 'Only accepts functions';
542             }
543             },
544             from 'ArrayRef',
545             via {
546             Cfn::Value::Array->new(Value => [
547             map {
548             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Batch::JobDefinition::EvaluateOnExit')->coerce($_)
549             } @$_
550             ]);
551             };
552              
553             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::EvaluateOnExit',
554             as 'Cfn::Value';
555              
556             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::EvaluateOnExit',
557             from 'HashRef',
558             via {
559             if (my $f = Cfn::TypeLibrary::try_function($_)) {
560             return $f
561             } else {
562             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::EvaluateOnExit->new( %$_ );
563             }
564             };
565              
566             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::EvaluateOnExit {
567 3     3   10657 use Moose;
  3         16  
  3         26  
568 3     3   19106 use MooseX::StrictConstructor;
  3         8  
  3         18  
569             extends 'Cfn::Value::TypedValue';
570            
571             has Action => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
572             has OnExitCode => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
573             has OnReason => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
574             has OnStatusReason => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
575             }
576              
577             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Timeout',
578             as 'Cfn::Value';
579              
580             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Timeout',
581             from 'HashRef',
582             via {
583             if (my $f = Cfn::TypeLibrary::try_function($_)) {
584             return $f
585             } else {
586             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Timeout->new( %$_ );
587             }
588             };
589              
590             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::Timeout {
591 3     3   9956 use Moose;
  3         7  
  3         16  
592 3     3   19149 use MooseX::StrictConstructor;
  3         8  
  3         17  
593             extends 'Cfn::Value::TypedValue';
594            
595             has AttemptDurationSeconds => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
596             }
597              
598             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::RetryStrategy',
599             as 'Cfn::Value';
600              
601             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::RetryStrategy',
602             from 'HashRef',
603             via {
604             if (my $f = Cfn::TypeLibrary::try_function($_)) {
605             return $f
606             } else {
607             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::RetryStrategy->new( %$_ );
608             }
609             };
610              
611             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::RetryStrategy {
612 3     3   9770 use Moose;
  3         7  
  3         57  
613 3     3   19369 use MooseX::StrictConstructor;
  3         8  
  3         19  
614             extends 'Cfn::Value::TypedValue';
615            
616             has Attempts => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
617             has EvaluateOnExit => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::EvaluateOnExit', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
618             }
619              
620             subtype 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::NodeProperties',
621             as 'Cfn::Value';
622              
623             coerce 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::NodeProperties',
624             from 'HashRef',
625             via {
626             if (my $f = Cfn::TypeLibrary::try_function($_)) {
627             return $f
628             } else {
629             return Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::NodeProperties->new( %$_ );
630             }
631             };
632              
633             package Cfn::Resource::Properties::Object::AWS::Batch::JobDefinition::NodeProperties {
634 3     3   9880 use Moose;
  3         9  
  3         16  
635 3     3   19298 use MooseX::StrictConstructor;
  3         9  
  3         14  
636             extends 'Cfn::Value::TypedValue';
637            
638             has MainNode => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
639             has NodeRangeProperties => (isa => 'ArrayOfCfn::Resource::Properties::AWS::Batch::JobDefinition::NodeRangeProperty', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
640             has NumNodes => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
641             }
642              
643             package Cfn::Resource::Properties::AWS::Batch::JobDefinition {
644 3     3   9504 use Moose;
  3         10  
  3         18  
645 3     3   19021 use MooseX::StrictConstructor;
  3         10  
  3         18  
646             extends 'Cfn::Resource::Properties';
647            
648             has ContainerProperties => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::ContainerProperties', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
649             has JobDefinitionName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
650             has NodeProperties => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::NodeProperties', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
651             has Parameters => (isa => 'Cfn::Value::Json|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
652             has RetryStrategy => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::RetryStrategy', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
653             has Tags => (isa => 'Cfn::Value::Json|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
654             has Timeout => (isa => 'Cfn::Resource::Properties::AWS::Batch::JobDefinition::Timeout', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
655             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
656             }
657              
658             1;
659             ### main pod documentation begin ###
660              
661             =encoding UTF-8
662              
663             =head1 NAME
664              
665             Cfn::Resource::AWS::Batch::JobDefinition - Cfn resource for AWS::Batch::JobDefinition
666              
667             =head1 DESCRIPTION
668              
669             This module implements a Perl module that represents the CloudFormation object AWS::Batch::JobDefinition.
670              
671             See L<Cfn> for more information on how to use it.
672              
673             =head1 AUTHOR
674              
675             Jose Luis Martinez
676             CAPSiDE
677             jlmartinez@capside.com
678              
679             =head1 COPYRIGHT and LICENSE
680              
681             Copyright (c) 2013 by CAPSiDE
682             This code is distributed under the Apache 2 License. The full text of the
683             license can be found in the LICENSE file included with this module.
684              
685             =cut