Skip to content

Maintenance: run e2e tests in on bigger runner #3730

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

Closed
1 of 2 tasks
dreamorosi opened this issue Mar 17, 2025 · 3 comments · Fixed by #3737
Closed
1 of 2 tasks

Maintenance: run e2e tests in on bigger runner #3730

dreamorosi opened this issue Mar 17, 2025 · 3 comments · Fixed by #3737
Assignees
Labels
automation This item relates to automation completed This item is complete and has been merged/shipped internal PRs that introduce changes in governance, tech debt and chores (linting setup, baseline, etc.) tests PRs that add or change tests

Comments

@dreamorosi
Copy link
Contributor

Summary

Our e2e test suite is growing and is expected to grow even more as we add multiple features and utilities.

Currently we have ~35 parallel jobs that run in a chunks of 30 at the time. This means we're not effectively parallelizing as much as we could.

Additionally, we're starting to experience transient failures due to timeouts from CloudFormation due to the high number of operations resulting from dozens of stacks being deployed at once, since each job can have more than one stack in it.

Before investing in any specific optimization of our test suite, a potentially low hanging fruit would be to expand the test suite to run into multiple AWS regions rather than on a single one.

Why is this needed?

This way, the operations would be split into more regions thus lowering the chance of transient issues derived from timeouts.

Which area does this relate to?

Automation

Solution

Pick a region randomly between a set of available target regions and run the test for a job there.

Acknowledgment

Future readers

Please react with 👍 and your use case to help us understand customer demand.

@dreamorosi dreamorosi added automation This item relates to automation confirmed The scope is clear, ready for implementation internal PRs that introduce changes in governance, tech debt and chores (linting setup, baseline, etc.) tests PRs that add or change tests labels Mar 17, 2025
@dreamorosi dreamorosi self-assigned this Mar 17, 2025
@dreamorosi dreamorosi changed the title Maintenance: TITLE Maintenance: run e2e tests in multiple regions Mar 17, 2025
@dreamorosi dreamorosi moved this from Triage to Working on it in Powertools for AWS Lambda (TypeScript) Mar 17, 2025
@dreamorosi dreamorosi changed the title Maintenance: run e2e tests in multiple regions Maintenance: run e2e tests in on bigger runner Mar 18, 2025
@dreamorosi
Copy link
Contributor Author

After some investigation and help from @leandrodamascena we concluded that the timeouts are likely being caused by network/CPU congestion of the shared GitHub hosted runners we are using across the repo.

I have been doing tests with a dedicated hosted runner and the timeouts seem to be gone, as well as having a slight performance improvement in terms of runtime.

I'm doing more tests, and I am also likely dropping the idea of splitting tests across regions.

@github-project-automation github-project-automation bot moved this from Working on it to Coming soon in Powertools for AWS Lambda (TypeScript) Mar 19, 2025
Copy link
Contributor

⚠️ COMMENT VISIBILITY WARNING ⚠️

This issue is now closed. Please be mindful that future comments are hard for our team to see.

If you need more assistance, please either tag a team member or open a new issue that references this one.

If you wish to keep having a conversation with other community members under this issue feel free to do so.

@github-actions github-actions bot added pending-release This item has been merged and will be released soon and removed confirmed The scope is clear, ready for implementation labels Mar 19, 2025
Copy link
Contributor

This is now released under v2.17.0 version!

@github-actions github-actions bot added completed This item is complete and has been merged/shipped and removed pending-release This item has been merged and will be released soon labels Mar 25, 2025
@dreamorosi dreamorosi moved this from Coming soon to Shipped in Powertools for AWS Lambda (TypeScript) Mar 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automation This item relates to automation completed This item is complete and has been merged/shipped internal PRs that introduce changes in governance, tech debt and chores (linting setup, baseline, etc.) tests PRs that add or change tests
Projects
Development

Successfully merging a pull request may close this issue.

1 participant