diff options
author | Colin Walters <walters@verbum.org> | 2018-02-23 12:46:32 -0500 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2018-02-26 19:06:59 +0000 |
commit | 7f88fddcd41f0fb12333eba145c99d2499b7767f (patch) | |
tree | e7d94073c4356c4cff20c4919883f4b197777362 /bash/ostree | |
parent | c40a47e965d139cf6e72192bd582098a635b72f4 (diff) | |
download | ostree-7f88fddcd41f0fb12333eba145c99d2499b7767f.tar.gz |
sysroot: Add concept of deployment "pinning" 📌
Example user story: Jane rebases her OS to a new major version N, and wants to
keep around N-1 even after a few upgrades for a while so she can easily roll
back. I plan to add `rpm-ostree rebase --pin` to opt-in to this for example.
Builds on the new `libostree-transient` group to store pinning state there.
Closes: https://github.com/ostreedev/ostree/issues/1460
Closes: #1464
Approved by: jlebon
Diffstat (limited to 'bash/ostree')
-rw-r--r-- | bash/ostree | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/bash/ostree b/bash/ostree index fe8e3d2c..edef6cff 100644 --- a/bash/ostree +++ b/bash/ostree @@ -399,6 +399,37 @@ _ostree_admin_os_init() { return 0 } +_ostree_admin_pin() { + local boolean_options=" + $main_boolean_options + " + + local options_with_args=" + --sysroot + " + + local options_with_args_glob=$( __ostree_to_extglob "$options_with_args" ) + + case "$prev" in + --sysroot) + __ostree_compreply_dirs_only + return 0 + ;; + $options_with_args_glob ) + return 0 + ;; + esac + + case "$cur" in + -*) + local all_options="$boolean_options $options_with_args" + __ostree_compreply_all_options + ;; + esac + + return 0 +} + _ostree_admin_set_origin() { local boolean_options=" $main_boolean_options |