Search code examples
amazon-ecs

Find out deployment type of existing ECS service


The AWS doc describes three potential deployment types for a service: "ECS", "CODE_DEPLOY", and "EXTERNAL". When creating a new service you can choose between "ECS" or "CODE_DEPLOY".

I have an existing service. I checked the following places to find out its deployment type:

  • Its definition in Terraform
  • Its page in the AWS web console
  • Its entry in aws ecs describe-services --cluster=my-cluster --services=my-service

Not one of them mentions anything about a deployment type, nor any of the three enum values above. I'm guessing my service has the default deployment type, and that the default deployment type is "ECS", but I haven't found anything in the docs validating this.

How can I figure out my service's deployment type?


Solution

  • I understand it is bit confusing , well deployment type is called deployment controller , so you can pass the parameter to aws cli as deploymentController , if you do not pass anything then by default it takes 'ECS' , you can find more details for aws cli in the link below and we can use same parameter in terraform as well, I have provided you an example for terraform link.

    https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html#API_CreateService_RequestSyntax

    resource "aws_ecs_service" "example" {
      name    = "example"
      cluster = aws_ecs_cluster.example.id
    
      deployment_controller {
        type = "EXTERNAL"
      }
    }
    

    https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_service