Skip to content

Update Express Gateway Service

ecs_update_express_gateway_service R Documentation

Updates an existing Express service configuration

Description

Updates an existing Express service configuration. Modifies container settings, resource allocation, auto-scaling configuration, and other service parameters without recreating the service.

Amazon ECS creates a new service revision with updated configuration and performs a rolling deployment to replace existing tasks. The service remains available during updates, ensuring zero-downtime deployments.

Some parameters like the infrastructure role cannot be modified after service creation and require creating a new service.

Usage

ecs_update_express_gateway_service(serviceArn, executionRoleArn,
  healthCheckPath, primaryContainer, taskRoleArn, networkConfiguration,
  cpu, memory, scalingTarget)

Arguments

serviceArn

[required] The Amazon Resource Name (ARN) of the Express service to update.

executionRoleArn

The Amazon Resource Name (ARN) of the task execution role for the Express service.

healthCheckPath

The path on the container for Application Load Balancer health checks.

primaryContainer

The primary container configuration for the Express service.

taskRoleArn

The Amazon Resource Name (ARN) of the IAM role for containers in this task.

networkConfiguration

The network configuration for the Express service tasks. By default, the network configuration for an Express service uses the default VPC.

cpu

The number of CPU units used by the task.

memory

The amount of memory (in MiB) used by the task.

scalingTarget

The auto-scaling configuration for the Express service.

Value

A list with the following syntax:

list(
  service = list(
    serviceArn = "string",
    cluster = "string",
    serviceName = "string",
    status = list(
      statusCode = "ACTIVE"|"DRAINING"|"INACTIVE",
      statusReason = "string"
    ),
    targetConfiguration = list(
      serviceRevisionArn = "string",
      executionRoleArn = "string",
      taskRoleArn = "string",
      cpu = "string",
      memory = "string",
      networkConfiguration = list(
        securityGroups = list(
          "string"
        ),
        subnets = list(
          "string"
        )
      ),
      healthCheckPath = "string",
      primaryContainer = list(
        image = "string",
        containerPort = 123,
        awsLogsConfiguration = list(
          logGroup = "string",
          logStreamPrefix = "string"
        ),
        repositoryCredentials = list(
          credentialsParameter = "string"
        ),
        command = list(
          "string"
        ),
        environment = list(
          list(
            name = "string",
            value = "string"
          )
        ),
        secrets = list(
          list(
            name = "string",
            valueFrom = "string"
          )
        )
      ),
      scalingTarget = list(
        minTaskCount = 123,
        maxTaskCount = 123,
        autoScalingMetric = "AVERAGE_CPU"|"AVERAGE_MEMORY"|"REQUEST_COUNT_PER_TARGET",
        autoScalingTargetValue = 123
      ),
      ingressPaths = list(
        list(
          accessType = "PUBLIC"|"PRIVATE",
          endpoint = "string"
        )
      ),
      createdAt = as.POSIXct(
        "2015-01-01"
      )
    ),
    createdAt = as.POSIXct(
      "2015-01-01"
    ),
    updatedAt = as.POSIXct(
      "2015-01-01"
    )
  )
)

Request syntax

svc$update_express_gateway_service(
  serviceArn = "string",
  executionRoleArn = "string",
  healthCheckPath = "string",
  primaryContainer = list(
    image = "string",
    containerPort = 123,
    awsLogsConfiguration = list(
      logGroup = "string",
      logStreamPrefix = "string"
    ),
    repositoryCredentials = list(
      credentialsParameter = "string"
    ),
    command = list(
      "string"
    ),
    environment = list(
      list(
        name = "string",
        value = "string"
      )
    ),
    secrets = list(
      list(
        name = "string",
        valueFrom = "string"
      )
    )
  ),
  taskRoleArn = "string",
  networkConfiguration = list(
    securityGroups = list(
      "string"
    ),
    subnets = list(
      "string"
    )
  ),
  cpu = "string",
  memory = "string",
  scalingTarget = list(
    minTaskCount = 123,
    maxTaskCount = 123,
    autoScalingMetric = "AVERAGE_CPU"|"AVERAGE_MEMORY"|"REQUEST_COUNT_PER_TARGET",
    autoScalingTargetValue = 123
  )
)