Skip to content

ECS  >  Operations  >  delete_service

delete_service

Operation

delete_service async

delete_service(input: DeleteServiceInput, plugins: list[Plugin] | None = None) -> DeleteServiceOutput

Deletes a specified service within a cluster. You can delete a service if you have no running tasks in it and the desired task count is zero. If the service is actively maintaining tasks, you can't delete it, and you must update the service to a desired task count of zero. For more information, see UpdateService.

Note

When you delete a service, if there are still running tasks that require cleanup, the service status moves from ACTIVE to DRAINING, and the service is no longer visible in the console or in the ListServices API operation. After all tasks have transitioned to either STOPPING or STOPPED status, the service status moves from DRAINING to INACTIVE. Services in the DRAINING or INACTIVE status can still be viewed with the DescribeServices API operation. However, in the future, INACTIVE services may be cleaned up and purged from Amazon ECS record keeping, and DescribeServices calls on those services return a ServiceNotFoundException error.

Warning: If you attempt to create a new service with the same name as an existing service in either ACTIVE or DRAINING status, you receive an error.

Parameters:

Name Type Description Default
input DeleteServiceInput

An instance of DeleteServiceInput.

required
plugins list[Plugin] | None

A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations.

None

Returns:

Type Description
DeleteServiceOutput

An instance of DeleteServiceOutput.

Input

DeleteServiceInput dataclass

Bases: _SerdeShape

Attributes

cluster class-attribute instance-attribute
cluster: str | None = ...

The short name or full Amazon Resource Name (ARN) of the cluster that hosts the service to delete. If you do not specify a cluster, the default cluster is assumed.

force class-attribute instance-attribute
force: bool | None = ...

If true, allows you to delete a service even if it wasn't scaled down to zero tasks. It's only necessary to use this if the service uses the REPLICA scheduling strategy.

service class-attribute instance-attribute
service: str | None = ...

The name of the service to delete.

Output

DeleteServiceOutput dataclass

Bases: _SerdeShape

Attributes

response_metadata class-attribute instance-attribute
response_metadata: ResponseMetadata = ...

Metadata about the response that produced this output. Use this to recover the request identifiers a service's support team needs in order to investigate a call. Members of the metadata are individually optional.

service class-attribute instance-attribute
service: Service | None = ...

The full description of the deleted service.