Service

public struct Service : AWSShape

Undocumented

  • Declaration

    Swift

    public static var _members: [AWSShapeMember]
  • The capacity provider strategy associated with the service.

    Declaration

    Swift

    public let capacityProviderStrategy: [CapacityProviderStrategyItem]?
  • The Amazon Resource Name (ARN) of the cluster that hosts the service.

    Declaration

    Swift

    public let clusterArn: String?
  • The Unix timestamp for when the service was created.

    Declaration

    Swift

    public let createdAt: TimeStamp?
  • The principal that created the service.

    Declaration

    Swift

    public let createdBy: String?
  • Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.

    Declaration

    Swift

    public let deploymentConfiguration: DeploymentConfiguration?
  • The deployment controller type the service is using. When using the DescribeServices API, this field is omitted if the service is using the ECS deployment controller type.

    Declaration

    Swift

    public let deploymentController: DeploymentController?
  • The current state of deployments for the service.

    Declaration

    Swift

    public let deployments: [Deployment]?
  • The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.

    Declaration

    Swift

    public let desiredCount: Int?
  • Specifies whether to enable Amazon ECS managed tags for the tasks in the service. For more information, see Tagging Your Amazon ECS Resources in the Amazon Elastic Container Service Developer Guide.

    Declaration

    Swift

    public let enableECSManagedTags: Bool?
  • The event stream for your service. A maximum of 100 of the latest events are displayed.

    Declaration

    Swift

    public let events: [ServiceEvent]?
  • 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.

    Declaration

    Swift

    public let healthCheckGracePeriodSeconds: Int?
  • The launch type on which your service is running. If no value is specified, it will default to EC2. Valid values include EC2 and FARGATE. For more information, see Amazon ECS Launch Types in the Amazon Elastic Container Service Developer Guide.

    Declaration

    Swift

    public let launchType: LaunchType?
  • A list of Elastic Load Balancing load balancer objects, containing the load balancer name, the container name (as it appears in a container definition), and the container port to access from the load balancer.

    Declaration

    Swift

    public let loadBalancers: [LoadBalancer]?
  • The VPC subnet and security group configuration for tasks that receive their own elastic network interface by using the awsvpc networking mode.

    Declaration

    Swift

    public let networkConfiguration: NetworkConfiguration?
  • The number of tasks in the cluster that are in the PENDING state.

    Declaration

    Swift

    public let pendingCount: Int?
  • The placement constraints for the tasks in the service.

    Declaration

    Swift

    public let placementConstraints: [PlacementConstraint]?
  • The placement strategy that determines how tasks for the service are placed.

    Declaration

    Swift

    public let placementStrategy: [PlacementStrategy]?
  • The platform version on which to run your service. A platform version is only specified for tasks using the Fargate launch type. If one is not specified, the LATEST platform version is used by default. For more information, see AWS Fargate Platform Versions in the Amazon Elastic Container Service Developer Guide.

    Declaration

    Swift

    public let platformVersion: String?
  • Specifies whether to propagate the tags from the task definition or the service to the task. If no value is specified, the tags are not propagated.

    Declaration

    Swift

    public let propagateTags: PropagateTags?
  • The ARN of the IAM role associated with the service that allows the Amazon ECS container agent to register container instances with an Elastic Load Balancing load balancer.

    Declaration

    Swift

    public let roleArn: String?
  • The number of tasks in the cluster that are in the RUNNING state.

    Declaration

    Swift

    public let runningCount: Int?
  • The scheduling strategy to use for the service. For more information, see Services. There are two service scheduler strategies available: REPLICA-The replica scheduling strategy places and maintains the desired number of tasks across your cluster. By default, the service scheduler spreads tasks across Availability Zones. You can use task placement strategies and constraints to customize task placement decisions. DAEMON-The daemon scheduling strategy deploys exactly one task on each active container instance that meets all of the task placement constraints that you specify in your cluster. The service scheduler also evaluates the task placement constraints for running tasks and will stop tasks that do not meet the placement constraints. Fargate tasks do not support the DAEMON scheduling strategy.

    Declaration

    Swift

    public let schedulingStrategy: SchedulingStrategy?
  • The ARN that identifies the service. The ARN contains the arn:aws:ecs namespace, followed by the Region of the service, the AWS account ID of the service owner, the service namespace, and then the service name. For example, arn:aws:ecs:region:012345678910:service/my-service.

    Declaration

    Swift

    public let serviceArn: String?
  • The name of your service. Up to 255 letters (uppercase and lowercase), numbers, and hyphens are allowed. Service names must be unique within a cluster, but you can have similarly named services in multiple clusters within a Region or across multiple Regions.

    Declaration

    Swift

    public let serviceName: String?
  • The details of the service discovery registries to assign to this service. For more information, see Service Discovery.

    Declaration

    Swift

    public let serviceRegistries: [ServiceRegistry]?
  • The status of the service. The valid values are ACTIVE, DRAINING, or INACTIVE.

    Declaration

    Swift

    public let status: String?
  • The metadata that you apply to the service to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define. The following basic restrictions apply to tags: Maximum number of tags per resource - 50 For each resource, each tag key must be unique, and each tag key can have only one value. Maximum key length - 128 Unicode characters in UTF-8 Maximum value length - 256 Unicode characters in UTF-8 If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @. Tag keys and values are case-sensitive. Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for AWS use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

    Declaration

    Swift

    public let tags: [Tag]?
  • The task definition to use for tasks in the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.

    Declaration

    Swift

    public let taskDefinition: String?
  • Information about a set of Amazon ECS tasks in either an AWS CodeDeploy or an EXTERNAL deployment. An Amazon ECS task set includes details such as the desired number of tasks, how many tasks are running, and whether the task set serves production traffic.

    Declaration

    Swift

    public let taskSets: [TaskSet]?
  • Undocumented

    Declaration

    Swift

    public init(capacityProviderStrategy: [CapacityProviderStrategyItem]? = nil, clusterArn: String? = nil, createdAt: TimeStamp? = nil, createdBy: String? = nil, deploymentConfiguration: DeploymentConfiguration? = nil, deploymentController: DeploymentController? = nil, deployments: [Deployment]? = nil, desiredCount: Int? = nil, enableECSManagedTags: Bool? = nil, events: [ServiceEvent]? = nil, healthCheckGracePeriodSeconds: Int? = nil, launchType: LaunchType? = nil, loadBalancers: [LoadBalancer]? = nil, networkConfiguration: NetworkConfiguration? = nil, pendingCount: Int? = nil, placementConstraints: [PlacementConstraint]? = nil, placementStrategy: [PlacementStrategy]? = nil, platformVersion: String? = nil, propagateTags: PropagateTags? = nil, roleArn: String? = nil, runningCount: Int? = nil, schedulingStrategy: SchedulingStrategy? = nil, serviceArn: String? = nil, serviceName: String? = nil, serviceRegistries: [ServiceRegistry]? = nil, status: String? = nil, tags: [Tag]? = nil, taskDefinition: String? = nil, taskSets: [TaskSet]? = nil)