Skip to content

fix: stage Envoy downloads and only move verified installs into place - #521

Open
CodePrometheus wants to merge 1 commit into
tetratelabs:masterfrom
CodePrometheus:fix/atomic-envoy-install
Open

fix: stage Envoy downloads and only move verified installs into place#521
CodePrometheus wants to merge 1 commit into
tetratelabs:masterfrom
CodePrometheus:fix/atomic-envoy-install

Conversation

@CodePrometheus

Copy link
Copy Markdown
Contributor

If a download is interrupted — a dropped connection, Ctrl-C, a full disk — func-e leaves a partial Envoy binary at the install path, because the tarball is unarchived directly there and the SHA-256 sum is only checked afterwards.
Every later run stats that path, reports " is already downloaded", and hands the truncated binary to the caller, which fails at exec time with no indication that the install is the problem. There is no way to recover short of manually deleting the version directory, since func-e never re-downloads a version it believes it has.

Downloads now unarchive into a staging directory next to the install path and are moved into place only after the checksum matches, so the install path either holds a complete install or nothing at all. A failed download is cleaned up and the next run downloads again.

@CodePrometheus
CodePrometheus requested a review from a team as a code owner August 2, 2026 08:55
Signed-off-by: Zixin Zhou <zhouzixin@apache.org>
@CodePrometheus
CodePrometheus force-pushed the fix/atomic-envoy-install branch from 5d66465 to f7bf7f4 Compare August 2, 2026 09:04
@CodePrometheus

Copy link
Copy Markdown
Contributor Author

Gentle ping~ @codefromthecrypt mind taking a look when you have time?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant