aws-sdk-ecs 1.104.0 → 1.105.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-ecs/client.rb +239 -1
- data/lib/aws-sdk-ecs/client_api.rb +61 -0
- data/lib/aws-sdk-ecs/endpoints.rb +28 -0
- data/lib/aws-sdk-ecs/plugins/endpoints.rb +4 -0
- data/lib/aws-sdk-ecs/types.rb +152 -0
- data/lib/aws-sdk-ecs.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 789d2a119deed80004f66d84bc3c5425758742b1b0070ab60f0c8993525c6837
|
4
|
+
data.tar.gz: 3adc2267e9be935901ef6184fca3fe15e350978a51bf0b9a94aa4df0798f66bd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 586f1fae25026a2076ab9855bd6b5b77b412c1c8695254660535faa674b417c5220e9fbba04c1e07a6f1bfdf5e6ab3e56e0f01a769b3ca54f26d60943f27e26d
|
7
|
+
data.tar.gz: a348d4a49a77edc12f0659706f29c97349d87be7fb76de6e188c8888f37870d61556fad1c77bcd2b24fb877c6a9af6463ca251d3f8766cf73e5f636975f569f7
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.105.0 (2022-11-10)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - This release adds support for task scale-in protection with updateTaskProtection and getTaskProtection APIs. UpdateTaskProtection API can be used to protect a service managed task from being terminated by scale-in events and getTaskProtection API to get the scale-in protection status of a task.
|
8
|
+
|
4
9
|
1.104.0 (2022-10-25)
|
5
10
|
------------------
|
6
11
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.105.0
|
data/lib/aws-sdk-ecs/client.rb
CHANGED
@@ -3923,6 +3923,72 @@ module Aws::ECS
|
|
3923
3923
|
req.send_request(options)
|
3924
3924
|
end
|
3925
3925
|
|
3926
|
+
# Retrieves the protection status of tasks in an Amazon ECS service.
|
3927
|
+
#
|
3928
|
+
# @option params [required, String] :cluster
|
3929
|
+
# The short name or full Amazon Resource Name (ARN) of the cluster that
|
3930
|
+
# hosts the service that the task sets exist in.
|
3931
|
+
#
|
3932
|
+
# @option params [Array<String>] :tasks
|
3933
|
+
# A list of up to 100 task IDs or full ARN entries.
|
3934
|
+
#
|
3935
|
+
# @return [Types::GetTaskProtectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
3936
|
+
#
|
3937
|
+
# * {Types::GetTaskProtectionResponse#protected_tasks #protected_tasks} => Array<Types::ProtectedTask>
|
3938
|
+
# * {Types::GetTaskProtectionResponse#failures #failures} => Array<Types::Failure>
|
3939
|
+
#
|
3940
|
+
#
|
3941
|
+
# @example Example: To get the protection status of a task
|
3942
|
+
#
|
3943
|
+
# # In this example, we get the protection status for a single task.
|
3944
|
+
#
|
3945
|
+
# resp = client.get_task_protection({
|
3946
|
+
# cluster: "test-task-protection",
|
3947
|
+
# tasks: [
|
3948
|
+
# "b8b1cf532d0e46ba8d44a40d1de16772",
|
3949
|
+
# ],
|
3950
|
+
# })
|
3951
|
+
#
|
3952
|
+
# resp.to_h outputs the following:
|
3953
|
+
# {
|
3954
|
+
# failures: [
|
3955
|
+
# ],
|
3956
|
+
# protected_tasks: [
|
3957
|
+
# {
|
3958
|
+
# expiration_date: Time.parse("2022-11-02T06:56:32.553Z"),
|
3959
|
+
# protection_enabled: true,
|
3960
|
+
# task_arn: "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772",
|
3961
|
+
# },
|
3962
|
+
# ],
|
3963
|
+
# }
|
3964
|
+
#
|
3965
|
+
# @example Request syntax with placeholder values
|
3966
|
+
#
|
3967
|
+
# resp = client.get_task_protection({
|
3968
|
+
# cluster: "String", # required
|
3969
|
+
# tasks: ["String"],
|
3970
|
+
# })
|
3971
|
+
#
|
3972
|
+
# @example Response structure
|
3973
|
+
#
|
3974
|
+
# resp.protected_tasks #=> Array
|
3975
|
+
# resp.protected_tasks[0].task_arn #=> String
|
3976
|
+
# resp.protected_tasks[0].protection_enabled #=> Boolean
|
3977
|
+
# resp.protected_tasks[0].expiration_date #=> Time
|
3978
|
+
# resp.failures #=> Array
|
3979
|
+
# resp.failures[0].arn #=> String
|
3980
|
+
# resp.failures[0].reason #=> String
|
3981
|
+
# resp.failures[0].detail #=> String
|
3982
|
+
#
|
3983
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/GetTaskProtection AWS API Documentation
|
3984
|
+
#
|
3985
|
+
# @overload get_task_protection(params = {})
|
3986
|
+
# @param [Hash] params ({})
|
3987
|
+
def get_task_protection(params = {}, options = {})
|
3988
|
+
req = build_request(:get_task_protection, params)
|
3989
|
+
req.send_request(options)
|
3990
|
+
end
|
3991
|
+
|
3926
3992
|
# Lists the account settings for a specified principal.
|
3927
3993
|
#
|
3928
3994
|
# @option params [String] :name
|
@@ -8679,6 +8745,178 @@ module Aws::ECS
|
|
8679
8745
|
req.send_request(options)
|
8680
8746
|
end
|
8681
8747
|
|
8748
|
+
# Updates the protection status of a task. You can set
|
8749
|
+
# `protectionEnabled` to `true` to protect your task from termination
|
8750
|
+
# during scale-in events from [Service Autoscaling][1] or
|
8751
|
+
# [deployments][2].
|
8752
|
+
#
|
8753
|
+
# Task-protection, by default, expires after 2 hours at which point
|
8754
|
+
# Amazon ECS unsets the `protectionEnabled` property making the task
|
8755
|
+
# eligible for termination by a subsequent scale-in event.
|
8756
|
+
#
|
8757
|
+
# You can specify a custom expiration period for task protection from 1
|
8758
|
+
# minute to up to 2,880 minutes (48 hours). To specify the custom
|
8759
|
+
# expiration period, set the `expiresInMinutes` property. The
|
8760
|
+
# `expiresInMinutes` property is always reset when you invoke this
|
8761
|
+
# operation for a task that already has `protectionEnabled` set to
|
8762
|
+
# `true`. You can keep extending the protection expiration period of a
|
8763
|
+
# task by invoking this operation repeatedly.
|
8764
|
+
#
|
8765
|
+
# To learn more about Amazon ECS task protection, see [Task scale-in
|
8766
|
+
# protection][3] in the *Amazon Elastic Container Service Developer
|
8767
|
+
# Guide*.
|
8768
|
+
#
|
8769
|
+
# <note markdown="1"> This operation is only supported for tasks belonging to an Amazon ECS
|
8770
|
+
# service. Invoking this operation for a standalone task will result in
|
8771
|
+
# an `TASK_NOT_VALID` failure. For more information, see [API failure
|
8772
|
+
# reasons][4].
|
8773
|
+
#
|
8774
|
+
# </note>
|
8775
|
+
#
|
8776
|
+
# If you prefer to set task protection from within the container, we
|
8777
|
+
# recommend using the [Amazon ECS container agent endpoint][5].
|
8778
|
+
#
|
8779
|
+
#
|
8780
|
+
#
|
8781
|
+
# [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-auto-scaling.html
|
8782
|
+
# [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
|
8783
|
+
# [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-scale-in-protection.html
|
8784
|
+
# [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/api_failures_messages.html.html
|
8785
|
+
# [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-endpoint.html
|
8786
|
+
#
|
8787
|
+
# @option params [required, String] :cluster
|
8788
|
+
# The short name or full Amazon Resource Name (ARN) of the cluster that
|
8789
|
+
# hosts the service that the task sets exist in.
|
8790
|
+
#
|
8791
|
+
# @option params [required, Array<String>] :tasks
|
8792
|
+
# A list of up to 10 task IDs or full ARN entries.
|
8793
|
+
#
|
8794
|
+
# @option params [required, Boolean] :protection_enabled
|
8795
|
+
# Specify `true` to mark a task for protection and `false` to unset
|
8796
|
+
# protection, making it eligible for termination.
|
8797
|
+
#
|
8798
|
+
# @option params [Integer] :expires_in_minutes
|
8799
|
+
# If you set `protectionEnabled` to `true`, you can specify the duration
|
8800
|
+
# for task protection in minutes. You can specify a value from 1 minute
|
8801
|
+
# to up to 2,880 minutes (48 hours). During this time, your task will
|
8802
|
+
# not be terminated by scale-in events from Service Auto Scaling or
|
8803
|
+
# deployments. After this time period lapses, `protectionEnabled` will
|
8804
|
+
# be reset to `false`.
|
8805
|
+
#
|
8806
|
+
# If you don’t specify the time, then the task is automatically
|
8807
|
+
# protected for 120 minutes (2 hours).
|
8808
|
+
#
|
8809
|
+
# @return [Types::UpdateTaskProtectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
8810
|
+
#
|
8811
|
+
# * {Types::UpdateTaskProtectionResponse#protected_tasks #protected_tasks} => Array<Types::ProtectedTask>
|
8812
|
+
# * {Types::UpdateTaskProtectionResponse#failures #failures} => Array<Types::Failure>
|
8813
|
+
#
|
8814
|
+
#
|
8815
|
+
# @example Example: To set task scale-in protection for a task for 60 minutes
|
8816
|
+
#
|
8817
|
+
# # This example enables scale-in protection for a task for 60 minutes.
|
8818
|
+
#
|
8819
|
+
# resp = client.update_task_protection({
|
8820
|
+
# cluster: "test-task-protection",
|
8821
|
+
# expires_in_minutes: 60,
|
8822
|
+
# protection_enabled: true,
|
8823
|
+
# tasks: [
|
8824
|
+
# "b8b1cf532d0e46ba8d44a40d1de16772",
|
8825
|
+
# ],
|
8826
|
+
# })
|
8827
|
+
#
|
8828
|
+
# resp.to_h outputs the following:
|
8829
|
+
# {
|
8830
|
+
# failures: [
|
8831
|
+
# ],
|
8832
|
+
# protected_tasks: [
|
8833
|
+
# {
|
8834
|
+
# expiration_date: Time.parse("2022-11-02T06:56:32.553Z"),
|
8835
|
+
# protection_enabled: true,
|
8836
|
+
# task_arn: "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772",
|
8837
|
+
# },
|
8838
|
+
# ],
|
8839
|
+
# }
|
8840
|
+
#
|
8841
|
+
# @example Example: To set task scale-in protection for the default time period in minutes
|
8842
|
+
#
|
8843
|
+
# # This example enables task scale-in protection for a task, without specifying the expiresInMinutes parameter, for the
|
8844
|
+
# # default protection period of 120 minutes.
|
8845
|
+
#
|
8846
|
+
# resp = client.update_task_protection({
|
8847
|
+
# cluster: "test-task-protection",
|
8848
|
+
# protection_enabled: true,
|
8849
|
+
# tasks: [
|
8850
|
+
# "b8b1cf532d0e46ba8d44a40d1de16772",
|
8851
|
+
# ],
|
8852
|
+
# })
|
8853
|
+
#
|
8854
|
+
# resp.to_h outputs the following:
|
8855
|
+
# {
|
8856
|
+
# failures: [
|
8857
|
+
# ],
|
8858
|
+
# protected_tasks: [
|
8859
|
+
# {
|
8860
|
+
# expiration_date: Time.parse("2022-11-02T06:56:32.553Z"),
|
8861
|
+
# protection_enabled: true,
|
8862
|
+
# task_arn: "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772",
|
8863
|
+
# },
|
8864
|
+
# ],
|
8865
|
+
# }
|
8866
|
+
#
|
8867
|
+
# @example Example: To remove task scale-in protection
|
8868
|
+
#
|
8869
|
+
# # This example removes scale-in protection for a task.
|
8870
|
+
#
|
8871
|
+
# resp = client.update_task_protection({
|
8872
|
+
# cluster: "test-task-protection",
|
8873
|
+
# protection_enabled: false,
|
8874
|
+
# tasks: [
|
8875
|
+
# "b8b1cf532d0e46ba8d44a40d1de16772",
|
8876
|
+
# ],
|
8877
|
+
# })
|
8878
|
+
#
|
8879
|
+
# resp.to_h outputs the following:
|
8880
|
+
# {
|
8881
|
+
# failures: [
|
8882
|
+
# ],
|
8883
|
+
# protected_tasks: [
|
8884
|
+
# {
|
8885
|
+
# protection_enabled: false,
|
8886
|
+
# task_arn: "arn:aws:ecs:us-west-2:012345678910:task/b8b1cf532d0e46ba8d44a40d1de16772",
|
8887
|
+
# },
|
8888
|
+
# ],
|
8889
|
+
# }
|
8890
|
+
#
|
8891
|
+
# @example Request syntax with placeholder values
|
8892
|
+
#
|
8893
|
+
# resp = client.update_task_protection({
|
8894
|
+
# cluster: "String", # required
|
8895
|
+
# tasks: ["String"], # required
|
8896
|
+
# protection_enabled: false, # required
|
8897
|
+
# expires_in_minutes: 1,
|
8898
|
+
# })
|
8899
|
+
#
|
8900
|
+
# @example Response structure
|
8901
|
+
#
|
8902
|
+
# resp.protected_tasks #=> Array
|
8903
|
+
# resp.protected_tasks[0].task_arn #=> String
|
8904
|
+
# resp.protected_tasks[0].protection_enabled #=> Boolean
|
8905
|
+
# resp.protected_tasks[0].expiration_date #=> Time
|
8906
|
+
# resp.failures #=> Array
|
8907
|
+
# resp.failures[0].arn #=> String
|
8908
|
+
# resp.failures[0].reason #=> String
|
8909
|
+
# resp.failures[0].detail #=> String
|
8910
|
+
#
|
8911
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateTaskProtection AWS API Documentation
|
8912
|
+
#
|
8913
|
+
# @overload update_task_protection(params = {})
|
8914
|
+
# @param [Hash] params ({})
|
8915
|
+
def update_task_protection(params = {}, options = {})
|
8916
|
+
req = build_request(:update_task_protection, params)
|
8917
|
+
req.send_request(options)
|
8918
|
+
end
|
8919
|
+
|
8682
8920
|
# Modifies a task set. This is used when a service uses the `EXTERNAL`
|
8683
8921
|
# deployment controller type. For more information, see [Amazon ECS
|
8684
8922
|
# Deployment Types][1] in the *Amazon Elastic Container Service
|
@@ -8787,7 +9025,7 @@ module Aws::ECS
|
|
8787
9025
|
params: params,
|
8788
9026
|
config: config)
|
8789
9027
|
context[:gem_name] = 'aws-sdk-ecs'
|
8790
|
-
context[:gem_version] = '1.
|
9028
|
+
context[:gem_version] = '1.105.0'
|
8791
9029
|
Seahorse::Client::Request.new(handlers, context)
|
8792
9030
|
end
|
8793
9031
|
|
@@ -151,6 +151,8 @@ module Aws::ECS
|
|
151
151
|
FirelensConfiguration = Shapes::StructureShape.new(name: 'FirelensConfiguration')
|
152
152
|
FirelensConfigurationOptionsMap = Shapes::MapShape.new(name: 'FirelensConfigurationOptionsMap')
|
153
153
|
FirelensConfigurationType = Shapes::StringShape.new(name: 'FirelensConfigurationType')
|
154
|
+
GetTaskProtectionRequest = Shapes::StructureShape.new(name: 'GetTaskProtectionRequest')
|
155
|
+
GetTaskProtectionResponse = Shapes::StructureShape.new(name: 'GetTaskProtectionResponse')
|
154
156
|
GpuIds = Shapes::ListShape.new(name: 'GpuIds')
|
155
157
|
HealthCheck = Shapes::StructureShape.new(name: 'HealthCheck')
|
156
158
|
HealthStatus = Shapes::StringShape.new(name: 'HealthStatus')
|
@@ -234,6 +236,8 @@ module Aws::ECS
|
|
234
236
|
PortMapping = Shapes::StructureShape.new(name: 'PortMapping')
|
235
237
|
PortMappingList = Shapes::ListShape.new(name: 'PortMappingList')
|
236
238
|
PropagateTags = Shapes::StringShape.new(name: 'PropagateTags')
|
239
|
+
ProtectedTask = Shapes::StructureShape.new(name: 'ProtectedTask')
|
240
|
+
ProtectedTasks = Shapes::ListShape.new(name: 'ProtectedTasks')
|
237
241
|
ProxyConfiguration = Shapes::StructureShape.new(name: 'ProxyConfiguration')
|
238
242
|
ProxyConfigurationProperties = Shapes::ListShape.new(name: 'ProxyConfigurationProperties')
|
239
243
|
ProxyConfigurationType = Shapes::StringShape.new(name: 'ProxyConfigurationType')
|
@@ -355,6 +359,8 @@ module Aws::ECS
|
|
355
359
|
UpdateServicePrimaryTaskSetResponse = Shapes::StructureShape.new(name: 'UpdateServicePrimaryTaskSetResponse')
|
356
360
|
UpdateServiceRequest = Shapes::StructureShape.new(name: 'UpdateServiceRequest')
|
357
361
|
UpdateServiceResponse = Shapes::StructureShape.new(name: 'UpdateServiceResponse')
|
362
|
+
UpdateTaskProtectionRequest = Shapes::StructureShape.new(name: 'UpdateTaskProtectionRequest')
|
363
|
+
UpdateTaskProtectionResponse = Shapes::StructureShape.new(name: 'UpdateTaskProtectionResponse')
|
358
364
|
UpdateTaskSetRequest = Shapes::StructureShape.new(name: 'UpdateTaskSetRequest')
|
359
365
|
UpdateTaskSetResponse = Shapes::StructureShape.new(name: 'UpdateTaskSetResponse')
|
360
366
|
VersionInfo = Shapes::StructureShape.new(name: 'VersionInfo')
|
@@ -907,6 +913,14 @@ module Aws::ECS
|
|
907
913
|
FirelensConfigurationOptionsMap.key = Shapes::ShapeRef.new(shape: String)
|
908
914
|
FirelensConfigurationOptionsMap.value = Shapes::ShapeRef.new(shape: String)
|
909
915
|
|
916
|
+
GetTaskProtectionRequest.add_member(:cluster, Shapes::ShapeRef.new(shape: String, required: true, location_name: "cluster"))
|
917
|
+
GetTaskProtectionRequest.add_member(:tasks, Shapes::ShapeRef.new(shape: StringList, location_name: "tasks"))
|
918
|
+
GetTaskProtectionRequest.struct_class = Types::GetTaskProtectionRequest
|
919
|
+
|
920
|
+
GetTaskProtectionResponse.add_member(:protected_tasks, Shapes::ShapeRef.new(shape: ProtectedTasks, location_name: "protectedTasks"))
|
921
|
+
GetTaskProtectionResponse.add_member(:failures, Shapes::ShapeRef.new(shape: Failures, location_name: "failures"))
|
922
|
+
GetTaskProtectionResponse.struct_class = Types::GetTaskProtectionResponse
|
923
|
+
|
910
924
|
GpuIds.member = Shapes::ShapeRef.new(shape: String)
|
911
925
|
|
912
926
|
HealthCheck.add_member(:command, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "command"))
|
@@ -1159,6 +1173,13 @@ module Aws::ECS
|
|
1159
1173
|
|
1160
1174
|
PortMappingList.member = Shapes::ShapeRef.new(shape: PortMapping)
|
1161
1175
|
|
1176
|
+
ProtectedTask.add_member(:task_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskArn"))
|
1177
|
+
ProtectedTask.add_member(:protection_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "protectionEnabled"))
|
1178
|
+
ProtectedTask.add_member(:expiration_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "expirationDate"))
|
1179
|
+
ProtectedTask.struct_class = Types::ProtectedTask
|
1180
|
+
|
1181
|
+
ProtectedTasks.member = Shapes::ShapeRef.new(shape: ProtectedTask)
|
1182
|
+
|
1162
1183
|
ProxyConfiguration.add_member(:type, Shapes::ShapeRef.new(shape: ProxyConfigurationType, location_name: "type"))
|
1163
1184
|
ProxyConfiguration.add_member(:container_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "containerName"))
|
1164
1185
|
ProxyConfiguration.add_member(:properties, Shapes::ShapeRef.new(shape: ProxyConfigurationProperties, location_name: "properties"))
|
@@ -1667,6 +1688,16 @@ module Aws::ECS
|
|
1667
1688
|
UpdateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
|
1668
1689
|
UpdateServiceResponse.struct_class = Types::UpdateServiceResponse
|
1669
1690
|
|
1691
|
+
UpdateTaskProtectionRequest.add_member(:cluster, Shapes::ShapeRef.new(shape: String, required: true, location_name: "cluster"))
|
1692
|
+
UpdateTaskProtectionRequest.add_member(:tasks, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "tasks"))
|
1693
|
+
UpdateTaskProtectionRequest.add_member(:protection_enabled, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "protectionEnabled"))
|
1694
|
+
UpdateTaskProtectionRequest.add_member(:expires_in_minutes, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "expiresInMinutes"))
|
1695
|
+
UpdateTaskProtectionRequest.struct_class = Types::UpdateTaskProtectionRequest
|
1696
|
+
|
1697
|
+
UpdateTaskProtectionResponse.add_member(:protected_tasks, Shapes::ShapeRef.new(shape: ProtectedTasks, location_name: "protectedTasks"))
|
1698
|
+
UpdateTaskProtectionResponse.add_member(:failures, Shapes::ShapeRef.new(shape: Failures, location_name: "failures"))
|
1699
|
+
UpdateTaskProtectionResponse.struct_class = Types::UpdateTaskProtectionResponse
|
1700
|
+
|
1670
1701
|
UpdateTaskSetRequest.add_member(:cluster, Shapes::ShapeRef.new(shape: String, required: true, location_name: "cluster"))
|
1671
1702
|
UpdateTaskSetRequest.add_member(:service, Shapes::ShapeRef.new(shape: String, required: true, location_name: "service"))
|
1672
1703
|
UpdateTaskSetRequest.add_member(:task_set, Shapes::ShapeRef.new(shape: String, required: true, location_name: "taskSet"))
|
@@ -1984,6 +2015,21 @@ module Aws::ECS
|
|
1984
2015
|
o.errors << Shapes::ShapeRef.new(shape: TargetNotConnectedException)
|
1985
2016
|
end)
|
1986
2017
|
|
2018
|
+
api.add_operation(:get_task_protection, Seahorse::Model::Operation.new.tap do |o|
|
2019
|
+
o.name = "GetTaskProtection"
|
2020
|
+
o.http_method = "POST"
|
2021
|
+
o.http_request_uri = "/"
|
2022
|
+
o.input = Shapes::ShapeRef.new(shape: GetTaskProtectionRequest)
|
2023
|
+
o.output = Shapes::ShapeRef.new(shape: GetTaskProtectionResponse)
|
2024
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
2025
|
+
o.errors << Shapes::ShapeRef.new(shape: ClientException)
|
2026
|
+
o.errors << Shapes::ShapeRef.new(shape: ClusterNotFoundException)
|
2027
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
2028
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
2029
|
+
o.errors << Shapes::ShapeRef.new(shape: ServerException)
|
2030
|
+
o.errors << Shapes::ShapeRef.new(shape: UnsupportedFeatureException)
|
2031
|
+
end)
|
2032
|
+
|
1987
2033
|
api.add_operation(:list_account_settings, Seahorse::Model::Operation.new.tap do |o|
|
1988
2034
|
o.name = "ListAccountSettings"
|
1989
2035
|
o.http_method = "POST"
|
@@ -2403,6 +2449,21 @@ module Aws::ECS
|
|
2403
2449
|
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
2404
2450
|
end)
|
2405
2451
|
|
2452
|
+
api.add_operation(:update_task_protection, Seahorse::Model::Operation.new.tap do |o|
|
2453
|
+
o.name = "UpdateTaskProtection"
|
2454
|
+
o.http_method = "POST"
|
2455
|
+
o.http_request_uri = "/"
|
2456
|
+
o.input = Shapes::ShapeRef.new(shape: UpdateTaskProtectionRequest)
|
2457
|
+
o.output = Shapes::ShapeRef.new(shape: UpdateTaskProtectionResponse)
|
2458
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
2459
|
+
o.errors << Shapes::ShapeRef.new(shape: ClientException)
|
2460
|
+
o.errors << Shapes::ShapeRef.new(shape: ClusterNotFoundException)
|
2461
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
|
2462
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
2463
|
+
o.errors << Shapes::ShapeRef.new(shape: ServerException)
|
2464
|
+
o.errors << Shapes::ShapeRef.new(shape: UnsupportedFeatureException)
|
2465
|
+
end)
|
2466
|
+
|
2406
2467
|
api.add_operation(:update_task_set, Seahorse::Model::Operation.new.tap do |o|
|
2407
2468
|
o.name = "UpdateTaskSet"
|
2408
2469
|
o.http_method = "POST"
|
@@ -305,6 +305,20 @@ module Aws::ECS
|
|
305
305
|
end
|
306
306
|
end
|
307
307
|
|
308
|
+
class GetTaskProtection
|
309
|
+
def self.build(context)
|
310
|
+
unless context.config.regional_endpoint
|
311
|
+
endpoint = context.config.endpoint.to_s
|
312
|
+
end
|
313
|
+
Aws::ECS::EndpointParameters.new(
|
314
|
+
region: context.config.region,
|
315
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
316
|
+
use_fips: context.config.use_fips_endpoint,
|
317
|
+
endpoint: endpoint,
|
318
|
+
)
|
319
|
+
end
|
320
|
+
end
|
321
|
+
|
308
322
|
class ListAccountSettings
|
309
323
|
def self.build(context)
|
310
324
|
unless context.config.regional_endpoint
|
@@ -725,6 +739,20 @@ module Aws::ECS
|
|
725
739
|
end
|
726
740
|
end
|
727
741
|
|
742
|
+
class UpdateTaskProtection
|
743
|
+
def self.build(context)
|
744
|
+
unless context.config.regional_endpoint
|
745
|
+
endpoint = context.config.endpoint.to_s
|
746
|
+
end
|
747
|
+
Aws::ECS::EndpointParameters.new(
|
748
|
+
region: context.config.region,
|
749
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
750
|
+
use_fips: context.config.use_fips_endpoint,
|
751
|
+
endpoint: endpoint,
|
752
|
+
)
|
753
|
+
end
|
754
|
+
end
|
755
|
+
|
728
756
|
class UpdateTaskSet
|
729
757
|
def self.build(context)
|
730
758
|
unless context.config.regional_endpoint
|
@@ -98,6 +98,8 @@ module Aws::ECS
|
|
98
98
|
Aws::ECS::Endpoints::DiscoverPollEndpoint.build(context)
|
99
99
|
when :execute_command
|
100
100
|
Aws::ECS::Endpoints::ExecuteCommand.build(context)
|
101
|
+
when :get_task_protection
|
102
|
+
Aws::ECS::Endpoints::GetTaskProtection.build(context)
|
101
103
|
when :list_account_settings
|
102
104
|
Aws::ECS::Endpoints::ListAccountSettings.build(context)
|
103
105
|
when :list_attributes
|
@@ -158,6 +160,8 @@ module Aws::ECS
|
|
158
160
|
Aws::ECS::Endpoints::UpdateService.build(context)
|
159
161
|
when :update_service_primary_task_set
|
160
162
|
Aws::ECS::Endpoints::UpdateServicePrimaryTaskSet.build(context)
|
163
|
+
when :update_task_protection
|
164
|
+
Aws::ECS::Endpoints::UpdateTaskProtection.build(context)
|
161
165
|
when :update_task_set
|
162
166
|
Aws::ECS::Endpoints::UpdateTaskSet.build(context)
|
163
167
|
end
|
data/lib/aws-sdk-ecs/types.rb
CHANGED
@@ -5346,6 +5346,58 @@ module Aws::ECS
|
|
5346
5346
|
include Aws::Structure
|
5347
5347
|
end
|
5348
5348
|
|
5349
|
+
# @note When making an API call, you may pass GetTaskProtectionRequest
|
5350
|
+
# data as a hash:
|
5351
|
+
#
|
5352
|
+
# {
|
5353
|
+
# cluster: "String", # required
|
5354
|
+
# tasks: ["String"],
|
5355
|
+
# }
|
5356
|
+
#
|
5357
|
+
# @!attribute [rw] cluster
|
5358
|
+
# The short name or full Amazon Resource Name (ARN) of the cluster
|
5359
|
+
# that hosts the service that the task sets exist in.
|
5360
|
+
# @return [String]
|
5361
|
+
#
|
5362
|
+
# @!attribute [rw] tasks
|
5363
|
+
# A list of up to 100 task IDs or full ARN entries.
|
5364
|
+
# @return [Array<String>]
|
5365
|
+
#
|
5366
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/GetTaskProtectionRequest AWS API Documentation
|
5367
|
+
#
|
5368
|
+
class GetTaskProtectionRequest < Struct.new(
|
5369
|
+
:cluster,
|
5370
|
+
:tasks)
|
5371
|
+
SENSITIVE = []
|
5372
|
+
include Aws::Structure
|
5373
|
+
end
|
5374
|
+
|
5375
|
+
# @!attribute [rw] protected_tasks
|
5376
|
+
# A list of tasks with the following information.
|
5377
|
+
#
|
5378
|
+
# * `taskArn`\: The task ARN.
|
5379
|
+
#
|
5380
|
+
# * `protectionEnabled`\: The protection status of the task. If
|
5381
|
+
# scale-in protection is enabled for a task, the value is `true`.
|
5382
|
+
# Otherwise, it is `false`.
|
5383
|
+
#
|
5384
|
+
# * `expirationDate`\: The epoch time when protection for the task
|
5385
|
+
# will expire.
|
5386
|
+
# @return [Array<Types::ProtectedTask>]
|
5387
|
+
#
|
5388
|
+
# @!attribute [rw] failures
|
5389
|
+
# Any failures associated with the call.
|
5390
|
+
# @return [Array<Types::Failure>]
|
5391
|
+
#
|
5392
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/GetTaskProtectionResponse AWS API Documentation
|
5393
|
+
#
|
5394
|
+
class GetTaskProtectionResponse < Struct.new(
|
5395
|
+
:protected_tasks,
|
5396
|
+
:failures)
|
5397
|
+
SENSITIVE = []
|
5398
|
+
include Aws::Structure
|
5399
|
+
end
|
5400
|
+
|
5349
5401
|
# An object representing a container health check. Health check
|
5350
5402
|
# parameters that are specified in a container definition override any
|
5351
5403
|
# Docker health checks that exist in the container image (such as those
|
@@ -7470,6 +7522,33 @@ module Aws::ECS
|
|
7470
7522
|
include Aws::Structure
|
7471
7523
|
end
|
7472
7524
|
|
7525
|
+
# An object representing the protection status details for a task. You
|
7526
|
+
# can set the protection status with the UpdateTaskProtection API and
|
7527
|
+
# get the status of tasks with the GetTaskProtection API.
|
7528
|
+
#
|
7529
|
+
# @!attribute [rw] task_arn
|
7530
|
+
# The task ARN.
|
7531
|
+
# @return [String]
|
7532
|
+
#
|
7533
|
+
# @!attribute [rw] protection_enabled
|
7534
|
+
# The protection status of the task. If scale-in protection is enabled
|
7535
|
+
# for a task, the value is `true`. Otherwise, it is `false`.
|
7536
|
+
# @return [Boolean]
|
7537
|
+
#
|
7538
|
+
# @!attribute [rw] expiration_date
|
7539
|
+
# The epoch time when protection for the task will expire.
|
7540
|
+
# @return [Time]
|
7541
|
+
#
|
7542
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ProtectedTask AWS API Documentation
|
7543
|
+
#
|
7544
|
+
class ProtectedTask < Struct.new(
|
7545
|
+
:task_arn,
|
7546
|
+
:protection_enabled,
|
7547
|
+
:expiration_date)
|
7548
|
+
SENSITIVE = []
|
7549
|
+
include Aws::Structure
|
7550
|
+
end
|
7551
|
+
|
7473
7552
|
# The configuration details for the App Mesh proxy.
|
7474
7553
|
#
|
7475
7554
|
# For tasks that use the EC2 launch type, the container instances
|
@@ -12310,6 +12389,79 @@ module Aws::ECS
|
|
12310
12389
|
include Aws::Structure
|
12311
12390
|
end
|
12312
12391
|
|
12392
|
+
# @note When making an API call, you may pass UpdateTaskProtectionRequest
|
12393
|
+
# data as a hash:
|
12394
|
+
#
|
12395
|
+
# {
|
12396
|
+
# cluster: "String", # required
|
12397
|
+
# tasks: ["String"], # required
|
12398
|
+
# protection_enabled: false, # required
|
12399
|
+
# expires_in_minutes: 1,
|
12400
|
+
# }
|
12401
|
+
#
|
12402
|
+
# @!attribute [rw] cluster
|
12403
|
+
# The short name or full Amazon Resource Name (ARN) of the cluster
|
12404
|
+
# that hosts the service that the task sets exist in.
|
12405
|
+
# @return [String]
|
12406
|
+
#
|
12407
|
+
# @!attribute [rw] tasks
|
12408
|
+
# A list of up to 10 task IDs or full ARN entries.
|
12409
|
+
# @return [Array<String>]
|
12410
|
+
#
|
12411
|
+
# @!attribute [rw] protection_enabled
|
12412
|
+
# Specify `true` to mark a task for protection and `false` to unset
|
12413
|
+
# protection, making it eligible for termination.
|
12414
|
+
# @return [Boolean]
|
12415
|
+
#
|
12416
|
+
# @!attribute [rw] expires_in_minutes
|
12417
|
+
# If you set `protectionEnabled` to `true`, you can specify the
|
12418
|
+
# duration for task protection in minutes. You can specify a value
|
12419
|
+
# from 1 minute to up to 2,880 minutes (48 hours). During this time,
|
12420
|
+
# your task will not be terminated by scale-in events from Service
|
12421
|
+
# Auto Scaling or deployments. After this time period lapses,
|
12422
|
+
# `protectionEnabled` will be reset to `false`.
|
12423
|
+
#
|
12424
|
+
# If you don’t specify the time, then the task is automatically
|
12425
|
+
# protected for 120 minutes (2 hours).
|
12426
|
+
# @return [Integer]
|
12427
|
+
#
|
12428
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateTaskProtectionRequest AWS API Documentation
|
12429
|
+
#
|
12430
|
+
class UpdateTaskProtectionRequest < Struct.new(
|
12431
|
+
:cluster,
|
12432
|
+
:tasks,
|
12433
|
+
:protection_enabled,
|
12434
|
+
:expires_in_minutes)
|
12435
|
+
SENSITIVE = []
|
12436
|
+
include Aws::Structure
|
12437
|
+
end
|
12438
|
+
|
12439
|
+
# @!attribute [rw] protected_tasks
|
12440
|
+
# A list of tasks with the following information.
|
12441
|
+
#
|
12442
|
+
# * `taskArn`\: The task ARN.
|
12443
|
+
#
|
12444
|
+
# * `protectionEnabled`\: The protection status of the task. If
|
12445
|
+
# scale-in protection is enabled for a task, the value is `true`.
|
12446
|
+
# Otherwise, it is `false`.
|
12447
|
+
#
|
12448
|
+
# * `expirationDate`\: The epoch time when protection for the task
|
12449
|
+
# will expire.
|
12450
|
+
# @return [Array<Types::ProtectedTask>]
|
12451
|
+
#
|
12452
|
+
# @!attribute [rw] failures
|
12453
|
+
# Any failures associated with the call.
|
12454
|
+
# @return [Array<Types::Failure>]
|
12455
|
+
#
|
12456
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateTaskProtectionResponse AWS API Documentation
|
12457
|
+
#
|
12458
|
+
class UpdateTaskProtectionResponse < Struct.new(
|
12459
|
+
:protected_tasks,
|
12460
|
+
:failures)
|
12461
|
+
SENSITIVE = []
|
12462
|
+
include Aws::Structure
|
12463
|
+
end
|
12464
|
+
|
12313
12465
|
# @note When making an API call, you may pass UpdateTaskSetRequest
|
12314
12466
|
# data as a hash:
|
12315
12467
|
#
|
data/lib/aws-sdk-ecs.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-ecs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.105.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-10
|
11
|
+
date: 2022-11-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|