File Coverage

blib/lib/Cfn/Resource/AWS/CodeBuild/Project.pm
Criterion Covered Total %
statement 110 110 100.0
branch n/a
condition n/a
subroutine 38 38 100.0
pod 0 2 0.0
total 148 150 98.6


line stmt bran cond sub pod time code
1             # AWS::CodeBuild::Project generated from spec 6.0.0
2 2     2   1303 use Moose::Util::TypeConstraints;
  2         5  
  2         23  
3              
4             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::CodeBuild::Project->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::CodeBuild::Project {
9 2     2   4165 use Moose;
  2         7  
  2         14  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 4 [ 'Arn' ]
15             }
16             sub supported_regions {
17 1     1 0 1526 [ 'ap-east-1','ap-northeast-1','ap-northeast-2','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::CodeBuild::Project::SourceAuth',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::SourceAuth',
27             from 'HashRef',
28             via {
29             if (my $f = Cfn::TypeLibrary::try_function($_)) {
30             return $f
31             } else {
32             return Cfn::Resource::Properties::AWS::CodeBuild::Project::SourceAuthValue->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::AWS::CodeBuild::Project::SourceAuthValue {
37 2     2   14014 use Moose;
  2         4  
  2         10  
38 2     2   13233 use MooseX::StrictConstructor;
  2         5  
  2         17  
39             extends 'Cfn::Value::TypedValue';
40            
41             has Resource => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
43             }
44              
45             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::S3LogsConfig',
46             as 'Cfn::Value';
47              
48             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::S3LogsConfig',
49             from 'HashRef',
50             via {
51             if (my $f = Cfn::TypeLibrary::try_function($_)) {
52             return $f
53             } else {
54             return Cfn::Resource::Properties::AWS::CodeBuild::Project::S3LogsConfigValue->new( %$_ );
55             }
56             };
57              
58             package Cfn::Resource::Properties::AWS::CodeBuild::Project::S3LogsConfigValue {
59 2     2   7387 use Moose;
  2         8  
  2         11  
60 2     2   13149 use MooseX::StrictConstructor;
  2         6  
  2         13  
61             extends 'Cfn::Value::TypedValue';
62            
63             has EncryptionDisabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
64             has Location => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
65             has Status => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
66             }
67              
68             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::RegistryCredential',
69             as 'Cfn::Value';
70              
71             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::RegistryCredential',
72             from 'HashRef',
73             via {
74             if (my $f = Cfn::TypeLibrary::try_function($_)) {
75             return $f
76             } else {
77             return Cfn::Resource::Properties::AWS::CodeBuild::Project::RegistryCredentialValue->new( %$_ );
78             }
79             };
80              
81             package Cfn::Resource::Properties::AWS::CodeBuild::Project::RegistryCredentialValue {
82 2     2   6786 use Moose;
  2         8  
  2         10  
83 2     2   13141 use MooseX::StrictConstructor;
  2         7  
  2         9  
84             extends 'Cfn::Value::TypedValue';
85            
86             has Credential => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
87             has CredentialProvider => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
88             }
89              
90             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::GitSubmodulesConfig',
91             as 'Cfn::Value';
92              
93             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::GitSubmodulesConfig',
94             from 'HashRef',
95             via {
96             if (my $f = Cfn::TypeLibrary::try_function($_)) {
97             return $f
98             } else {
99             return Cfn::Resource::Properties::AWS::CodeBuild::Project::GitSubmodulesConfigValue->new( %$_ );
100             }
101             };
102              
103             package Cfn::Resource::Properties::AWS::CodeBuild::Project::GitSubmodulesConfigValue {
104 2     2   6731 use Moose;
  2         7  
  2         12  
105 2     2   13074 use MooseX::StrictConstructor;
  2         6  
  2         10  
106             extends 'Cfn::Value::TypedValue';
107            
108             has FetchSubmodules => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
109             }
110             subtype 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroup',
111             as 'Cfn::Value',
112             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
113             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
114              
115             coerce 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroup',
116             from 'HashRef',
117             via {
118             if (my $f = Cfn::TypeLibrary::try_function($_)) {
119             return $f
120             } else {
121             die 'Only accepts functions';
122             }
123             },
124             from 'ArrayRef',
125             via {
126             Cfn::Value::Array->new(Value => [
127             map {
128             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroup')->coerce($_)
129             } @$_
130             ]);
131             };
132              
133             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroup',
134             as 'Cfn::Value';
135              
136             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroup',
137             from 'HashRef',
138             via {
139             if (my $f = Cfn::TypeLibrary::try_function($_)) {
140             return $f
141             } else {
142             return Cfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroupValue->new( %$_ );
143             }
144             };
145              
146             package Cfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroupValue {
147 2     2   7014 use Moose;
  2         6  
  2         12  
148 2     2   13202 use MooseX::StrictConstructor;
  2         8  
  2         13  
149             extends 'Cfn::Value::TypedValue';
150            
151             }
152             subtype 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariable',
153             as 'Cfn::Value',
154             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
155             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
156              
157             coerce 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariable',
158             from 'HashRef',
159             via {
160             if (my $f = Cfn::TypeLibrary::try_function($_)) {
161             return $f
162             } else {
163             die 'Only accepts functions';
164             }
165             },
166             from 'ArrayRef',
167             via {
168             Cfn::Value::Array->new(Value => [
169             map {
170             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariable')->coerce($_)
171             } @$_
172             ]);
173             };
174              
175             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariable',
176             as 'Cfn::Value';
177              
178             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariable',
179             from 'HashRef',
180             via {
181             if (my $f = Cfn::TypeLibrary::try_function($_)) {
182             return $f
183             } else {
184             return Cfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariableValue->new( %$_ );
185             }
186             };
187              
188             package Cfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariableValue {
189 2     2   7347 use Moose;
  2         4  
  2         12  
190 2     2   13624 use MooseX::StrictConstructor;
  2         7  
  2         11  
191             extends 'Cfn::Value::TypedValue';
192            
193             has Name => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
194             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
195             has Value => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
196             }
197              
198             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::CloudWatchLogsConfig',
199             as 'Cfn::Value';
200              
201             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::CloudWatchLogsConfig',
202             from 'HashRef',
203             via {
204             if (my $f = Cfn::TypeLibrary::try_function($_)) {
205             return $f
206             } else {
207             return Cfn::Resource::Properties::AWS::CodeBuild::Project::CloudWatchLogsConfigValue->new( %$_ );
208             }
209             };
210              
211             package Cfn::Resource::Properties::AWS::CodeBuild::Project::CloudWatchLogsConfigValue {
212 2     2   6868 use Moose;
  2         5  
  2         12  
213 2     2   13055 use MooseX::StrictConstructor;
  2         4  
  2         10  
214             extends 'Cfn::Value::TypedValue';
215            
216             has GroupName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
217             has Status => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
218             has StreamName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
219             }
220              
221             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::WebhookFilter',
222             as 'Cfn::Value';
223              
224             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::WebhookFilter',
225             from 'HashRef',
226             via {
227             if (my $f = Cfn::TypeLibrary::try_function($_)) {
228             return $f
229             } else {
230             return Cfn::Resource::Properties::AWS::CodeBuild::Project::WebhookFilterValue->new( %$_ );
231             }
232             };
233              
234             package Cfn::Resource::Properties::AWS::CodeBuild::Project::WebhookFilterValue {
235 2     2   6795 use Moose;
  2         5  
  2         12  
236 2     2   13133 use MooseX::StrictConstructor;
  2         8  
  2         13  
237             extends 'Cfn::Value::TypedValue';
238            
239             has ExcludeMatchedPattern => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
240             has Pattern => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
241             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
242             }
243              
244             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::VpcConfig',
245             as 'Cfn::Value';
246              
247             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::VpcConfig',
248             from 'HashRef',
249             via {
250             if (my $f = Cfn::TypeLibrary::try_function($_)) {
251             return $f
252             } else {
253             return Cfn::Resource::Properties::AWS::CodeBuild::Project::VpcConfigValue->new( %$_ );
254             }
255             };
256              
257             package Cfn::Resource::Properties::AWS::CodeBuild::Project::VpcConfigValue {
258 2     2   6758 use Moose;
  2         6  
  2         14  
259 2     2   13055 use MooseX::StrictConstructor;
  2         8  
  2         12  
260             extends 'Cfn::Value::TypedValue';
261            
262             has SecurityGroupIds => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
263             has Subnets => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
264             has VpcId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
265             }
266             subtype 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::Source',
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::CodeBuild::Project::Source',
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::CodeBuild::Project::Source')->coerce($_)
285             } @$_
286             ]);
287             };
288              
289             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Source',
290             as 'Cfn::Value';
291              
292             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Source',
293             from 'HashRef',
294             via {
295             if (my $f = Cfn::TypeLibrary::try_function($_)) {
296             return $f
297             } else {
298             return Cfn::Resource::Properties::AWS::CodeBuild::Project::SourceValue->new( %$_ );
299             }
300             };
301              
302             package Cfn::Resource::Properties::AWS::CodeBuild::Project::SourceValue {
303 2     2   7069 use Moose;
  2         8  
  2         12  
304 2     2   12991 use MooseX::StrictConstructor;
  2         6  
  2         11  
305             extends 'Cfn::Value::TypedValue';
306            
307             has Auth => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::SourceAuth', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
308             has BuildSpec => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
309             has GitCloneDepth => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
310             has GitSubmodulesConfig => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::GitSubmodulesConfig', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
311             has InsecureSsl => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
312             has Location => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
313             has ReportBuildStatus => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
314             has SourceIdentifier => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
315             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
316             }
317              
318             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectTriggers',
319             as 'Cfn::Value';
320              
321             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectTriggers',
322             from 'HashRef',
323             via {
324             if (my $f = Cfn::TypeLibrary::try_function($_)) {
325             return $f
326             } else {
327             return Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectTriggersValue->new( %$_ );
328             }
329             };
330              
331             package Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectTriggersValue {
332 2     2   6921 use Moose;
  2         7  
  2         12  
333 2     2   13008 use MooseX::StrictConstructor;
  2         4  
  2         12  
334             extends 'Cfn::Value::TypedValue';
335            
336             has FilterGroups => (isa => 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::FilterGroup', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
337             has Webhook => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
338             }
339             subtype 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersion',
340             as 'Cfn::Value',
341             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
342             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
343              
344             coerce 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersion',
345             from 'HashRef',
346             via {
347             if (my $f = Cfn::TypeLibrary::try_function($_)) {
348             return $f
349             } else {
350             die 'Only accepts functions';
351             }
352             },
353             from 'ArrayRef',
354             via {
355             Cfn::Value::Array->new(Value => [
356             map {
357             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersion')->coerce($_)
358             } @$_
359             ]);
360             };
361              
362             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersion',
363             as 'Cfn::Value';
364              
365             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersion',
366             from 'HashRef',
367             via {
368             if (my $f = Cfn::TypeLibrary::try_function($_)) {
369             return $f
370             } else {
371             return Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersionValue->new( %$_ );
372             }
373             };
374              
375             package Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersionValue {
376 2     2   7081 use Moose;
  2         6  
  2         10  
377 2     2   13470 use MooseX::StrictConstructor;
  2         7  
  2         15  
378             extends 'Cfn::Value::TypedValue';
379            
380             has SourceIdentifier => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
381             has SourceVersion => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
382             }
383              
384             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectCache',
385             as 'Cfn::Value';
386              
387             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectCache',
388             from 'HashRef',
389             via {
390             if (my $f = Cfn::TypeLibrary::try_function($_)) {
391             return $f
392             } else {
393             return Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectCacheValue->new( %$_ );
394             }
395             };
396              
397             package Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectCacheValue {
398 2     2   6704 use Moose;
  2         6  
  2         10  
399 2     2   13082 use MooseX::StrictConstructor;
  2         5  
  2         10  
400             extends 'Cfn::Value::TypedValue';
401            
402             has Location => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
403             has Modes => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
404             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
405             }
406              
407             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::LogsConfig',
408             as 'Cfn::Value';
409              
410             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::LogsConfig',
411             from 'HashRef',
412             via {
413             if (my $f = Cfn::TypeLibrary::try_function($_)) {
414             return $f
415             } else {
416             return Cfn::Resource::Properties::AWS::CodeBuild::Project::LogsConfigValue->new( %$_ );
417             }
418             };
419              
420             package Cfn::Resource::Properties::AWS::CodeBuild::Project::LogsConfigValue {
421 2     2   6812 use Moose;
  2         5  
  2         11  
422 2     2   13293 use MooseX::StrictConstructor;
  2         4  
  2         10  
423             extends 'Cfn::Value::TypedValue';
424            
425             has CloudWatchLogs => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::CloudWatchLogsConfig', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
426             has S3Logs => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::S3LogsConfig', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
427             }
428              
429             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Environment',
430             as 'Cfn::Value';
431              
432             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Environment',
433             from 'HashRef',
434             via {
435             if (my $f = Cfn::TypeLibrary::try_function($_)) {
436             return $f
437             } else {
438             return Cfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentValue->new( %$_ );
439             }
440             };
441              
442             package Cfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentValue {
443 2     2   6693 use Moose;
  2         8  
  2         15  
444 2     2   13078 use MooseX::StrictConstructor;
  2         7  
  2         10  
445             extends 'Cfn::Value::TypedValue';
446            
447             has Certificate => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
448             has ComputeType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
449             has EnvironmentVariables => (isa => 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::EnvironmentVariable', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
450             has Image => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
451             has ImagePullCredentialsType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
452             has PrivilegedMode => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
453             has RegistryCredential => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::RegistryCredential', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
454             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
455             }
456             subtype 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::Artifacts',
457             as 'Cfn::Value',
458             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
459             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
460              
461             coerce 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::Artifacts',
462             from 'HashRef',
463             via {
464             if (my $f = Cfn::TypeLibrary::try_function($_)) {
465             return $f
466             } else {
467             die 'Only accepts functions';
468             }
469             },
470             from 'ArrayRef',
471             via {
472             Cfn::Value::Array->new(Value => [
473             map {
474             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::CodeBuild::Project::Artifacts')->coerce($_)
475             } @$_
476             ]);
477             };
478              
479             subtype 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Artifacts',
480             as 'Cfn::Value';
481              
482             coerce 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Artifacts',
483             from 'HashRef',
484             via {
485             if (my $f = Cfn::TypeLibrary::try_function($_)) {
486             return $f
487             } else {
488             return Cfn::Resource::Properties::AWS::CodeBuild::Project::ArtifactsValue->new( %$_ );
489             }
490             };
491              
492             package Cfn::Resource::Properties::AWS::CodeBuild::Project::ArtifactsValue {
493 2     2   7244 use Moose;
  2         8  
  2         13  
494 2     2   12974 use MooseX::StrictConstructor;
  2         9  
  2         11  
495             extends 'Cfn::Value::TypedValue';
496            
497             has ArtifactIdentifier => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
498             has EncryptionDisabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
499             has Location => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
500             has Name => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
501             has NamespaceType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
502             has OverrideArtifactName => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
503             has Packaging => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
504             has Path => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
505             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
506             }
507              
508             package Cfn::Resource::Properties::AWS::CodeBuild::Project {
509 2     2   6803 use Moose;
  2         6  
  2         11  
510 2     2   13072 use MooseX::StrictConstructor;
  2         6  
  2         12  
511             extends 'Cfn::Resource::Properties';
512            
513             has Artifacts => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Artifacts', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
514             has BadgeEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
515             has Cache => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectCache', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
516             has Description => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
517             has EncryptionKey => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
518             has Environment => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Environment', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
519             has LogsConfig => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::LogsConfig', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
520             has Name => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
521             has QueuedTimeoutInMinutes => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
522             has SecondaryArtifacts => (isa => 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::Artifacts', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
523             has SecondarySourceVersions => (isa => 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::ProjectSourceVersion', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
524             has SecondarySources => (isa => 'ArrayOfCfn::Resource::Properties::AWS::CodeBuild::Project::Source', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
525             has ServiceRole => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
526             has Source => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::Source', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
527             has SourceVersion => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
528             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
529             has TimeoutInMinutes => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
530             has Triggers => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::ProjectTriggers', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
531             has VpcConfig => (isa => 'Cfn::Resource::Properties::AWS::CodeBuild::Project::VpcConfig', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
532             }
533              
534             1;