Skip to content

Conversation

@bentsku
Copy link
Contributor

@bentsku bentsku commented Sep 19, 2025

Motivation

This PR is part of a bigger initiative (see #13028) to implement support for the new Smithy Protocol smithy-rpc-v2-cbor, as well as the new Botocore multi-protocol support for single services (before, a service could only define one protocol)

This PR finishes to run and regenerate all snapshots for the CloudWatch test suite, now that we have everything working.

There's only one very minor fix regarding a return type, where CloudWatch specifies a string and we returned an int.

Other than this, nothing to note, and we now have the full CloudWatch suite running with multi-protocol 🚀 or almost, some of tests (metrics, and one integration with lambda) don't actually rely on CloudWatch or its protocol, so I didn't migrate them in order to reduce the runtime of the suite.

Changes

  • tiny fix in return type for GetMetricData
  • make most of the tests of the CloudWatch test suite multi-protocols and validate it with AWS
  • updated CloudWatch test suite to not use datetime.utcnow() and removed some warnings

@bentsku bentsku added this to the 4.9 milestone Sep 19, 2025
@bentsku bentsku self-assigned this Sep 19, 2025
@bentsku bentsku added aws:cloudwatch Amazon CloudWatch area: asf semver: minor Non-breaking changes which can be included in minor releases, but not in patch releases docs: skip Pull request does not require documentation changes labels Sep 19, 2025
@github-actions
Copy link

github-actions bot commented Sep 19, 2025

S3 Image Test Results (AMD64 / ARM64)

    2 files  ±0    2 suites  ±0   8m 17s ⏱️ -3s
  532 tests ±0  480 ✅ ±0   52 💤 ±0  0 ❌ ±0 
1 064 runs  ±0  960 ✅ ±0  104 💤 ±0  0 ❌ ±0 

Results for commit 115f927. ± Comparison against base commit d7d6848.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Sep 19, 2025

Test Results - Preflight, Unit

22 259 tests  ±0   20 518 ✅ ±0   15m 49s ⏱️ +18s
     1 suites ±0    1 741 💤 ±0 
     1 files   ±0        0 ❌ ±0 

Results for commit 59885b4. ± Comparison against base commit 4d7c543.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Sep 19, 2025

Test Results - Alternative Providers

180 tests    39 ✅  2m 32s ⏱️
  1 suites  141 💤
  1 files      0 ❌

Results for commit 59885b4.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Sep 19, 2025

Test Results (amd64) - Acceptance

7 tests   5 ✅  3m 24s ⏱️
1 suites  2 💤
1 files    0 ❌

Results for commit 59885b4.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Sep 20, 2025

Test Results (amd64) - Integration, Bootstrap

    5 files      5 suites   58m 13s ⏱️
1 197 tests 1 123 ✅ 74 💤 0 ❌
1 203 runs  1 123 ✅ 80 💤 0 ❌

Results for commit 59885b4.

♻️ This comment has been updated with latest results.

Base automatically changed from cloudwatch-multi-protocol-runs to main September 22, 2025 13:27
@bentsku bentsku changed the base branch from main to cloudwatch-multi-protocol-runs-fixes September 22, 2025 17:39
@bentsku bentsku force-pushed the cloudwatch-multi-protocol-runs-fixes branch from bb7ab45 to cc64c6a Compare September 22, 2025 19:26
@bentsku bentsku force-pushed the cloudwatch-multi-protocol-runs-2 branch from 115f927 to e992f0f Compare September 22, 2025 19:48
@bentsku bentsku changed the title ASF: fix empty Error message in Query Compatible service + run full CloudWatch suite ASF: validate full CloudWatch suite with multi-protocol Sep 22, 2025
@bentsku bentsku force-pushed the cloudwatch-multi-protocol-runs-2 branch 2 times, most recently from 1207e2f to dcdcdd6 Compare September 22, 2025 20:22
@github-actions
Copy link

github-actions bot commented Sep 22, 2025

LocalStack Community integration with Pro

    2 files      2 suites   43m 15s ⏱️
1 173 tests 1 097 ✅ 76 💤 0 ❌
1 175 runs  1 097 ✅ 78 💤 0 ❌

Results for commit 59885b4.

♻️ This comment has been updated with latest results.

@bentsku bentsku force-pushed the cloudwatch-multi-protocol-runs-2 branch 3 times, most recently from 0bd8183 to 17e0356 Compare September 23, 2025 10:00
Base automatically changed from cloudwatch-multi-protocol-runs-fixes to main September 23, 2025 11:41
@bentsku bentsku force-pushed the cloudwatch-multi-protocol-runs-2 branch from 17e0356 to 59885b4 Compare September 23, 2025 11:42
@bentsku bentsku marked this pull request as ready for review September 23, 2025 11:43
@bentsku bentsku requested a review from pinzon as a code owner September 23, 2025 11:43
Copy link
Member

@alexrashed alexrashed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A great last step for the cloudwatch multi protocol / cbor support! Absolutely great to see that all the tests are working just fine for all the protocols in parallel now! 🤩 :shipit: 🦸🏽

super().__init__("ValidationError", message, 400, True)


class InvalidParameterCombination(CommonServiceException):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

praise: Nice findings on the side! 🧹

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

praise: Wow, this file here has seen quite a cleanup! 💯 Lots of small fixes (datetime, but also smaller changes like timeout adjustments based on the target etc.). And of course the usage of the multi protocol cloudwatch client fixture, which basically executes the tests for all different protocols! Absolutely great that we have incredible test coverage on the new ASF multi-protocol capabilities and the CBOR parsers and serializers! 💯
Once CloudWatch has been moved towards JSON and CBOR, we might want to think about decreasing the amount of tests here a bit in order to decrease the test execution time again.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll create a ticket to keep track of the clean up, and will spend a bit of time selecting tests and removing the parametrization for tests that are somewhat duplicates on the parser/serializer level 😄 thanks for mentioning it!

Copy link
Member

@pinzon pinzon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome PR. Thank you for the clean up 👍

@bentsku bentsku merged commit 500619f into main Sep 23, 2025
45 checks passed
@bentsku bentsku deleted the cloudwatch-multi-protocol-runs-2 branch September 23, 2025 18:28
@alexrashed alexrashed added the notes: skip Pull request does not have to be mentioned in the release notes label Sep 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: asf aws:cloudwatch Amazon CloudWatch docs: skip Pull request does not require documentation changes notes: skip Pull request does not have to be mentioned in the release notes semver: minor Non-breaking changes which can be included in minor releases, but not in patch releases

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants