File Coverage

blib/lib/Cfn/Resource/AWS/ECS/Service.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::ECS::Service generated from spec 20.1.0
2 2     2   1383 use Moose::Util::TypeConstraints;
  2         9  
  2         19  
3              
4             coerce 'Cfn::Resource::Properties::AWS::ECS::Service',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::ECS::Service->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::ECS::Service {
9 2     2   4346 use Moose;
  2         6  
  2         16  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::ECS::Service', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 5 [ 'Name' ]
15             }
16             sub supported_regions {
17 1     1 0 1221 [ 'af-south-1','ap-east-1','ap-northeast-1','ap-northeast-2','ap-northeast-3','ap-south-1','ap-southeast-1','ap-southeast-2','ca-central-1','cn-north-1','cn-northwest-1','eu-central-1','eu-north-1','eu-south-1','eu-west-1','eu-west-2','eu-west-3','me-south-1','sa-east-1','us-east-1','us-east-2','us-gov-east-1','us-gov-west-1','us-west-1','us-west-2' ]
18             }
19             }
20              
21              
22              
23             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::AwsVpcConfiguration',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::AwsVpcConfiguration',
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::ECS::Service::AwsVpcConfiguration->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::Object::AWS::ECS::Service::AwsVpcConfiguration {
37 2     2   14811 use Moose;
  2         11  
  2         11  
38 2     2   13283 use MooseX::StrictConstructor;
  2         8  
  2         31  
39             extends 'Cfn::Value::TypedValue';
40            
41             has AssignPublicIp => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             has SecurityGroups => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
43             has Subnets => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
44             }
45             subtype 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::ServiceRegistry',
46             as 'Cfn::Value',
47             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
48             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
49              
50             coerce 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::ServiceRegistry',
51             from 'HashRef',
52             via {
53             if (my $f = Cfn::TypeLibrary::try_function($_)) {
54             return $f
55             } else {
56             die 'Only accepts functions';
57             }
58             },
59             from 'ArrayRef',
60             via {
61             Cfn::Value::Array->new(Value => [
62             map {
63             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::ECS::Service::ServiceRegistry')->coerce($_)
64             } @$_
65             ]);
66             };
67              
68             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::ServiceRegistry',
69             as 'Cfn::Value';
70              
71             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::ServiceRegistry',
72             from 'HashRef',
73             via {
74             if (my $f = Cfn::TypeLibrary::try_function($_)) {
75             return $f
76             } else {
77             return Cfn::Resource::Properties::Object::AWS::ECS::Service::ServiceRegistry->new( %$_ );
78             }
79             };
80              
81             package Cfn::Resource::Properties::Object::AWS::ECS::Service::ServiceRegistry {
82 2     2   7805 use Moose;
  2         10  
  2         11  
83 2     2   13385 use MooseX::StrictConstructor;
  2         6  
  2         11  
84             extends 'Cfn::Value::TypedValue';
85            
86             has ContainerName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
87             has ContainerPort => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
88             has Port => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
89             has RegistryArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
90             }
91             subtype 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::PlacementStrategy',
92             as 'Cfn::Value',
93             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
94             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
95              
96             coerce 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::PlacementStrategy',
97             from 'HashRef',
98             via {
99             if (my $f = Cfn::TypeLibrary::try_function($_)) {
100             return $f
101             } else {
102             die 'Only accepts functions';
103             }
104             },
105             from 'ArrayRef',
106             via {
107             Cfn::Value::Array->new(Value => [
108             map {
109             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::ECS::Service::PlacementStrategy')->coerce($_)
110             } @$_
111             ]);
112             };
113              
114             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::PlacementStrategy',
115             as 'Cfn::Value';
116              
117             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::PlacementStrategy',
118             from 'HashRef',
119             via {
120             if (my $f = Cfn::TypeLibrary::try_function($_)) {
121             return $f
122             } else {
123             return Cfn::Resource::Properties::Object::AWS::ECS::Service::PlacementStrategy->new( %$_ );
124             }
125             };
126              
127             package Cfn::Resource::Properties::Object::AWS::ECS::Service::PlacementStrategy {
128 2     2   7297 use Moose;
  2         6  
  2         12  
129 2     2   13418 use MooseX::StrictConstructor;
  2         5  
  2         10  
130             extends 'Cfn::Value::TypedValue';
131            
132             has Field => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
133             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
134             }
135             subtype 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::PlacementConstraint',
136             as 'Cfn::Value',
137             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
138             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
139              
140             coerce 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::PlacementConstraint',
141             from 'HashRef',
142             via {
143             if (my $f = Cfn::TypeLibrary::try_function($_)) {
144             return $f
145             } else {
146             die 'Only accepts functions';
147             }
148             },
149             from 'ArrayRef',
150             via {
151             Cfn::Value::Array->new(Value => [
152             map {
153             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::ECS::Service::PlacementConstraint')->coerce($_)
154             } @$_
155             ]);
156             };
157              
158             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::PlacementConstraint',
159             as 'Cfn::Value';
160              
161             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::PlacementConstraint',
162             from 'HashRef',
163             via {
164             if (my $f = Cfn::TypeLibrary::try_function($_)) {
165             return $f
166             } else {
167             return Cfn::Resource::Properties::Object::AWS::ECS::Service::PlacementConstraint->new( %$_ );
168             }
169             };
170              
171             package Cfn::Resource::Properties::Object::AWS::ECS::Service::PlacementConstraint {
172 2     2   7307 use Moose;
  2         6  
  2         12  
173 2     2   13605 use MooseX::StrictConstructor;
  2         7  
  2         10  
174             extends 'Cfn::Value::TypedValue';
175            
176             has Expression => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
177             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
178             }
179              
180             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::NetworkConfiguration',
181             as 'Cfn::Value';
182              
183             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::NetworkConfiguration',
184             from 'HashRef',
185             via {
186             if (my $f = Cfn::TypeLibrary::try_function($_)) {
187             return $f
188             } else {
189             return Cfn::Resource::Properties::Object::AWS::ECS::Service::NetworkConfiguration->new( %$_ );
190             }
191             };
192              
193             package Cfn::Resource::Properties::Object::AWS::ECS::Service::NetworkConfiguration {
194 2     2   6778 use Moose;
  2         9  
  2         16  
195 2     2   13782 use MooseX::StrictConstructor;
  2         5  
  2         16  
196             extends 'Cfn::Value::TypedValue';
197            
198             has AwsvpcConfiguration => (isa => 'Cfn::Resource::Properties::AWS::ECS::Service::AwsVpcConfiguration', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
199             }
200             subtype 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::LoadBalancer',
201             as 'Cfn::Value',
202             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
203             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
204              
205             coerce 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::LoadBalancer',
206             from 'HashRef',
207             via {
208             if (my $f = Cfn::TypeLibrary::try_function($_)) {
209             return $f
210             } else {
211             die 'Only accepts functions';
212             }
213             },
214             from 'ArrayRef',
215             via {
216             Cfn::Value::Array->new(Value => [
217             map {
218             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::ECS::Service::LoadBalancer')->coerce($_)
219             } @$_
220             ]);
221             };
222              
223             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::LoadBalancer',
224             as 'Cfn::Value';
225              
226             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::LoadBalancer',
227             from 'HashRef',
228             via {
229             if (my $f = Cfn::TypeLibrary::try_function($_)) {
230             return $f
231             } else {
232             return Cfn::Resource::Properties::Object::AWS::ECS::Service::LoadBalancer->new( %$_ );
233             }
234             };
235              
236             package Cfn::Resource::Properties::Object::AWS::ECS::Service::LoadBalancer {
237 2     2   7406 use Moose;
  2         15  
  2         14  
238 2     2   13665 use MooseX::StrictConstructor;
  2         10  
  2         11  
239             extends 'Cfn::Value::TypedValue';
240            
241             has ContainerName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
242             has ContainerPort => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
243             has LoadBalancerName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
244             has TargetGroupArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
245             }
246              
247             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::DeploymentController',
248             as 'Cfn::Value';
249              
250             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::DeploymentController',
251             from 'HashRef',
252             via {
253             if (my $f = Cfn::TypeLibrary::try_function($_)) {
254             return $f
255             } else {
256             return Cfn::Resource::Properties::Object::AWS::ECS::Service::DeploymentController->new( %$_ );
257             }
258             };
259              
260             package Cfn::Resource::Properties::Object::AWS::ECS::Service::DeploymentController {
261 2     2   6793 use Moose;
  2         5  
  2         13  
262 2     2   13453 use MooseX::StrictConstructor;
  2         7  
  2         11  
263             extends 'Cfn::Value::TypedValue';
264            
265             has Type => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
266             }
267              
268             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::DeploymentConfiguration',
269             as 'Cfn::Value';
270              
271             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::DeploymentConfiguration',
272             from 'HashRef',
273             via {
274             if (my $f = Cfn::TypeLibrary::try_function($_)) {
275             return $f
276             } else {
277             return Cfn::Resource::Properties::Object::AWS::ECS::Service::DeploymentConfiguration->new( %$_ );
278             }
279             };
280              
281             package Cfn::Resource::Properties::Object::AWS::ECS::Service::DeploymentConfiguration {
282 2     2   6887 use Moose;
  2         12  
  2         12  
283 2     2   13449 use MooseX::StrictConstructor;
  2         10  
  2         15  
284             extends 'Cfn::Value::TypedValue';
285            
286             has MaximumPercent => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
287             has MinimumHealthyPercent => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
288             }
289             subtype 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::CapacityProviderStrategyItem',
290             as 'Cfn::Value',
291             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
292             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
293              
294             coerce 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::CapacityProviderStrategyItem',
295             from 'HashRef',
296             via {
297             if (my $f = Cfn::TypeLibrary::try_function($_)) {
298             return $f
299             } else {
300             die 'Only accepts functions';
301             }
302             },
303             from 'ArrayRef',
304             via {
305             Cfn::Value::Array->new(Value => [
306             map {
307             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::ECS::Service::CapacityProviderStrategyItem')->coerce($_)
308             } @$_
309             ]);
310             };
311              
312             subtype 'Cfn::Resource::Properties::AWS::ECS::Service::CapacityProviderStrategyItem',
313             as 'Cfn::Value';
314              
315             coerce 'Cfn::Resource::Properties::AWS::ECS::Service::CapacityProviderStrategyItem',
316             from 'HashRef',
317             via {
318             if (my $f = Cfn::TypeLibrary::try_function($_)) {
319             return $f
320             } else {
321             return Cfn::Resource::Properties::Object::AWS::ECS::Service::CapacityProviderStrategyItem->new( %$_ );
322             }
323             };
324              
325             package Cfn::Resource::Properties::Object::AWS::ECS::Service::CapacityProviderStrategyItem {
326 2     2   7207 use Moose;
  2         6  
  2         11  
327 2     2   13237 use MooseX::StrictConstructor;
  2         20  
  2         12  
328             extends 'Cfn::Value::TypedValue';
329            
330             has Base => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
331             has CapacityProvider => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
332             has Weight => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
333             }
334              
335             package Cfn::Resource::Properties::AWS::ECS::Service {
336 2     2   6674 use Moose;
  2         8  
  2         18  
337 2     2   13319 use MooseX::StrictConstructor;
  2         4  
  2         11  
338             extends 'Cfn::Resource::Properties';
339            
340             has CapacityProviderStrategy => (isa => 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::CapacityProviderStrategyItem', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
341             has Cluster => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
342             has DeploymentConfiguration => (isa => 'Cfn::Resource::Properties::AWS::ECS::Service::DeploymentConfiguration', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
343             has DeploymentController => (isa => 'Cfn::Resource::Properties::AWS::ECS::Service::DeploymentController', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
344             has DesiredCount => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
345             has EnableECSManagedTags => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
346             has HealthCheckGracePeriodSeconds => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
347             has LaunchType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
348             has LoadBalancers => (isa => 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::LoadBalancer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
349             has NetworkConfiguration => (isa => 'Cfn::Resource::Properties::AWS::ECS::Service::NetworkConfiguration', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
350             has PlacementConstraints => (isa => 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::PlacementConstraint', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
351             has PlacementStrategies => (isa => 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::PlacementStrategy', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
352             has PlatformVersion => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
353             has PropagateTags => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
354             has Role => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
355             has SchedulingStrategy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
356             has ServiceArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
357             has ServiceName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
358             has ServiceRegistries => (isa => 'ArrayOfCfn::Resource::Properties::AWS::ECS::Service::ServiceRegistry', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
359             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
360             has TaskDefinition => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
361             }
362              
363             1;
364             ### main pod documentation begin ###
365              
366             =encoding UTF-8
367              
368             =head1 NAME
369              
370             Cfn::Resource::AWS::ECS::Service - Cfn resource for AWS::ECS::Service
371              
372             =head1 DESCRIPTION
373              
374             This module implements a Perl module that represents the CloudFormation object AWS::ECS::Service.
375              
376             See L<Cfn> for more information on how to use it.
377              
378             =head1 AUTHOR
379              
380             Jose Luis Martinez
381             CAPSiDE
382             jlmartinez@capside.com
383              
384             =head1 COPYRIGHT and LICENSE
385              
386             Copyright (c) 2013 by CAPSiDE
387             This code is distributed under the Apache 2 License. The full text of the
388             license can be found in the LICENSE file included with this module.
389              
390             =cut