% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/ecs_operations.R
\name{ecs_put_cluster_capacity_providers}
\alias{ecs_put_cluster_capacity_providers}
\title{Modifies the available capacity providers and the default capacity
provider strategy for a cluster}
\usage{
ecs_put_cluster_capacity_providers(cluster, capacityProviders,
  defaultCapacityProviderStrategy)
}
\arguments{
\item{cluster}{[required] The short name or full Amazon Resource Name (ARN) of the cluster to
modify the capacity provider settings for. If you do not specify a
cluster, the default cluster is assumed.}

\item{capacityProviders}{[required] The name of one or more capacity providers to associate with the
cluster.

If specifying a capacity provider that uses an Auto Scaling group, the
capacity provider must already be created. New capacity providers can be
created with the
\code{\link[=ecs_create_capacity_provider]{create_capacity_provider}} API
operation.

To use a AWS Fargate capacity provider, specify either the \code{FARGATE} or
\code{FARGATE_SPOT} capacity providers. The AWS Fargate capacity providers
are available to all accounts and only need to be associated with a
cluster to be used.}

\item{defaultCapacityProviderStrategy}{[required] The capacity provider strategy to use by default for the cluster.

When creating a service or running a task on a cluster, if no capacity
provider or launch type is specified then the default capacity provider
strategy for the cluster is used.

A capacity provider strategy consists of one or more capacity providers
along with the \code{base} and \code{weight} to assign to them. A capacity
provider must be associated with the cluster to be used in a capacity
provider strategy. The
\code{\link[=ecs_put_cluster_capacity_providers]{put_cluster_capacity_providers}}
API is used to associate a capacity provider with a cluster. Only
capacity providers with an \code{ACTIVE} or \code{UPDATING} status can be used.

If specifying a capacity provider that uses an Auto Scaling group, the
capacity provider must already be created. New capacity providers can be
created with the
\code{\link[=ecs_create_capacity_provider]{create_capacity_provider}} API
operation.

To use a AWS Fargate capacity provider, specify either the \code{FARGATE} or
\code{FARGATE_SPOT} capacity providers. The AWS Fargate capacity providers
are available to all accounts and only need to be associated with a
cluster to be used.}
}
\value{
A list with the following syntax:\preformatted{list(
  cluster = list(
    clusterArn = "string",
    clusterName = "string",
    status = "string",
    registeredContainerInstancesCount = 123,
    runningTasksCount = 123,
    pendingTasksCount = 123,
    activeServicesCount = 123,
    statistics = list(
      list(
        name = "string",
        value = "string"
      )
    ),
    tags = list(
      list(
        key = "string",
        value = "string"
      )
    ),
    settings = list(
      list(
        name = "containerInsights",
        value = "string"
      )
    ),
    capacityProviders = list(
      "string"
    ),
    defaultCapacityProviderStrategy = list(
      list(
        capacityProvider = "string",
        weight = 123,
        base = 123
      )
    ),
    attachments = list(
      list(
        id = "string",
        type = "string",
        status = "string",
        details = list(
          list(
            name = "string",
            value = "string"
          )
        )
      )
    ),
    attachmentsStatus = "string"
  )
)
}
}
\description{
Modifies the available capacity providers and the default capacity
provider strategy for a cluster.

You must specify both the available capacity providers and a default
capacity provider strategy for the cluster. If the specified cluster has
existing capacity providers associated with it, you must specify all
existing capacity providers in addition to any new ones you want to add.
Any existing capacity providers associated with a cluster that are
omitted from a
\code{\link[=ecs_put_cluster_capacity_providers]{put_cluster_capacity_providers}}
API call will be disassociated with the cluster. You can only
disassociate an existing capacity provider from a cluster if it's not
being used by any existing tasks.

When creating a service or running a task on a cluster, if no capacity
provider or launch type is specified, then the cluster's default
capacity provider strategy is used. It is recommended to define a
default capacity provider strategy for your cluster, however you may
specify an empty array (\verb{[]}) to bypass defining a default strategy.
}
\section{Request syntax}{
\preformatted{svc$put_cluster_capacity_providers(
  cluster = "string",
  capacityProviders = list(
    "string"
  ),
  defaultCapacityProviderStrategy = list(
    list(
      capacityProvider = "string",
      weight = 123,
      base = 123
    )
  )
)
}
}

\keyword{internal}
