UNPKG

typed-aws

Version:

Helps you write AWS CloudFormation in TypeScript

311 lines (310 loc) 13.1 kB
import { CfnResource, Resolvable } from '../../base'; export declare type Service_Type = 'AWS::ECS::Service'; export declare const Service_Type = "AWS::ECS::Service"; /** * Resource Type definition for AWS::ECS::Service {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html} */ export default function Service(props: Service_Properties): CfnResource<Service_Properties>; /** * Resource Type definition for AWS::ECS::Service {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html} */ export declare type Service_Properties = { ServiceArn?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-capacityproviderstrategy} */ CapacityProviderStrategy?: CapacityProviderStrategyItem[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-cluster} */ Cluster?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-deploymentconfiguration} */ DeploymentConfiguration?: DeploymentConfiguration; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-deploymentcontroller} */ DeploymentController?: DeploymentController; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-desiredcount} */ DesiredCount?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-enableecsmanagedtags} */ EnableECSManagedTags?: Resolvable<boolean>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-enableexecutecommand} */ EnableExecuteCommand?: Resolvable<boolean>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-healthcheckgraceperiodseconds} */ HealthCheckGracePeriodSeconds?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-launchtype} */ LaunchType?: Resolvable<'EC2' | 'FARGATE' | 'EXTERNAL'>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-loadbalancers} */ LoadBalancers?: LoadBalancer[]; Name?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-networkconfiguration} */ NetworkConfiguration?: NetworkConfiguration; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementconstraints} */ PlacementConstraints?: PlacementConstraint[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementstrategies} */ PlacementStrategies?: PlacementStrategy[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-platformversion} */ PlatformVersion?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-propagatetags} */ PropagateTags?: Resolvable<'SERVICE' | 'TASK_DEFINITION'>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-role} */ Role?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-schedulingstrategy} */ SchedulingStrategy?: Resolvable<'DAEMON' | 'REPLICA'>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-servicename} */ ServiceName?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-serviceregistries} */ ServiceRegistries?: ServiceRegistry[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-tags} */ Tags?: Tag[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-taskdefinition} */ TaskDefinition?: Resolvable<string>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html} */ export declare type AwsVpcConfiguration = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-assignpublicip} */ AssignPublicIp?: Resolvable<'DISABLED' | 'ENABLED'>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-securitygroups} */ SecurityGroups?: Resolvable<string>[]; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html#cfn-ecs-service-awsvpcconfiguration-subnets} */ Subnets?: Resolvable<string>[]; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html} */ export declare type CapacityProviderStrategyItem = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-base} */ Base?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-capacityprovider} */ CapacityProvider?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-capacityproviderstrategyitem.html#cfn-ecs-service-capacityproviderstrategyitem-weight} */ Weight?: Resolvable<number>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcircuitbreaker.html} */ export declare type DeploymentCircuitBreaker = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcircuitbreaker.html#cfn-ecs-service-deploymentcircuitbreaker-enable} */ Enable: Resolvable<boolean>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcircuitbreaker.html#cfn-ecs-service-deploymentcircuitbreaker-rollback} */ Rollback: Resolvable<boolean>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html} */ export declare type DeploymentConfiguration = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-deploymentcircuitbreaker} */ DeploymentCircuitBreaker?: DeploymentCircuitBreaker; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-maximumpercent} */ MaximumPercent?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-minimumhealthypercent} */ MinimumHealthyPercent?: Resolvable<number>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcontroller.html} */ export declare type DeploymentController = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentcontroller.html#cfn-ecs-service-deploymentcontroller-type} */ Type?: Resolvable<'CODE_DEPLOY' | 'ECS' | 'EXTERNAL'>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html} */ export declare type LoadBalancer = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-containername} */ ContainerName?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-containerport} */ ContainerPort?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-loadbalancername} */ LoadBalancerName?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancer.html#cfn-ecs-service-loadbalancer-targetgrouparn} */ TargetGroupArn?: Resolvable<string>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html} */ export declare type NetworkConfiguration = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-networkconfiguration.html#cfn-ecs-service-networkconfiguration-awsvpcconfiguration} */ AwsvpcConfiguration?: AwsVpcConfiguration; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html} */ export declare type PlacementConstraint = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-expression} */ Expression?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-type} */ Type: Resolvable<'distinctInstance' | 'memberOf'>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html} */ export declare type PlacementStrategy = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-field} */ Field?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-type} */ Type: Resolvable<'binpack' | 'random' | 'spread'>; }; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html} */ export declare type ServiceRegistry = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-containername} */ ContainerName?: Resolvable<string>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-containerport} */ ContainerPort?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-port} */ Port?: Resolvable<number>; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-serviceregistry.html#cfn-ecs-service-serviceregistry-registryarn} */ RegistryArn?: Resolvable<string>; }; export declare type Tag = { Key?: Resolvable<string>; Value?: Resolvable<string>; };