Skip to content

Update an App Runner service

Description

Update an App Runner service. You can update the source configuration and instance configuration of the service. You can also update the ARN of the auto scaling configuration resource that's associated with the service. However, you can't change the name or the encryption configuration of the service. These can be set only when you create the service.

To update the tags applied to your service, use the separate actions tag_resource and untag_resource.

This is an asynchronous operation. On a successful call, you can use the returned OperationId and the list_operations call to track the operation's progress.

Usage

apprunner_update_service(ServiceArn, SourceConfiguration,
  InstanceConfiguration, AutoScalingConfigurationArn,
  HealthCheckConfiguration, NetworkConfiguration,
  ObservabilityConfiguration)

Arguments

  • ServiceArn

    [required] The Amazon Resource Name (ARN) of the App Runner service that you want to update.

  • SourceConfiguration

    The source configuration to apply to the App Runner service.

    You can change the configuration of the code or image repository that the service uses. However, you can't switch from code to image or the other way around. This means that you must provide the same structure member of SourceConfiguration that you originally included when you created the service. Specifically, you can include either CodeRepository or ImageRepository. To update the source configuration, set the values to members of the structure that you include.

  • InstanceConfiguration

    The runtime configuration to apply to instances (scaling units) of your service.

  • AutoScalingConfigurationArn

    The Amazon Resource Name (ARN) of an App Runner automatic scaling configuration resource that you want to associate with the App Runner service.

  • HealthCheckConfiguration

    The settings for the health check that App Runner performs to monitor the health of the App Runner service.

  • NetworkConfiguration

    Configuration settings related to network traffic of the web application that the App Runner service runs.

  • ObservabilityConfiguration

    The observability configuration of your service.

Value

A list with the following syntax:

list(
  Service = list(
    ServiceName = "string",
    ServiceId = "string",
    ServiceArn = "string",
    ServiceUrl = "string",
    CreatedAt = as.POSIXct(
      "2015-01-01"
    ),
    UpdatedAt = as.POSIXct(
      "2015-01-01"
    ),
    DeletedAt = as.POSIXct(
      "2015-01-01"
    ),
    Status = "CREATE_FAILED"|"RUNNING"|"DELETED"|"DELETE_FAILED"|"PAUSED"|"OPERATION_IN_PROGRESS",
    SourceConfiguration = list(
      CodeRepository = list(
        RepositoryUrl = "string",
        SourceCodeVersion = list(
          Type = "BRANCH",
          Value = "string"
        ),
        CodeConfiguration = list(
          ConfigurationSource = "REPOSITORY"|"API",
          CodeConfigurationValues = list(
            Runtime = "PYTHON_3"|"NODEJS_12"|"NODEJS_14"|"CORRETTO_8"|"CORRETTO_11"|"NODEJS_16"|"GO_1"|"DOTNET_6"|"PHP_81"|"RUBY_31"|"PYTHON_311"|"NODEJS_18"|"NODEJS_22",
            BuildCommand = "string",
            StartCommand = "string",
            Port = "string",
            RuntimeEnvironmentVariables = list(
              "string"
            ),
            RuntimeEnvironmentSecrets = list(
              "string"
            )
          )
        ),
        SourceDirectory = "string"
      ),
      ImageRepository = list(
        ImageIdentifier = "string",
        ImageConfiguration = list(
          RuntimeEnvironmentVariables = list(
            "string"
          ),
          StartCommand = "string",
          Port = "string",
          RuntimeEnvironmentSecrets = list(
            "string"
          )
        ),
        ImageRepositoryType = "ECR"|"ECR_PUBLIC"
      ),
      AutoDeploymentsEnabled = TRUE|FALSE,
      AuthenticationConfiguration = list(
        ConnectionArn = "string",
        AccessRoleArn = "string"
      )
    ),
    InstanceConfiguration = list(
      Cpu = "string",
      Memory = "string",
      InstanceRoleArn = "string"
    ),
    EncryptionConfiguration = list(
      KmsKey = "string"
    ),
    HealthCheckConfiguration = list(
      Protocol = "TCP"|"HTTP",
      Path = "string",
      Interval = 123,
      Timeout = 123,
      HealthyThreshold = 123,
      UnhealthyThreshold = 123
    ),
    AutoScalingConfigurationSummary = list(
      AutoScalingConfigurationArn = "string",
      AutoScalingConfigurationName = "string",
      AutoScalingConfigurationRevision = 123,
      Status = "ACTIVE"|"INACTIVE",
      CreatedAt = as.POSIXct(
        "2015-01-01"
      ),
      HasAssociatedService = TRUE|FALSE,
      IsDefault = TRUE|FALSE
    ),
    NetworkConfiguration = list(
      EgressConfiguration = list(
        EgressType = "DEFAULT"|"VPC",
        VpcConnectorArn = "string"
      ),
      IngressConfiguration = list(
        IsPubliclyAccessible = TRUE|FALSE
      ),
      IpAddressType = "IPV4"|"DUAL_STACK"
    ),
    ObservabilityConfiguration = list(
      ObservabilityEnabled = TRUE|FALSE,
      ObservabilityConfigurationArn = "string"
    )
  ),
  OperationId = "string"
)

Request syntax

svc$update_service(
  ServiceArn = "string",
  SourceConfiguration = list(
    CodeRepository = list(
      RepositoryUrl = "string",
      SourceCodeVersion = list(
        Type = "BRANCH",
        Value = "string"
      ),
      CodeConfiguration = list(
        ConfigurationSource = "REPOSITORY"|"API",
        CodeConfigurationValues = list(
          Runtime = "PYTHON_3"|"NODEJS_12"|"NODEJS_14"|"CORRETTO_8"|"CORRETTO_11"|"NODEJS_16"|"GO_1"|"DOTNET_6"|"PHP_81"|"RUBY_31"|"PYTHON_311"|"NODEJS_18"|"NODEJS_22",
          BuildCommand = "string",
          StartCommand = "string",
          Port = "string",
          RuntimeEnvironmentVariables = list(
            "string"
          ),
          RuntimeEnvironmentSecrets = list(
            "string"
          )
        )
      ),
      SourceDirectory = "string"
    ),
    ImageRepository = list(
      ImageIdentifier = "string",
      ImageConfiguration = list(
        RuntimeEnvironmentVariables = list(
          "string"
        ),
        StartCommand = "string",
        Port = "string",
        RuntimeEnvironmentSecrets = list(
          "string"
        )
      ),
      ImageRepositoryType = "ECR"|"ECR_PUBLIC"
    ),
    AutoDeploymentsEnabled = TRUE|FALSE,
    AuthenticationConfiguration = list(
      ConnectionArn = "string",
      AccessRoleArn = "string"
    )
  ),
  InstanceConfiguration = list(
    Cpu = "string",
    Memory = "string",
    InstanceRoleArn = "string"
  ),
  AutoScalingConfigurationArn = "string",
  HealthCheckConfiguration = list(
    Protocol = "TCP"|"HTTP",
    Path = "string",
    Interval = 123,
    Timeout = 123,
    HealthyThreshold = 123,
    UnhealthyThreshold = 123
  ),
  NetworkConfiguration = list(
    EgressConfiguration = list(
      EgressType = "DEFAULT"|"VPC",
      VpcConnectorArn = "string"
    ),
    IngressConfiguration = list(
      IsPubliclyAccessible = TRUE|FALSE
    ),
    IpAddressType = "IPV4"|"DUAL_STACK"
  ),
  ObservabilityConfiguration = list(
    ObservabilityEnabled = TRUE|FALSE,
    ObservabilityConfigurationArn = "string"
  )
)