diff options
author | Colin Walters <walters@verbum.org> | 2018-02-22 15:27:59 -0500 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2018-04-12 14:55:12 +0000 |
commit | eb506c759c666af2461f1ba3dda4e31ea49ebc41 (patch) | |
tree | ec78dcc19982e3b14545ad2b22902a85c9a7e4ef /src/libostree/ostree-deployment.c | |
parent | ff50495f67a95c9b2fef5f9b84bc91469a46eb27 (diff) | |
download | ostree-eb506c759c666af2461f1ba3dda4e31ea49ebc41.tar.gz |
Add concept of "staged" deployment
Add API to write a deployment state to `/run/ostree/staged-deployment`,
along with a systemd service which runs at shutdown time.
This is a big change to the ostree model for hosts,
but it closes a longstanding set of bugs; many, many people have
hit the "losing changes in /etc" problem. It also avoids
the other problem of racing with programs that modify `/etc`
such as LVM backups:
https://bugzilla.redhat.com/show_bug.cgi?id=1365297
We need this in particular to go to a full-on model for
automatically updated host systems where (like a dual-partition model)
everything is fully prepared and the reboot can be taken
asynchronously.
Closes: https://github.com/ostreedev/ostree/issues/545
Closes: #1503
Approved by: jlebon
Diffstat (limited to 'src/libostree/ostree-deployment.c')
-rw-r--r-- | src/libostree/ostree-deployment.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/libostree/ostree-deployment.c b/src/libostree/ostree-deployment.c index 75a5bd1d..820c2632 100644 --- a/src/libostree/ostree-deployment.c +++ b/src/libostree/ostree-deployment.c @@ -339,3 +339,16 @@ ostree_deployment_is_pinned (OstreeDeployment *self) return FALSE; return g_key_file_get_boolean (self->origin, OSTREE_ORIGIN_TRANSIENT_GROUP, "pinned", NULL); } + +/** + * ostree_deployment_is_staged: + * @self: Deployment + * + * Returns: `TRUE` if deployment should be "finalized" at shutdown time + * Since: 2018.3 + */ +gboolean +ostree_deployment_is_staged (OstreeDeployment *self) +{ + return self->staged; +} |