Class ExternalServiceProps
The properties for defining a service using the External launch type.
Inheritance
Namespace: Amazon.CDK.AWS.ECS
Assembly: Amazon.CDK.AWS.ECS.dll
Syntax (csharp)
public class ExternalServiceProps : Object, IExternalServiceProps, IBaseServiceOptions
Syntax (vb)
Public Class ExternalServiceProps
Inherits Object
Implements IExternalServiceProps, IBaseServiceOptions
Remarks
ExampleMetadata: infused
Examples
Cluster cluster;
TaskDefinition taskDefinition;
var service = new ExternalService(this, "Service", new ExternalServiceProps {
Cluster = cluster,
TaskDefinition = taskDefinition,
DesiredCount = 5
});
Synopsis
Constructors
ExternalServiceProps() |
Properties
CapacityProviderStrategies | A list of Capacity Provider strategies used to place a service. |
CircuitBreaker | Whether to enable the deployment circuit breaker. |
CloudMapOptions | The options for configuring an Amazon ECS service to use service discovery. |
Cluster | The name of the cluster that hosts the service. |
DeploymentController | Specifies which deployment controller to use for the service. |
DesiredCount | The desired number of instantiations of the task definition to keep running on the service. |
EnableECSManagedTags | Specifies whether to enable Amazon ECS managed tags for the tasks within the service. |
EnableExecuteCommand | Whether to enable the ability to execute into a container. |
HealthCheckGracePeriod | The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. |
MaxHealthyPercent | The maximum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that can run in a service during a deployment. |
MinHealthyPercent | The minimum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that must continue to run and remain healthy during a deployment. |
PropagateTags | Specifies whether to propagate the tags from the task definition or the service to the tasks in the service. |
PropagateTaskTagsFrom | (deprecated) Specifies whether to propagate the tags from the task definition or the service to the tasks in the service. |
SecurityGroups | The security groups to associate with the service. |
ServiceName | The name of the service. |
TaskDefinition | The task definition to use for tasks in the service. |
Constructors
ExternalServiceProps()
public ExternalServiceProps()
Properties
CapacityProviderStrategies
A list of Capacity Provider strategies used to place a service.
public ICapacityProviderStrategy[] CapacityProviderStrategies { get; set; }
Property Value
Remarks
Default: - undefined
CircuitBreaker
Whether to enable the deployment circuit breaker.
public IDeploymentCircuitBreaker CircuitBreaker { get; set; }
Property Value
Remarks
If this property is defined, circuit breaker will be implicitly enabled.
Default: - disabled
CloudMapOptions
The options for configuring an Amazon ECS service to use service discovery.
public ICloudMapOptions CloudMapOptions { get; set; }
Property Value
Remarks
Default: - AWS Cloud Map service discovery is not enabled.
Cluster
The name of the cluster that hosts the service.
public ICluster Cluster { get; set; }
Property Value
DeploymentController
Specifies which deployment controller to use for the service.
public IDeploymentController DeploymentController { get; set; }
Property Value
Remarks
For more information, see Amazon ECS Deployment Types
Default: - Rolling update (ECS)
DesiredCount
The desired number of instantiations of the task definition to keep running on the service.
public Nullable<double> DesiredCount { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
Default: - When creating the service, default is 1; when updating the service, default uses the current task number.
EnableECSManagedTags
Specifies whether to enable Amazon ECS managed tags for the tasks within the service.
public Nullable<bool> EnableECSManagedTags { get; set; }
Property Value
System.Nullable<System.Boolean>
Remarks
For more information, see Tagging Your Amazon ECS Resources
Default: false
EnableExecuteCommand
Whether to enable the ability to execute into a container.
public Nullable<bool> EnableExecuteCommand { get; set; }
Property Value
System.Nullable<System.Boolean>
Remarks
Default: - undefined
HealthCheckGracePeriod
The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started.
public Duration HealthCheckGracePeriod { get; set; }
Property Value
Remarks
Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
MaxHealthyPercent
The maximum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that can run in a service during a deployment.
public Nullable<double> MaxHealthyPercent { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
Default: - 100 if daemon, otherwise 200
MinHealthyPercent
The minimum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that must continue to run and remain healthy during a deployment.
public Nullable<double> MinHealthyPercent { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
Default: - 0 if daemon, otherwise 50
PropagateTags
Specifies whether to propagate the tags from the task definition or the service to the tasks in the service.
public Nullable<PropagatedTagSource> PropagateTags { get; set; }
Property Value
System.Nullable<PropagatedTagSource>
Remarks
Valid values are: PropagatedTagSource.SERVICE, PropagatedTagSource.TASK_DEFINITION or PropagatedTagSource.NONE
Default: PropagatedTagSource.NONE
PropagateTaskTagsFrom
(deprecated) Specifies whether to propagate the tags from the task definition or the service to the tasks in the service.
public Nullable<PropagatedTagSource> PropagateTaskTagsFrom { get; set; }
Property Value
System.Nullable<PropagatedTagSource>
Remarks
Tags can only be propagated to the tasks within the service during service creation.
Default: PropagatedTagSource.NONE
Stability: Deprecated
SecurityGroups
The security groups to associate with the service.
public ISecurityGroup[] SecurityGroups { get; set; }
Property Value
Remarks
If you do not specify a security group, a new security group is created.
Default: - A new security group is created.
ServiceName
The name of the service.
public string ServiceName { get; set; }
Property Value
System.String
Remarks
Default: - CloudFormation-generated name.
TaskDefinition
The task definition to use for tasks in the service.
public TaskDefinition TaskDefinition { get; set; }
Property Value
Remarks
[disable-awslint:ref-via-interface]