From 45772ede3e63b1fffef47860e69f3e1b6d2f56cd Mon Sep 17 00:00:00 2001 From: Jonathan Lebon Date: Fri, 14 Apr 2023 12:11:05 -0400 Subject: lib/sysroot-deploy: Nuke `finalize-failure.stamp` on successful finalization In the unusual case where one is manually finalizing staged deployments, as can happen in testing, we expect a successful finalization to remove the failure stamp file. --- src/libostree/ostree-sysroot-deploy.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/libostree/ostree-sysroot-deploy.c b/src/libostree/ostree-sysroot-deploy.c index 5b126d89..d2056cdf 100644 --- a/src/libostree/ostree-sysroot-deploy.c +++ b/src/libostree/ostree-sysroot-deploy.c @@ -3573,6 +3573,13 @@ _ostree_sysroot_finalize_staged (OstreeSysroot *self, g_propagate_error (error, g_steal_pointer (&finalization_error)); return FALSE; } + else + { + /* we may have failed in a previous invocation on this boot, but we were + * rerun again (likely manually) and passed this time; nuke any stamp */ + if (!glnx_shutil_rm_rf_at (self->boot_fd, _OSTREE_FINALIZE_STAGED_FAILURE_PATH, cancellable, error)) + return FALSE; + } return TRUE; } -- cgit v1.2.1