-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
questions regarding autoscaling waiter conditions #1109
Comments
I'm going to check if there is any unexpected behavior from the waiters as written. I do know that some matcher types end up behaving in de facto the same manner, so it may not be an issue (even if not semantically optimal). I don't recall off the top of my head (returning from vacation too) which matchers are which, so I'll be looking at differences in behavior if any. |
This is a good catch - the waiter will likely just cycle on false for a scalar with a pathAll matcher. I'm already going to be touching Auto Scaling resources to fix another bug, so I will test and push the fix for this - no need for a PR, unless it's already done and tested. |
I don't have a work-in-progress PR, so please do. |
I've written a fix for this that will work in the case of requesting exactly one Auto Scaling group. Unfortunately, due to waiter/JMESPath limitations, if you have multiple Auto Scaling groups in a single request, something like You can avoid this by always specifying a single group in your waiter requests. |
👏 |
I was about to implement autoscaling waiters for aws-cli and found that you've recently implemented it.
I have questions about specifications of autoscaling waiters, more specifically,
acceptors
conditions for success cases.(I've just copied ruby-sdk's autoscaling waiter JSON to aws-cli source tree and tested from aws-cli, not from ruby-sdk.)
GroupExists API
condition
"length(AutoScalingGroups)"
returns a scalar value and matherpathAll
expects list arguments.I think this should be
Same for
GroupNotExists
API.GroupInService API
condition
Success condition is that ASG has at least
MinSize
InService
instances.AutoScalingGroups[].[length(Instances[?LifecycleState=='InService']) >= MinSize][]
returns a list andcontains(AutoScaling ...)
returns a boolean value, but matherpathAll
expects list arguments.I think this should be
or
My revised autoscaling waiter.json and a
DescribeAutoScalingGroups
sample output file can be found here https://gist.github.com/quiver/fca4dc97d7d5be04cf79#file-waiters-2-json.Or am I missing something?
The text was updated successfully, but these errors were encountered: