-
Notifications
You must be signed in to change notification settings - Fork 361
CI/CD fixes #994
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
CI/CD fixes #994
Conversation
@bnusunny this should fix one of the ci/cd failures. i'm not able to reproduce the clippy failure locally - mind re-triggering workflows so i can validate whether it remains an issue? EDIT: Nevermind, integ tests are running on my fork, so I can validate the clippy one there (still an issue). The integ test one though will need to run here to validate. |
@bnusunny clippy is happy on my branch now, and i'm pretty confident that the patch to the |
Hmm, build integration tests check failed because it tried to run integration tests and the integration test stack was not deployed. The build integratio tests check should not run integration tests. I need to take a deeper look at these GitHub Actions. |
Hmm, I tried to address that like so: But it doesn't seem to have kicked in. I'll poke around more this week. Looks like I can repro the issue in my own branch. The idea would be, we want to build the integration tests binary, but not execute the tests. |
…ant that models LambdaInvocation->LambdaEvent processing failures
@bnusunny the TIL you need:
rather than:
I've also confirmed that the tests are still running for other workflows that are using the |
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
📬 Issue #, if available:
n/a
✍️ Description of changes:
Build integration tests step failing its unit test
https://github.com/awslabs/aws-lambda-rust-runtime/actions/runs/14964429921/job/42031762957
For this one, we don't want to actually run the test during non-integ-test workflow runs, just build the package. Tweaking the workflow config to accomplish that.
Clippy failure due to large enum variant
https://github.com/jlizen/aws-lambda-rust-runtime/actions/runs/15074705748/job/42379333173
We have what is essentially a handrolled futures::future::MaybeDone in our runtime's tower service. We need this in order to model the case where we can't call the inner service at all because of a failure to process the lambda invocation into a lambda event, in which case the future is immediately ready, and then its output is fairly large since it is handing the caller a new http request to make to the runtime.
I think boxing is probably the right choice here, to avoid the error handling path bloating the happy path's variant to be 10x the size it needs to be. Most users would presumably prefer their happy path to be a bit more efficient at the cost of an extra allocation on an unhappy path that should be infrequent and will anyway fail the overall invocation (and possibly kill their runtime).
Technically
MaybeDone
would be slightly more efficient by saving us an Option, but it so trivial that it's not worth the refactor.🔏 By submitting this pull request
cargo +nightly fmt
.cargo clippy --fix
.