Files
umbrel/packages
Luke Childs b7e92fcca4 Report app update preparation failures correctly
App update scripts could report success and install the new version's
manifest even when preparation failed. Their exit handlers captured an
earlier success status and reused it after errors or interruptions.

Remove those handlers from both update paths so failures and signals
reach the caller and the previous manifest stays installed when
preparation fails. Umbreld stops the update and clears its updating
state and progress through its existing error handling. Successful
preparation still publishes the new manifest for the remaining update
stages.

Files copied before a failure remain installed; this change does not add
rollback or recovery from broken installed files.

Add regression tests for exports and template errors, SIGINT/SIGTERM,
legacy image-pull failures, and successful preparation. The shell tests
run the real script with Docker stubbed. A lifecycle test verifies that
a preparation error prevents compose patching and image pulls and clears
update state and progress.
2026-09-17 03:01:53 +07:00
..