lib/aws-sdk-ecs/client.rb in aws-sdk-ecs-1.105.0 vs lib/aws-sdk-ecs/client.rb in aws-sdk-ecs-1.106.0
- old
+ new
@@ -575,10 +575,32 @@
#
# If a default capacity provider strategy isn't defined for a cluster
# when it was created, it can be defined later with the
# PutClusterCapacityProviders API operation.
#
+ # @option params [Types::ClusterServiceConnectDefaultsRequest] :service_connect_defaults
+ # Use this parameter to set a default Service Connect namespace. After
+ # you set a default Service Connect namespace, any new services with
+ # Service Connect turned on that are created in the cluster are added as
+ # client services in the namespace. This setting only applies to new
+ # services that set the `enabled` parameter to `true` in the
+ # `ServiceConnectConfiguration`. You can set the namespace of each
+ # service individually in the `ServiceConnectConfiguration` to override
+ # this default parameter.
+ #
+ # Tasks that run in a namespace can use short names to connect to
+ # services in the namespace. Tasks can connect to services across all of
+ # the clusters in the namespace. Tasks connect through a managed proxy
+ # container that collects logs and metrics for increased visibility.
+ # Only the tasks that Amazon ECS services create are supported with
+ # Service Connect. For more information, see [Service Connect][1] in the
+ # *Amazon Elastic Container Service Developer Guide*.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
+ #
# @return [Types::CreateClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::CreateClusterResponse#cluster #cluster} => Types::Cluster
#
#
@@ -638,10 +660,13 @@
# capacity_provider: "String", # required
# weight: 1,
# base: 1,
# },
# ],
+ # service_connect_defaults: {
+ # namespace: "String", # required
+ # },
# })
#
# @example Response structure
#
# resp.cluster.cluster_arn #=> String
@@ -679,10 +704,11 @@
# resp.cluster.attachments[0].status #=> String
# resp.cluster.attachments[0].details #=> Array
# resp.cluster.attachments[0].details[0].name #=> String
# resp.cluster.attachments[0].details[0].value #=> String
# resp.cluster.attachments_status #=> String
+ # resp.cluster.service_connect_defaults.namespace #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateCluster AWS API Documentation
#
# @overload create_cluster(params = {})
# @param [Hash] params ({})
@@ -1013,12 +1039,12 @@
# task has first started. This is only used when your service is
# configured to use a load balancer. If your service has a load balancer
# defined and you don't specify a health check grace period value, the
# default value of `0` is used.
#
- # If you do not use an Elastic Load Balancing, we recomend that you use
- # the `startPeriod` in the task definition healtch check parameters. For
+ # If you do not use an Elastic Load Balancing, we recommend that you use
+ # the `startPeriod` in the task definition health check parameters. For
# more information, see [Health check][1].
#
# If your service's tasks take a while to start and respond to Elastic
# Load Balancing health checks, you can specify a health check grace
# period of up to 2,147,483,647 seconds (about 69 years). During that
@@ -1116,10 +1142,27 @@
# @option params [Boolean] :enable_execute_command
# Determines whether the execute command functionality is enabled for
# the service. If `true`, this enables execute command functionality on
# all containers in the service tasks.
#
+ # @option params [Types::ServiceConnectConfiguration] :service_connect_configuration
+ # The configuration for this service to discover and connect to
+ # services, and be discovered by, and connected from, other services
+ # within a namespace.
+ #
+ # Tasks that run in a namespace can use short names to connect to
+ # services in the namespace. Tasks can connect to services across all of
+ # the clusters in the namespace. Tasks connect through a managed proxy
+ # container that collects logs and metrics for increased visibility.
+ # Only the tasks that Amazon ECS services create are supported with
+ # Service Connect. For more information, see [Service Connect][1] in the
+ # *Amazon Elastic Container Service Developer Guide*.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
+ #
# @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::CreateServiceResponse#service #service} => Types::Service
#
#
@@ -1313,10 +1356,39 @@
# },
# ],
# enable_ecs_managed_tags: false,
# propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE, NONE
# enable_execute_command: false,
+ # service_connect_configuration: {
+ # enabled: false, # required
+ # namespace: "String",
+ # services: [
+ # {
+ # port_name: "String", # required
+ # discovery_name: "String",
+ # client_aliases: [
+ # {
+ # port: 1, # required
+ # dns_name: "String",
+ # },
+ # ],
+ # ingress_port_override: 1,
+ # },
+ # ],
+ # log_configuration: {
+ # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk, awsfirelens
+ # options: {
+ # "String" => "String",
+ # },
+ # secret_options: [
+ # {
+ # name: "String", # required
+ # value_from: "String", # required
+ # },
+ # ],
+ # },
+ # },
# })
#
# @example Response structure
#
# resp.service.service_arn #=> String
@@ -1413,10 +1485,28 @@
# resp.service.deployments[0].network_configuration.awsvpc_configuration.security_groups #=> Array
# resp.service.deployments[0].network_configuration.awsvpc_configuration.security_groups[0] #=> String
# resp.service.deployments[0].network_configuration.awsvpc_configuration.assign_public_ip #=> String, one of "ENABLED", "DISABLED"
# resp.service.deployments[0].rollout_state #=> String, one of "COMPLETED", "FAILED", "IN_PROGRESS"
# resp.service.deployments[0].rollout_state_reason #=> String
+ # resp.service.deployments[0].service_connect_configuration.enabled #=> Boolean
+ # resp.service.deployments[0].service_connect_configuration.namespace #=> String
+ # resp.service.deployments[0].service_connect_configuration.services #=> Array
+ # resp.service.deployments[0].service_connect_configuration.services[0].port_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].discovery_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.options #=> Hash
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.options["String"] #=> String
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options #=> Array
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options[0].name #=> String
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options[0].value_from #=> String
+ # resp.service.deployments[0].service_connect_resources #=> Array
+ # resp.service.deployments[0].service_connect_resources[0].discovery_name #=> String
+ # resp.service.deployments[0].service_connect_resources[0].discovery_arn #=> String
# resp.service.role_arn #=> String
# resp.service.events #=> Array
# resp.service.events[0].id #=> String
# resp.service.events[0].created_at #=> Time
# resp.service.events[0].message #=> String
@@ -1966,10 +2056,11 @@
# resp.cluster.attachments[0].status #=> String
# resp.cluster.attachments[0].details #=> Array
# resp.cluster.attachments[0].details[0].name #=> String
# resp.cluster.attachments[0].details[0].value #=> String
# resp.cluster.attachments_status #=> String
+ # resp.cluster.service_connect_defaults.namespace #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeleteCluster AWS API Documentation
#
# @overload delete_cluster(params = {})
# @param [Hash] params ({})
@@ -2136,10 +2227,28 @@
# resp.service.deployments[0].network_configuration.awsvpc_configuration.security_groups #=> Array
# resp.service.deployments[0].network_configuration.awsvpc_configuration.security_groups[0] #=> String
# resp.service.deployments[0].network_configuration.awsvpc_configuration.assign_public_ip #=> String, one of "ENABLED", "DISABLED"
# resp.service.deployments[0].rollout_state #=> String, one of "COMPLETED", "FAILED", "IN_PROGRESS"
# resp.service.deployments[0].rollout_state_reason #=> String
+ # resp.service.deployments[0].service_connect_configuration.enabled #=> Boolean
+ # resp.service.deployments[0].service_connect_configuration.namespace #=> String
+ # resp.service.deployments[0].service_connect_configuration.services #=> Array
+ # resp.service.deployments[0].service_connect_configuration.services[0].port_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].discovery_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.options #=> Hash
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.options["String"] #=> String
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options #=> Array
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options[0].name #=> String
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options[0].value_from #=> String
+ # resp.service.deployments[0].service_connect_resources #=> Array
+ # resp.service.deployments[0].service_connect_resources[0].discovery_name #=> String
+ # resp.service.deployments[0].service_connect_resources[0].discovery_arn #=> String
# resp.service.role_arn #=> String
# resp.service.events #=> Array
# resp.service.events[0].id #=> String
# resp.service.events[0].created_at #=> Time
# resp.service.events[0].message #=> String
@@ -2457,10 +2566,12 @@
# resp.task_definition.container_definitions[0].links[0] #=> String
# resp.task_definition.container_definitions[0].port_mappings #=> Array
# resp.task_definition.container_definitions[0].port_mappings[0].container_port #=> Integer
# resp.task_definition.container_definitions[0].port_mappings[0].host_port #=> Integer
# resp.task_definition.container_definitions[0].port_mappings[0].protocol #=> String, one of "tcp", "udp"
+ # resp.task_definition.container_definitions[0].port_mappings[0].name #=> String
+ # resp.task_definition.container_definitions[0].port_mappings[0].app_protocol #=> String, one of "http", "http2", "grpc"
# resp.task_definition.container_definitions[0].essential #=> Boolean
# resp.task_definition.container_definitions[0].entry_point #=> Array
# resp.task_definition.container_definitions[0].entry_point[0] #=> String
# resp.task_definition.container_definitions[0].command #=> Array
# resp.task_definition.container_definitions[0].command[0] #=> String
@@ -2709,11 +2820,12 @@
# Determines whether to include additional information about the
# clusters in the response. If this field is omitted, this information
# isn't included.
#
# If `ATTACHMENTS` is specified, the attachments for the container
- # instances or tasks within the cluster are included.
+ # instances or tasks within the cluster are included, for example the
+ # capacity providers.
#
# If `SETTINGS` is specified, the settings for the cluster are included.
#
# If `CONFIGURATIONS` is specified, the configuration for the cluster is
# included.
@@ -2798,10 +2910,11 @@
# resp.clusters[0].attachments[0].status #=> String
# resp.clusters[0].attachments[0].details #=> Array
# resp.clusters[0].attachments[0].details[0].name #=> String
# resp.clusters[0].attachments[0].details[0].value #=> String
# resp.clusters[0].attachments_status #=> String
+ # resp.clusters[0].service_connect_defaults.namespace #=> String
# resp.failures #=> Array
# resp.failures[0].arn #=> String
# resp.failures[0].reason #=> String
# resp.failures[0].detail #=> String
#
@@ -3188,10 +3301,28 @@
# resp.services[0].deployments[0].network_configuration.awsvpc_configuration.security_groups #=> Array
# resp.services[0].deployments[0].network_configuration.awsvpc_configuration.security_groups[0] #=> String
# resp.services[0].deployments[0].network_configuration.awsvpc_configuration.assign_public_ip #=> String, one of "ENABLED", "DISABLED"
# resp.services[0].deployments[0].rollout_state #=> String, one of "COMPLETED", "FAILED", "IN_PROGRESS"
# resp.services[0].deployments[0].rollout_state_reason #=> String
+ # resp.services[0].deployments[0].service_connect_configuration.enabled #=> Boolean
+ # resp.services[0].deployments[0].service_connect_configuration.namespace #=> String
+ # resp.services[0].deployments[0].service_connect_configuration.services #=> Array
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].port_name #=> String
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].discovery_name #=> String
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
+ # resp.services[0].deployments[0].service_connect_configuration.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
+ # resp.services[0].deployments[0].service_connect_configuration.log_configuration.options #=> Hash
+ # resp.services[0].deployments[0].service_connect_configuration.log_configuration.options["String"] #=> String
+ # resp.services[0].deployments[0].service_connect_configuration.log_configuration.secret_options #=> Array
+ # resp.services[0].deployments[0].service_connect_configuration.log_configuration.secret_options[0].name #=> String
+ # resp.services[0].deployments[0].service_connect_configuration.log_configuration.secret_options[0].value_from #=> String
+ # resp.services[0].deployments[0].service_connect_resources #=> Array
+ # resp.services[0].deployments[0].service_connect_resources[0].discovery_name #=> String
+ # resp.services[0].deployments[0].service_connect_resources[0].discovery_arn #=> String
# resp.services[0].role_arn #=> String
# resp.services[0].events #=> Array
# resp.services[0].events[0].id #=> String
# resp.services[0].events[0].created_at #=> Time
# resp.services[0].events[0].message #=> String
@@ -3346,10 +3477,12 @@
# resp.task_definition.container_definitions[0].links[0] #=> String
# resp.task_definition.container_definitions[0].port_mappings #=> Array
# resp.task_definition.container_definitions[0].port_mappings[0].container_port #=> Integer
# resp.task_definition.container_definitions[0].port_mappings[0].host_port #=> Integer
# resp.task_definition.container_definitions[0].port_mappings[0].protocol #=> String, one of "tcp", "udp"
+ # resp.task_definition.container_definitions[0].port_mappings[0].name #=> String
+ # resp.task_definition.container_definitions[0].port_mappings[0].app_protocol #=> String, one of "http", "http2", "grpc"
# resp.task_definition.container_definitions[0].essential #=> Boolean
# resp.task_definition.container_definitions[0].entry_point #=> Array
# resp.task_definition.container_definitions[0].entry_point[0] #=> String
# resp.task_definition.container_definitions[0].command #=> Array
# resp.task_definition.container_definitions[0].command[0] #=> String
@@ -3778,11 +3911,11 @@
# resp.tasks[0].platform_family #=> String
# resp.tasks[0].pull_started_at #=> Time
# resp.tasks[0].pull_stopped_at #=> Time
# resp.tasks[0].started_at #=> Time
# resp.tasks[0].started_by #=> String
- # resp.tasks[0].stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated"
+ # resp.tasks[0].stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated", "ServiceSchedulerInitiated", "SpotInterruption", "TerminationNotice"
# resp.tasks[0].stopped_at #=> Time
# resp.tasks[0].stopped_reason #=> String
# resp.tasks[0].stopping_at #=> Time
# resp.tasks[0].tags #=> Array
# resp.tasks[0].tags[0].key #=> String
@@ -3833,10 +3966,11 @@
#
# @return [Types::DiscoverPollEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::DiscoverPollEndpointResponse#endpoint #endpoint} => String
# * {Types::DiscoverPollEndpointResponse#telemetry_endpoint #telemetry_endpoint} => String
+ # * {Types::DiscoverPollEndpointResponse#service_connect_endpoint #service_connect_endpoint} => String
#
# @example Request syntax with placeholder values
#
# resp = client.discover_poll_endpoint({
# container_instance: "String",
@@ -3845,10 +3979,11 @@
#
# @example Response structure
#
# resp.endpoint #=> String
# resp.telemetry_endpoint #=> String
+ # resp.service_connect_endpoint #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DiscoverPollEndpoint AWS API Documentation
#
# @overload discover_poll_endpoint(params = {})
# @param [Hash] params ({})
@@ -3859,11 +3994,11 @@
# Runs a command remotely on a container within a task.
#
# If you use a condition key in your IAM policy to refine the conditions
# for the policy statement, for example limit the actions to a specific
- # cluster, you recevie an `AccessDeniedException` when there is a
+ # cluster, you receive an `AccessDeniedException` when there is a
# mismatch between the condition key value and the corresponding
# parameter value.
#
# @option params [String] :cluster
# The Amazon Resource Name (ARN) or short name of the cluster the task
@@ -4470,10 +4605,86 @@
def list_services(params = {}, options = {})
req = build_request(:list_services, params)
req.send_request(options)
end
+ # This operation lists all of the services that are associated with a
+ # Cloud Map namespace. This list might include services in different
+ # clusters. In contrast, `ListServices` can only list services in one
+ # cluster at a time. If you need to filter the list of services in a
+ # single cluster by various parameters, use `ListServices`. For more
+ # information, see [Service Connect][1] in the *Amazon Elastic Container
+ # Service Developer Guide*.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
+ #
+ # @option params [required, String] :namespace
+ # The namespace name or full Amazon Resource Name (ARN) of the Cloud Map
+ # namespace to list the services in.
+ #
+ # Tasks that run in a namespace can use short names to connect to
+ # services in the namespace. Tasks can connect to services across all of
+ # the clusters in the namespace. Tasks connect through a managed proxy
+ # container that collects logs and metrics for increased visibility.
+ # Only the tasks that Amazon ECS services create are supported with
+ # Service Connect. For more information, see [Service Connect][1] in the
+ # *Amazon Elastic Container Service Developer Guide*.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
+ #
+ # @option params [String] :next_token
+ # The `nextToken` value that's returned from a
+ # `ListServicesByNamespace` request. It indicates that more results are
+ # available to fulfill the request and further calls are needed. If
+ # `maxResults` is returned, it is possible the number of results is less
+ # than `maxResults`.
+ #
+ # @option params [Integer] :max_results
+ # The maximum number of service results that `ListServicesByNamespace`
+ # returns in paginated output. When this parameter is used,
+ # `ListServicesByNamespace` only returns `maxResults` results in a
+ # single page along with a `nextToken` response element. The remaining
+ # results of the initial request can be seen by sending another
+ # `ListServicesByNamespace` request with the returned `nextToken` value.
+ # This value can be between 1 and 100. If this parameter isn't used,
+ # then `ListServicesByNamespace` returns up to 10 results and a
+ # `nextToken` value if applicable.
+ #
+ # @return [Types::ListServicesByNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListServicesByNamespaceResponse#service_arns #service_arns} => Array<String>
+ # * {Types::ListServicesByNamespaceResponse#next_token #next_token} => String
+ #
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_services_by_namespace({
+ # namespace: "String", # required
+ # next_token: "String",
+ # max_results: 1,
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.service_arns #=> Array
+ # resp.service_arns[0] #=> String
+ # resp.next_token #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ListServicesByNamespace AWS API Documentation
+ #
+ # @overload list_services_by_namespace(params = {})
+ # @param [Hash] params ({})
+ def list_services_by_namespace(params = {}, options = {})
+ req = build_request(:list_services_by_namespace, params)
+ req.send_request(options)
+ end
+
# List the tags for an Amazon ECS resource.
#
# @option params [required, String] :resource_arn
# The Amazon Resource Name (ARN) that identifies the resource to list
# the tags for. Currently, the supported resources are Amazon ECS tasks,
@@ -4806,10 +5017,13 @@
# @option params [String] :started_by
# The `startedBy` value to filter the task results with. Specifying a
# `startedBy` value limits the results to tasks that were started with
# that value.
#
+ # When you specify `startedBy` as the filter, it must be the only filter
+ # that you use.
+ #
# @option params [String] :service_name
# The name of the service to use when filtering the `ListTasks` results.
# Specifying a `serviceName` limits the results to tasks that belong to
# that service.
#
@@ -5287,10 +5501,11 @@
# resp.cluster.attachments[0].status #=> String
# resp.cluster.attachments[0].details #=> Array
# resp.cluster.attachments[0].details[0].name #=> String
# resp.cluster.attachments[0].details[0].value #=> String
# resp.cluster.attachments_status #=> String
+ # resp.cluster.service_connect_defaults.namespace #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/PutClusterCapacityProviders AWS API Documentation
#
# @overload put_cluster_capacity_providers(params = {})
# @param [Hash] params ({})
@@ -5928,10 +6143,12 @@
# port_mappings: [
# {
# container_port: 1,
# host_port: 1,
# protocol: "tcp", # accepts tcp, udp
+ # name: "String",
+ # app_protocol: "http", # accepts http, http2, grpc
# },
# ],
# essential: false,
# entry_point: ["String"],
# command: ["String"],
@@ -6157,10 +6374,12 @@
# resp.task_definition.container_definitions[0].links[0] #=> String
# resp.task_definition.container_definitions[0].port_mappings #=> Array
# resp.task_definition.container_definitions[0].port_mappings[0].container_port #=> Integer
# resp.task_definition.container_definitions[0].port_mappings[0].host_port #=> Integer
# resp.task_definition.container_definitions[0].port_mappings[0].protocol #=> String, one of "tcp", "udp"
+ # resp.task_definition.container_definitions[0].port_mappings[0].name #=> String
+ # resp.task_definition.container_definitions[0].port_mappings[0].app_protocol #=> String, one of "http", "http2", "grpc"
# resp.task_definition.container_definitions[0].essential #=> Boolean
# resp.task_definition.container_definitions[0].entry_point #=> Array
# resp.task_definition.container_definitions[0].entry_point[0] #=> String
# resp.task_definition.container_definitions[0].command #=> Array
# resp.task_definition.container_definitions[0].command[0] #=> String
@@ -6787,11 +7006,11 @@
# resp.tasks[0].platform_family #=> String
# resp.tasks[0].pull_started_at #=> Time
# resp.tasks[0].pull_stopped_at #=> Time
# resp.tasks[0].started_at #=> Time
# resp.tasks[0].started_by #=> String
- # resp.tasks[0].stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated"
+ # resp.tasks[0].stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated", "ServiceSchedulerInitiated", "SpotInterruption", "TerminationNotice"
# resp.tasks[0].stopped_at #=> Time
# resp.tasks[0].stopped_reason #=> String
# resp.tasks[0].stopping_at #=> Time
# resp.tasks[0].tags #=> Array
# resp.tasks[0].tags[0].key #=> String
@@ -7095,11 +7314,11 @@
# resp.tasks[0].platform_family #=> String
# resp.tasks[0].pull_started_at #=> Time
# resp.tasks[0].pull_stopped_at #=> Time
# resp.tasks[0].started_at #=> Time
# resp.tasks[0].started_by #=> String
- # resp.tasks[0].stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated"
+ # resp.tasks[0].stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated", "ServiceSchedulerInitiated", "SpotInterruption", "TerminationNotice"
# resp.tasks[0].stopped_at #=> Time
# resp.tasks[0].stopped_reason #=> String
# resp.tasks[0].stopping_at #=> Time
# resp.tasks[0].tags #=> Array
# resp.tasks[0].tags[0].key #=> String
@@ -7261,11 +7480,11 @@
# resp.task.platform_family #=> String
# resp.task.pull_started_at #=> Time
# resp.task.pull_stopped_at #=> Time
# resp.task.started_at #=> Time
# resp.task.started_by #=> String
- # resp.task.stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated"
+ # resp.task.stop_code #=> String, one of "TaskFailedToStart", "EssentialContainerExited", "UserInitiated", "ServiceSchedulerInitiated", "SpotInterruption", "TerminationNotice"
# resp.task.stopped_at #=> Time
# resp.task.stopped_reason #=> String
# resp.task.stopping_at #=> Time
# resp.task.tags #=> Array
# resp.task.tags[0].key #=> String
@@ -7685,10 +7904,32 @@
# The cluster settings for your cluster.
#
# @option params [Types::ClusterConfiguration] :configuration
# The execute command configuration for the cluster.
#
+ # @option params [Types::ClusterServiceConnectDefaultsRequest] :service_connect_defaults
+ # Use this parameter to set a default Service Connect namespace. After
+ # you set a default Service Connect namespace, any new services with
+ # Service Connect turned on that are created in the cluster are added as
+ # client services in the namespace. This setting only applies to new
+ # services that set the `enabled` parameter to `true` in the
+ # `ServiceConnectConfiguration`. You can set the namespace of each
+ # service individually in the `ServiceConnectConfiguration` to override
+ # this default parameter.
+ #
+ # Tasks that run in a namespace can use short names to connect to
+ # services in the namespace. Tasks can connect to services across all of
+ # the clusters in the namespace. Tasks connect through a managed proxy
+ # container that collects logs and metrics for increased visibility.
+ # Only the tasks that Amazon ECS services create are supported with
+ # Service Connect. For more information, see [Service Connect][1] in the
+ # *Amazon Elastic Container Service Developer Guide*.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
+ #
# @return [Types::UpdateClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::UpdateClusterResponse#cluster #cluster} => Types::Cluster
#
# @example Request syntax with placeholder values
@@ -7712,10 +7953,13 @@
# s3_encryption_enabled: false,
# s3_key_prefix: "String",
# },
# },
# },
+ # service_connect_defaults: {
+ # namespace: "String", # required
+ # },
# })
#
# @example Response structure
#
# resp.cluster.cluster_arn #=> String
@@ -7753,10 +7997,11 @@
# resp.cluster.attachments[0].status #=> String
# resp.cluster.attachments[0].details #=> Array
# resp.cluster.attachments[0].details[0].name #=> String
# resp.cluster.attachments[0].details[0].value #=> String
# resp.cluster.attachments_status #=> String
+ # resp.cluster.service_connect_defaults.namespace #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateCluster AWS API Documentation
#
# @overload update_cluster(params = {})
# @param [Hash] params ({})
@@ -7774,10 +8019,17 @@
# The setting to use by default for a cluster. This parameter is used to
# turn on CloudWatch Container Insights for a cluster. If this value is
# specified, it overrides the `containerInsights` value set with
# PutAccountSetting or PutAccountSettingDefault.
#
+ # Currently, if you delete an existing cluster that does not have
+ # Container Insights turned on, and then create a new cluster with the
+ # same name with Container Insights tuned on, Container Insights will
+ # not actually be turned on. If you want to preserve the same name for
+ # your existing cluster and turn on Container Insights, you must wait 7
+ # days before you can re-create it.
+ #
# @return [Types::UpdateClusterSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::UpdateClusterSettingsResponse#cluster #cluster} => Types::Cluster
#
# @example Request syntax with placeholder values
@@ -7829,10 +8081,11 @@
# resp.cluster.attachments[0].status #=> String
# resp.cluster.attachments[0].details #=> Array
# resp.cluster.attachments[0].details[0].name #=> String
# resp.cluster.attachments[0].details[0].value #=> String
# resp.cluster.attachments_status #=> String
+ # resp.cluster.service_connect_defaults.namespace #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateClusterSettings AWS API Documentation
#
# @overload update_cluster_settings(params = {})
# @param [Hash] params ({})
@@ -7855,10 +8108,17 @@
# ECS container agent][1] in the *Amazon Elastic Container Service
# Developer Guide*.
#
# </note>
#
+ # <note markdown="1"> Agent updates with the `UpdateContainerAgent` API operation do not
+ # apply to Windows container instances. We recommend that you launch new
+ # container instances to update the agent version in your Windows
+ # clusters.
+ #
+ # </note>
+ #
# The `UpdateContainerAgent` API requires an Amazon ECS-optimized AMI or
# Amazon Linux AMI with the `ecs-init` service installed and running.
# For help updating the Amazon ECS container agent on other operating
# systems, see [Manually updating the Amazon ECS container agent][2] in
# the *Amazon Elastic Container Service Developer Guide*.
@@ -8423,10 +8683,27 @@
#
#
#
# [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html
#
+ # @option params [Types::ServiceConnectConfiguration] :service_connect_configuration
+ # The configuration for this service to discover and connect to
+ # services, and be discovered by, and connected from, other services
+ # within a namespace.
+ #
+ # Tasks that run in a namespace can use short names to connect to
+ # services in the namespace. Tasks can connect to services across all of
+ # the clusters in the namespace. Tasks connect through a managed proxy
+ # container that collects logs and metrics for increased visibility.
+ # Only the tasks that Amazon ECS services create are supported with
+ # Service Connect. For more information, see [Service Connect][1] in the
+ # *Amazon Elastic Container Service Developer Guide*.
+ #
+ #
+ #
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
+ #
# @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::UpdateServiceResponse#service #service} => Types::Service
#
#
@@ -8517,10 +8794,39 @@
# port: 1,
# container_name: "String",
# container_port: 1,
# },
# ],
+ # service_connect_configuration: {
+ # enabled: false, # required
+ # namespace: "String",
+ # services: [
+ # {
+ # port_name: "String", # required
+ # discovery_name: "String",
+ # client_aliases: [
+ # {
+ # port: 1, # required
+ # dns_name: "String",
+ # },
+ # ],
+ # ingress_port_override: 1,
+ # },
+ # ],
+ # log_configuration: {
+ # log_driver: "json-file", # required, accepts json-file, syslog, journald, gelf, fluentd, awslogs, splunk, awsfirelens
+ # options: {
+ # "String" => "String",
+ # },
+ # secret_options: [
+ # {
+ # name: "String", # required
+ # value_from: "String", # required
+ # },
+ # ],
+ # },
+ # },
# })
#
# @example Response structure
#
# resp.service.service_arn #=> String
@@ -8617,10 +8923,28 @@
# resp.service.deployments[0].network_configuration.awsvpc_configuration.security_groups #=> Array
# resp.service.deployments[0].network_configuration.awsvpc_configuration.security_groups[0] #=> String
# resp.service.deployments[0].network_configuration.awsvpc_configuration.assign_public_ip #=> String, one of "ENABLED", "DISABLED"
# resp.service.deployments[0].rollout_state #=> String, one of "COMPLETED", "FAILED", "IN_PROGRESS"
# resp.service.deployments[0].rollout_state_reason #=> String
+ # resp.service.deployments[0].service_connect_configuration.enabled #=> Boolean
+ # resp.service.deployments[0].service_connect_configuration.namespace #=> String
+ # resp.service.deployments[0].service_connect_configuration.services #=> Array
+ # resp.service.deployments[0].service_connect_configuration.services[0].port_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].discovery_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
+ # resp.service.deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.log_driver #=> String, one of "json-file", "syslog", "journald", "gelf", "fluentd", "awslogs", "splunk", "awsfirelens"
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.options #=> Hash
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.options["String"] #=> String
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options #=> Array
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options[0].name #=> String
+ # resp.service.deployments[0].service_connect_configuration.log_configuration.secret_options[0].value_from #=> String
+ # resp.service.deployments[0].service_connect_resources #=> Array
+ # resp.service.deployments[0].service_connect_resources[0].discovery_name #=> String
+ # resp.service.deployments[0].service_connect_resources[0].discovery_arn #=> String
# resp.service.role_arn #=> String
# resp.service.events #=> Array
# resp.service.events[0].id #=> String
# resp.service.events[0].created_at #=> Time
# resp.service.events[0].message #=> String
@@ -8761,30 +9085,30 @@
# operation for a task that already has `protectionEnabled` set to
# `true`. You can keep extending the protection expiration period of a
# task by invoking this operation repeatedly.
#
# To learn more about Amazon ECS task protection, see [Task scale-in
- # protection][3] in the *Amazon Elastic Container Service Developer
- # Guide*.
+ # protection][3] in the <i> <i>Amazon Elastic Container Service
+ # Developer Guide</i> </i>.
#
# <note markdown="1"> This operation is only supported for tasks belonging to an Amazon ECS
# service. Invoking this operation for a standalone task will result in
# an `TASK_NOT_VALID` failure. For more information, see [API failure
# reasons][4].
#
# </note>
#
# If you prefer to set task protection from within the container, we
- # recommend using the [Amazon ECS container agent endpoint][5].
+ # recommend using the [Task scale-in protection endpoint][5].
#
#
#
# [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-auto-scaling.html
# [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
# [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-scale-in-protection.html
- # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/api_failures_messages.html.html
- # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-endpoint.html
+ # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/api_failures_messages.html
+ # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-scale-in-protection-endpoint.html
#
# @option params [required, String] :cluster
# The short name or full Amazon Resource Name (ARN) of the cluster that
# hosts the service that the task sets exist in.
#
@@ -9023,10 +9347,10 @@
operation: config.api.operation(operation_name),
client: self,
params: params,
config: config)
context[:gem_name] = 'aws-sdk-ecs'
- context[:gem_version] = '1.105.0'
+ context[:gem_version] = '1.106.0'
Seahorse::Client::Request.new(handlers, context)
end
# Polls an API operation until a resource enters a desired state.
#