Skip to content
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

Retry composing bundle if it's modified during setup #2890

Merged

Conversation

vinistock
Copy link
Member

@vinistock vinistock commented Nov 20, 2024

Motivation

If someone switches branches while we're setting up the composed bundle and the switch results in gemfile/lockfile changes, we often fail to boot because the resulting bundle is invalid.

Implementation

I think we can reduce the number of failures by checking if the contents of the gemfile or lockfile have been changed after we finished running bundle install. If that's the case, we can re-build the composed bundle from scratch and retry a single time, which should be able to fix common issues.

Automated Tests

Added a test that verifies the new behaviour.

@vinistock vinistock added server This pull request should be included in the server gem's release notes bugfix This PR will fix an existing bug labels Nov 20, 2024 — with Graphite App
Copy link
Member Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@vinistock vinistock marked this pull request as ready for review November 20, 2024 21:58
@vinistock vinistock requested a review from a team as a code owner November 20, 2024 21:58
@vinistock vinistock merged commit 5a36d78 into main Nov 21, 2024
38 checks passed
@vinistock vinistock deleted the 11-20-retry_composing_bundle_if_it_s_modified_during_setup branch November 21, 2024 16:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix This PR will fix an existing bug server This pull request should be included in the server gem's release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants