-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
add ignoreNullValues for AWS CloudWatch Scaler #5635
add ignoreNullValues for AWS CloudWatch Scaler #5635
Conversation
Signed-off-by: Rob Pickerill <[email protected]>
13c0fec
to
53ea3fd
Compare
Signed-off-by: Rob Pickerill <[email protected]>
Signed-off-by: Rob Pickerill <[email protected]>
495c201
to
8e41311
Compare
Signed-off-by: Rob Pickerill <[email protected]>
584eba6
to
b0d4e84
Compare
Signed-off-by: Rob Pickerill <[email protected]>
Signed-off-by: Rob Pickerill <[email protected]>
Signed-off-by: Rob Pickerill <[email protected]>
I added end to end tests here for both minMetricValue and errorWhenNullValues to cover off both scenarios. I need to tidy them up a little, which ill do over the next few days. |
53fac56
to
0ef98c5
Compare
Signed-off-by: Rob Pickerill <[email protected]>
0ef98c5
to
0b61f97
Compare
Signed-off-by: Rob Pickerill <[email protected]>
Signed-off-by: Rob Pickerill <[email protected]>
68a1c71
to
0dc9b77
Compare
...calers/aws/aws_cloudwatch_min_value_null_values/aws_cloudwatch_min_value_null_values_test.go
Outdated
Show resolved
Hide resolved
Signed-off-by: Rob Pickerill <[email protected]>
Signed-off-by: Rob Pickerill <[email protected]>
I was discussing with Jorge on slack to get the e2e tests re-ran, as the failures were upstream issues: https://kubernetes.slack.com/archives/C01JGDP8MB8/p1717129850310929?thread_ts=1715943304.582119&cid=C01JGDP8MB8 However, since then the changes for the validation have gone in, so let me fix up the conflicts here over the weekend, and then let's get e2e passing again on this branch |
Thanks! |
Signed-off-by: robpickerill <[email protected]>
731d45c
to
2e76a9b
Compare
Fixed conflicts, this needs another e2e test run |
/run-e2e aws |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@robpickerill there is also a problem in static checks
Fixed, all tests should pass now. I see e2e didn't run due to Azure cluster scaling actions failing, would it be easier for me to put the e2e tests in a different PR and unblock this PR? The unit tests here cover the error case for the scaler, but I wanted to add e2e to prove the backward compatibility for the change. Let me know what works best for you. |
Signed-off-by: robpickerill <[email protected]>
48ccb91
to
43a2c3f
Compare
/run-e2e aws |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
/run-e2e aws |
Thanks Jorge, need anything else to merge this? |
Signed-off-by: Rob Pickerill <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! ❤️
Please address the docs comment and we are ready
Thanks Jorge, fixed up the docs, and merged main into here and docs, should be good to go now - thanks again! |
/run-e2e aws |
* add errorWhenMetricValueEmpty Signed-off-by: Rob Pickerill <[email protected]> * fix golangci-lint Signed-off-by: Rob Pickerill <[email protected]> * improve error message for empty results Signed-off-by: Rob Pickerill <[email protected]> * add error when empty metric values to changelog Signed-off-by: Rob Pickerill <[email protected]> * rename errorWhenMetricValuesEmpty -> errorWhenNullValues Signed-off-by: Rob Pickerill <[email protected]> * use getParameterFromConfigV2 to read config for errorWhenNullValues Signed-off-by: Rob Pickerill <[email protected]> * add e2e for error state for cw, and improve e2e for min values for cw Signed-off-by: Rob Pickerill <[email protected]> * remove erroneous print statement Signed-off-by: Rob Pickerill <[email protected]> * remove unused vars Signed-off-by: Rob Pickerill <[email protected]> * rename errorWhenMetricValuesEmpty -> ignoreNullValues Signed-off-by: Rob Pickerill <[email protected]> * move towards shared package for e2e aws Signed-off-by: Rob Pickerill <[email protected]> * minMetricValue optionality based on ignoreNullValues Signed-off-by: Rob Pickerill <[email protected]> * fail fast Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * Update tests/scalers/aws/aws_cloudwatch_ignore_null_values_false/aws_cloudwatch_ignore_null_values_false_test.go Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * Apply suggestions from code review Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * fail fast Signed-off-by: Rob Pickerill <[email protected]> * fix broken new line Signed-off-by: Rob Pickerill <[email protected]> * fix broken new lines Signed-off-by: Rob Pickerill <[email protected]> * assert no scaling changes in e2e, and set false for required in minMetricValue Signed-off-by: robpickerill <[email protected]> * fix ci checks Signed-off-by: robpickerill <[email protected]> * Update tests/scalers/aws/aws_cloudwatch_min_metric_value/aws_cloudwatch_min_metric_value_test.go fix invalid check Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * fix merge conflicts Signed-off-by: robpickerill <[email protected]> * fix e2e package names Signed-off-by: robpickerill <[email protected]> --------- Signed-off-by: Rob Pickerill <[email protected]> Signed-off-by: robpickerill <[email protected]> Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Fira Curie <[email protected]>
* add errorWhenMetricValueEmpty Signed-off-by: Rob Pickerill <[email protected]> * fix golangci-lint Signed-off-by: Rob Pickerill <[email protected]> * improve error message for empty results Signed-off-by: Rob Pickerill <[email protected]> * add error when empty metric values to changelog Signed-off-by: Rob Pickerill <[email protected]> * rename errorWhenMetricValuesEmpty -> errorWhenNullValues Signed-off-by: Rob Pickerill <[email protected]> * use getParameterFromConfigV2 to read config for errorWhenNullValues Signed-off-by: Rob Pickerill <[email protected]> * add e2e for error state for cw, and improve e2e for min values for cw Signed-off-by: Rob Pickerill <[email protected]> * remove erroneous print statement Signed-off-by: Rob Pickerill <[email protected]> * remove unused vars Signed-off-by: Rob Pickerill <[email protected]> * rename errorWhenMetricValuesEmpty -> ignoreNullValues Signed-off-by: Rob Pickerill <[email protected]> * move towards shared package for e2e aws Signed-off-by: Rob Pickerill <[email protected]> * minMetricValue optionality based on ignoreNullValues Signed-off-by: Rob Pickerill <[email protected]> * fail fast Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * Update tests/scalers/aws/aws_cloudwatch_ignore_null_values_false/aws_cloudwatch_ignore_null_values_false_test.go Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * Apply suggestions from code review Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * fail fast Signed-off-by: Rob Pickerill <[email protected]> * fix broken new line Signed-off-by: Rob Pickerill <[email protected]> * fix broken new lines Signed-off-by: Rob Pickerill <[email protected]> * assert no scaling changes in e2e, and set false for required in minMetricValue Signed-off-by: robpickerill <[email protected]> * fix ci checks Signed-off-by: robpickerill <[email protected]> * Update tests/scalers/aws/aws_cloudwatch_min_metric_value/aws_cloudwatch_min_metric_value_test.go fix invalid check Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Rob Pickerill <[email protected]> * fix merge conflicts Signed-off-by: robpickerill <[email protected]> * fix e2e package names Signed-off-by: robpickerill <[email protected]> --------- Signed-off-by: Rob Pickerill <[email protected]> Signed-off-by: robpickerill <[email protected]> Co-authored-by: Jorge Turrado Ferrero <[email protected]> Signed-off-by: Jorge Turrado <[email protected]>
This PR adds support for erroring the AWS Cloudwatch Scaler when the GetMetricData call returns an empty set of metrics, resulting in no scale-changing behaviour when no custom metrics are available during the Cloudwatch query window.
Checklist
Fixes #5352
Relates to: