aws-sdk-autoscaling 1.84.0 → 1.86.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +13 -1
- data/VERSION +1 -1
- data/lib/aws-sdk-autoscaling/auto_scaling_group.rb +21 -16
- data/lib/aws-sdk-autoscaling/client.rb +159 -79
- data/lib/aws-sdk-autoscaling/client_api.rb +39 -0
- data/lib/aws-sdk-autoscaling/endpoint_parameters.rb +0 -3
- data/lib/aws-sdk-autoscaling/endpoint_provider.rb +41 -100
- data/lib/aws-sdk-autoscaling/endpoints.rb +14 -0
- data/lib/aws-sdk-autoscaling/errors.rb +16 -0
- data/lib/aws-sdk-autoscaling/plugins/endpoints.rb +2 -0
- data/lib/aws-sdk-autoscaling/resource.rb +17 -16
- data/lib/aws-sdk-autoscaling/types.rb +287 -102
- data/lib/aws-sdk-autoscaling.rb +1 -1
- metadata +2 -2
@@ -9,108 +9,49 @@
|
|
9
9
|
|
10
10
|
module Aws::AutoScaling
|
11
11
|
class EndpointProvider
|
12
|
-
def
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
12
|
+
def resolve_endpoint(parameters)
|
13
|
+
region = parameters.region
|
14
|
+
use_dual_stack = parameters.use_dual_stack
|
15
|
+
use_fips = parameters.use_fips
|
16
|
+
endpoint = parameters.endpoint
|
17
|
+
if Aws::Endpoints::Matchers.set?(endpoint)
|
18
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
19
|
+
raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
|
20
|
+
end
|
21
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
22
|
+
raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
|
23
|
+
end
|
24
|
+
return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
|
21
25
|
end
|
22
|
-
|
23
|
-
|
26
|
+
if Aws::Endpoints::Matchers.set?(region)
|
27
|
+
if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
|
28
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
29
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
30
|
+
return Aws::Endpoints::Endpoint.new(url: "https://autoscaling-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
31
|
+
end
|
32
|
+
raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
|
33
|
+
end
|
34
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
35
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
|
36
|
+
if Aws::Endpoints::Matchers.string_equals?("aws-us-gov", Aws::Endpoints::Matchers.attr(partition_result, "name"))
|
37
|
+
return Aws::Endpoints::Endpoint.new(url: "https://autoscaling.#{region}.amazonaws.com", headers: {}, properties: {})
|
38
|
+
end
|
39
|
+
return Aws::Endpoints::Endpoint.new(url: "https://autoscaling-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
40
|
+
end
|
41
|
+
raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
|
42
|
+
end
|
43
|
+
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
44
|
+
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
45
|
+
return Aws::Endpoints::Endpoint.new(url: "https://autoscaling.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
46
|
+
end
|
47
|
+
raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
|
48
|
+
end
|
49
|
+
return Aws::Endpoints::Endpoint.new(url: "https://autoscaling.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
50
|
+
end
|
51
|
+
end
|
52
|
+
raise ArgumentError, "Invalid Configuration: Missing Region"
|
53
|
+
raise ArgumentError, 'No endpoint could be resolved'
|
24
54
|
|
25
|
-
def resolve_endpoint(parameters)
|
26
|
-
@provider.resolve_endpoint(parameters)
|
27
55
|
end
|
28
|
-
|
29
|
-
# @api private
|
30
|
-
RULES = <<-JSON
|
31
|
-
eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
|
32
|
-
bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOnRydWUsImRvY3VtZW50
|
33
|
-
YXRpb24iOiJUaGUgQVdTIHJlZ2lvbiB1c2VkIHRvIGRpc3BhdGNoIHRoZSBy
|
34
|
-
ZXF1ZXN0LiIsInR5cGUiOiJTdHJpbmcifSwiVXNlRHVhbFN0YWNrIjp7ImJ1
|
35
|
-
aWx0SW4iOiJBV1M6OlVzZUR1YWxTdGFjayIsInJlcXVpcmVkIjp0cnVlLCJk
|
36
|
-
ZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRhdGlvbiI6IldoZW4gdHJ1ZSwgdXNl
|
37
|
-
IHRoZSBkdWFsLXN0YWNrIGVuZHBvaW50LiBJZiB0aGUgY29uZmlndXJlZCBl
|
38
|
-
bmRwb2ludCBkb2VzIG5vdCBzdXBwb3J0IGR1YWwtc3RhY2ssIGRpc3BhdGNo
|
39
|
-
aW5nIHRoZSByZXF1ZXN0IE1BWSByZXR1cm4gYW4gZXJyb3IuIiwidHlwZSI6
|
40
|
-
IkJvb2xlYW4ifSwiVXNlRklQUyI6eyJidWlsdEluIjoiQVdTOjpVc2VGSVBT
|
41
|
-
IiwicmVxdWlyZWQiOnRydWUsImRlZmF1bHQiOmZhbHNlLCJkb2N1bWVudGF0
|
42
|
-
aW9uIjoiV2hlbiB0cnVlLCBzZW5kIHRoaXMgcmVxdWVzdCB0byB0aGUgRklQ
|
43
|
-
Uy1jb21wbGlhbnQgcmVnaW9uYWwgZW5kcG9pbnQuIElmIHRoZSBjb25maWd1
|
44
|
-
cmVkIGVuZHBvaW50IGRvZXMgbm90IGhhdmUgYSBGSVBTIGNvbXBsaWFudCBl
|
45
|
-
bmRwb2ludCwgZGlzcGF0Y2hpbmcgdGhlIHJlcXVlc3Qgd2lsbCByZXR1cm4g
|
46
|
-
YW4gZXJyb3IuIiwidHlwZSI6IkJvb2xlYW4ifSwiRW5kcG9pbnQiOnsiYnVp
|
47
|
-
bHRJbiI6IlNESzo6RW5kcG9pbnQiLCJyZXF1aXJlZCI6ZmFsc2UsImRvY3Vt
|
48
|
-
ZW50YXRpb24iOiJPdmVycmlkZSB0aGUgZW5kcG9pbnQgdXNlZCB0byBzZW5k
|
49
|
-
IHRoaXMgcmVxdWVzdCIsInR5cGUiOiJTdHJpbmcifX0sInJ1bGVzIjpbeyJj
|
50
|
-
b25kaXRpb25zIjpbeyJmbiI6ImF3cy5wYXJ0aXRpb24iLCJhcmd2IjpbeyJy
|
51
|
-
ZWYiOiJSZWdpb24ifV0sImFzc2lnbiI6IlBhcnRpdGlvblJlc3VsdCJ9XSwi
|
52
|
-
dHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W3siZm4iOiJp
|
53
|
-
c1NldCIsImFyZ3YiOlt7InJlZiI6IkVuZHBvaW50In1dfV0sInR5cGUiOiJ0
|
54
|
-
cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVx
|
55
|
-
dWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJlcnJv
|
56
|
-
ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRklQUyBhbmQgY3VzdG9tIGVu
|
57
|
-
ZHBvaW50IGFyZSBub3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJj
|
58
|
-
b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
|
59
|
-
aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoi
|
60
|
-
VXNlRHVhbFN0YWNrIn0sdHJ1ZV19XSwiZXJyb3IiOiJJbnZhbGlkIENvbmZp
|
61
|
-
Z3VyYXRpb246IER1YWxzdGFjayBhbmQgY3VzdG9tIGVuZHBvaW50IGFyZSBu
|
62
|
-
b3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJjb25kaXRpb25zIjpb
|
63
|
-
XSwiZW5kcG9pbnQiOnsidXJsIjp7InJlZiI6IkVuZHBvaW50In0sInByb3Bl
|
64
|
-
cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1d
|
65
|
-
fSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3Yi
|
66
|
-
Olt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX0seyJmbiI6ImJvb2xlYW5FcXVh
|
67
|
-
bHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0
|
68
|
-
eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJv
|
69
|
-
b2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFy
|
70
|
-
Z3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMi
|
71
|
-
XX1dfSx7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4i
|
72
|
-
OiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0s
|
73
|
-
InN1cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVz
|
74
|
-
IjpbeyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6
|
75
|
-
Ly9hdXRvc2NhbGluZy1maXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQj
|
76
|
-
ZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJz
|
77
|
-
Ijp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwi
|
78
|
-
ZXJyb3IiOiJGSVBTIGFuZCBEdWFsU3RhY2sgYXJlIGVuYWJsZWQsIGJ1dCB0
|
79
|
-
aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0IG9uZSBvciBib3RoIiwi
|
80
|
-
dHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVh
|
81
|
-
bkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJ0
|
82
|
-
eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJv
|
83
|
-
b2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFy
|
84
|
-
Z3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMi
|
85
|
-
XX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltd
|
86
|
-
LCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6
|
87
|
-
InN0cmluZ0VxdWFscyIsImFyZ3YiOlsiYXdzLXVzLWdvdiIseyJmbiI6Imdl
|
88
|
-
dEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwibmFt
|
89
|
-
ZSJdfV19XSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hdXRvc2NhbGlu
|
90
|
-
Zy57UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9w
|
91
|
-
ZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifSx7
|
92
|
-
ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2F1
|
93
|
-
dG9zY2FsaW5nLWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNT
|
94
|
-
dWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6
|
95
|
-
ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoiRklQ
|
96
|
-
UyBpcyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBw
|
97
|
-
b3J0IEZJUFMiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W3si
|
98
|
-
Zm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVhbFN0
|
99
|
-
YWNrIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
|
100
|
-
aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJm
|
101
|
-
biI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQi
|
102
|
-
fSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVs
|
103
|
-
ZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRw
|
104
|
-
czovL2F1dG9zY2FsaW5nLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVh
|
105
|
-
bFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7
|
106
|
-
fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJy
|
107
|
-
b3IiOiJEdWFsU3RhY2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24g
|
108
|
-
ZG9lcyBub3Qgc3VwcG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19
|
109
|
-
LHsiY29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8v
|
110
|
-
YXV0b3NjYWxpbmcue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZm
|
111
|
-
aXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVu
|
112
|
-
ZHBvaW50In1dfV19
|
113
|
-
|
114
|
-
JSON
|
115
56
|
end
|
116
57
|
end
|
@@ -809,6 +809,20 @@ module Aws::AutoScaling
|
|
809
809
|
end
|
810
810
|
end
|
811
811
|
|
812
|
+
class RollbackInstanceRefresh
|
813
|
+
def self.build(context)
|
814
|
+
unless context.config.regional_endpoint
|
815
|
+
endpoint = context.config.endpoint.to_s
|
816
|
+
end
|
817
|
+
Aws::AutoScaling::EndpointParameters.new(
|
818
|
+
region: context.config.region,
|
819
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
820
|
+
use_fips: context.config.use_fips_endpoint,
|
821
|
+
endpoint: endpoint,
|
822
|
+
)
|
823
|
+
end
|
824
|
+
end
|
825
|
+
|
812
826
|
class SetDesiredCapacity
|
813
827
|
def self.build(context)
|
814
828
|
unless context.config.regional_endpoint
|
@@ -31,6 +31,7 @@ module Aws::AutoScaling
|
|
31
31
|
# * {AlreadyExistsFault}
|
32
32
|
# * {InstanceRefreshInProgressFault}
|
33
33
|
# * {InvalidNextToken}
|
34
|
+
# * {IrreversibleInstanceRefreshFault}
|
34
35
|
# * {LimitExceededFault}
|
35
36
|
# * {ResourceContentionFault}
|
36
37
|
# * {ResourceInUseFault}
|
@@ -103,6 +104,21 @@ module Aws::AutoScaling
|
|
103
104
|
end
|
104
105
|
end
|
105
106
|
|
107
|
+
class IrreversibleInstanceRefreshFault < ServiceError
|
108
|
+
|
109
|
+
# @param [Seahorse::Client::RequestContext] context
|
110
|
+
# @param [String] message
|
111
|
+
# @param [Aws::AutoScaling::Types::IrreversibleInstanceRefreshFault] data
|
112
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
113
|
+
super(context, message, data)
|
114
|
+
end
|
115
|
+
|
116
|
+
# @return [String]
|
117
|
+
def message
|
118
|
+
@message || @data[:message]
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
106
122
|
class LimitExceededFault < ServiceError
|
107
123
|
|
108
124
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -170,6 +170,8 @@ module Aws::AutoScaling
|
|
170
170
|
Aws::AutoScaling::Endpoints::RecordLifecycleActionHeartbeat.build(context)
|
171
171
|
when :resume_processes
|
172
172
|
Aws::AutoScaling::Endpoints::ResumeProcesses.build(context)
|
173
|
+
when :rollback_instance_refresh
|
174
|
+
Aws::AutoScaling::Endpoints::RollbackInstanceRefresh.build(context)
|
173
175
|
when :set_desired_capacity
|
174
176
|
Aws::AutoScaling::Endpoints::SetDesiredCapacity.build(context)
|
175
177
|
when :set_instance_health
|
@@ -421,24 +421,25 @@ module Aws::AutoScaling
|
|
421
421
|
#
|
422
422
|
# [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
|
423
423
|
# @option options [Integer] :default_instance_warmup
|
424
|
-
# The amount of time, in seconds, until a
|
425
|
-
#
|
426
|
-
#
|
427
|
-
#
|
428
|
-
#
|
429
|
-
#
|
430
|
-
#
|
431
|
-
#
|
432
|
-
#
|
433
|
-
#
|
434
|
-
#
|
435
|
-
#
|
436
|
-
#
|
437
|
-
#
|
438
|
-
#
|
424
|
+
# The amount of time, in seconds, until a new instance is considered to
|
425
|
+
# have finished initializing and resource consumption to become stable
|
426
|
+
# after it enters the `InService` state.
|
427
|
+
#
|
428
|
+
# During an instance refresh, Amazon EC2 Auto Scaling waits for the
|
429
|
+
# warm-up period after it replaces an instance before it moves on to
|
430
|
+
# replacing the next instance. Amazon EC2 Auto Scaling also waits for
|
431
|
+
# the warm-up period before aggregating the metrics for new instances
|
432
|
+
# with existing instances in the Amazon CloudWatch metrics that are used
|
433
|
+
# for scaling, resulting in more reliable usage data. For more
|
434
|
+
# information, see [Set the default instance warmup for an Auto Scaling
|
435
|
+
# group][1] in the *Amazon EC2 Auto Scaling User Guide*.
|
436
|
+
#
|
437
|
+
# To manage various warm-up settings at the group level, we recommend
|
438
|
+
# that you set the default instance warmup, *even if it is set to 0
|
439
|
+
# seconds*. To remove a value that you previously set, include the
|
439
440
|
# property but specify `-1` for the value. However, we strongly
|
440
441
|
# recommend keeping the default instance warmup enabled by specifying a
|
441
|
-
#
|
442
|
+
# value of `0` or other nominal value.
|
442
443
|
#
|
443
444
|
# Default: None
|
444
445
|
#
|