Commit Graph
100 Commits
Author SHA1 Message Date
Jonathan Lebon 52810a41b9 ci: bump cosaPod memory requirement to 5Gi
We're hitting memory limits when running the reprovisioning tests. We
should investigate why we need 1Gi of overhead, but for now to get
unblocked let's just bump it.
2022-10-26 06:42:06 +00:00
Jonathan Lebon 4a83cf4a36 Merge pull request #2738 from lucab/ups/lib-zipl-check-open-errors 2022-10-13 11:22:38 -04:00
Jonathan Lebon c874d4f3f3 ci: Use new names for custom kola steps
The old `fcos*` versions are deprecated now:
https://github.com/coreos/coreos-ci-lib/pull/111
2022-10-13 09:18:08 -04:00
Jonathan Lebon 139759dd7e ci: Drop unnecessary outer stage
We define stages inside of this stage, so get rid of the outer `FCOS`
stage. This should help rendering the pipeline in BlueOcean more
clearly.
2022-10-13 09:16:19 -04:00
Jonathan Lebon d5129e3766 ci: Bump memory request, use fcosKolaTestIso
More fallout from https://github.com/coreos/coreos-ci-lib/pull/116. We
need to be more honest about how much memory we need.

While we're here, switch the `kola testiso` invocation to use
`fcosKolaTestIso` instead. This will add coverage for UEFI and UEFI
SecureBoot testing.
2022-10-13 09:14:08 -04:00
Jonathan Lebon 8f609dddaa Merge pull request #2698 from cgwalters/update-gir 2022-08-23 14:53:36 -04:00
Jonathan Lebon e075c51057 docs: Add section about staged deployments
I was explaining staged deployments to someone today and was looking for
a doc but we didn't have any. Fix that.
2022-08-23 10:59:40 -04:00
Jonathan Lebon 1fe550e9a0 Merge pull request #2691 from cgwalters/rev-parse-single 2022-08-18 12:07:19 -04:00
Jonathan Lebon 26a546886a Merge pull request #2684 from ostreedev/dependabot/submodules/libglnx-26375b5 2022-08-16 09:03:07 -04:00
Jonathan Lebon 84670a0070 tests/kolainst/staged-deploy: parse rpm-ostree status --json instead
Don't parse `rpm-ostree status` output, it's not meant for that. Use
`--json` output instead.

While we're here, fix an obsolete reference to Ansible.

Related: https://github.com/coreos/rpm-ostree/pull/3938
2022-08-15 17:50:11 -04:00
Jonathan Lebon 93e47f88f4 lib/commit: Directly use FICLONE for payload link
The idea of payload linking is to reflink between objects where
possible. Instead of relying on `glnx_regfile_copy_bytes` to hit the
`FICLONE` path, just call `FICLONE` directly. At that point in the code,
we've already established that the source and dest repos are on the same
filesystem and that it supports `FICLONE`.

Related: https://gitlab.gnome.org/GNOME/libglnx/-/merge_requests/41
Related: https://github.com/ostreedev/ostree/pull/2684#issuecomment-1204068437
2022-08-15 14:00:08 -04:00
Jonathan Lebon 2f8e31d172 Merge pull request #2668 from cgwalters/sync-cargo-deny 2022-07-11 13:52:53 -04:00
Jonathan Lebon e527cdc582 Merge pull request #2661 from cgwalters/port-cap-std 2022-06-28 16:56:09 -04:00
Jonathan Lebon 40703cad56 Merge pull request #2655 from nikita-dubrovskii/sdboot_rename 2022-06-24 12:49:50 -04:00
Jonathan Lebon 502ad96af2 Merge pull request #2659 from cgwalters/hackaround-cosa-systemd-unit-check 2022-06-24 10:49:19 -04:00
Jonathan Lebon 7814d9339e tests/inst/destructive: stop disabling fedora-coreos-pinger
It was removed from FCOS:
https://github.com/coreos/fedora-coreos-tracker/issues/770
2022-06-23 15:50:39 -04:00
Jonathan Lebon 7ee2d1b137 Drop .packit.yaml
This repo is already hooked to the @CoreOS/continuous COPR repo for
multi-arch RPM builds of the latest commits.

It's possible we will use Packit in the future to help with the release
process. But for now, let's just drop this file since it's not needed
and the Packit failures are marking git main CI as failed.
2022-06-21 15:10:18 -04:00
Jonathan Lebon d9d085dc7b Merge pull request #2650 from cgwalters/misc-declare-and-initialize-1 2022-06-14 16:20:44 -04:00
Jonathan Lebon 0f83196c2a Merge pull request #2635 from cgwalters/list-objects-set 2022-06-08 11:38:36 -04:00
Jonathan Lebon 231ab7b321 Merge pull request #2627 from cgwalters/bindings-drop-committed-gir 2022-06-03 10:52:44 -04:00
Jonathan Lebon 270d3dc38d Merge pull request #2622 from cgwalters/more-ci 2022-05-31 15:14:50 -04:00
Jonathan Lebon f376f7ffff Merge pull request #2621 from cgwalters/drop-jenkins-soup 2022-05-31 11:24:33 -04:00
Jonathan Lebon 4ce6fb0970 Merge pull request #2619 from nikita-dubrovskii/skip_gzip_unpacking 2022-05-27 16:27:08 -04:00
Jonathan Lebon 2e564aef07 copr: mark git checkout as safe
Recent git became more strict wrt git repos in parent dirs owned by
other users. This broke our COPR builds due to the git checkout being
created by a different user and mounted in. We need to explicitly mark
the repo as safe.

For more information, see:
https://github.com/actions/checkout/issues/760
2022-05-26 16:54:43 -04:00
Jonathan Lebon 9aca8816c6 Merge pull request #2615 from nikita-dubrovskii/handle_errors 2022-05-25 13:38:23 -04:00
Jonathan Lebon df44271624 Merge pull request #2596 from cgwalters/release-2022-3 2022-05-04 14:55:37 -04:00
Jonathan Lebon 9cdd981250 Merge pull request #2589 from cgwalters/ostree-boot-complete 2022-04-26 13:33:08 -04:00
Jonathan Lebon 59c6934e74 Merge pull request #2576 from cgwalters/archive-handle-null-link 2022-04-04 14:32:52 -04:00
Jonathan Lebon 574d35bbdf Merge pull request #2566 from cgwalters/ci-update 2022-03-14 15:24:23 -04:00
Jonathan Lebon 73bc62cac3 Merge pull request #2528 from cgwalters/test-crate-update 2022-03-14 15:20:54 -04:00
Jonathan Lebon 00e39ebedc Merge pull request #2548 from cgwalters/mtree-load-ensured 2022-02-22 15:20:22 -05:00
Jonathan Lebon c5ecef0aa4 lib/gpg-verify-result: Add missing floating annotation
I think I'm hitting issues due to this while using the Rust bindings:
https://github.com/coreos/rpm-ostree/pull/3406#issuecomment-1033084956

The bindings for those APIs use `from_glib_full` which says:

> Because ownership can only be transferred if something is already
> referenced, this is unsuitable for floating references.
2022-02-09 14:35:31 -05:00
Jonathan Lebon a588295d3a Merge pull request #2534 from jlebon/pr/copr 2022-02-03 15:36:50 -05:00
Jonathan Lebon 1e663baad7 Add COPR integration Makefile
I'd like to enable auto-builds of this repo to
https://copr.fedorainfracloud.org/coprs/g/CoreOS/continuous/ so it could
eventually feed into
https://github.com/coreos/fedora-coreos-tracker/issues/910.
2022-02-03 13:34:20 -05:00
Jonathan Lebon a51ae1ed73 ci/make-git-snapshot.sh: xz the archive
This matches `make dist` and what the spec file expects.
2022-02-03 13:23:43 -05:00
Jonathan Lebon 92c396c82b ci/make-git-snapshot.sh: auto-initialize submodules
Matches `autogen.sh`.
2022-02-03 13:22:47 -05:00
Jonathan Lebon 8d45298a2d ci/make-git-snapshot.sh: fix archive name
The archive name is libostree even though the project name is ostree, so
we can't rely on the directory name.

Just hardcode it.
2022-02-03 13:21:54 -05:00
Jonathan Lebon 8e445cb957 ci/libbuild.sh: drop yum/CentOS support
`dnf` is present in all the platforms we care about now, and the CentOS
bit is out of date. We can re-add it if we add e.g. C[89]S support with
the updated list of packages.

Motivated by noticing that the `yum` symlink isn't always present.
2022-02-03 13:17:56 -05:00
Jonathan Lebon 2de6abfcd0 Merge pull request #2533 from lucab/ups/commit-cleanup-assertions 2022-02-01 13:57:00 -05:00
Jonathan Lebon 5bf57ec062 tests/kolainst: Avoid recursive symlinks
`kola` now follows symlinks when archiving an external test's `data/`
dir. So the recursive `data` symlink we have here breaks it.

Let's just move the shared files in its own directory and update the
symlinks.
2022-01-25 16:44:39 -05:00
Jonathan Lebon baf838de22 ostree/deploy: Test finalization locking
Support for that file was added previously, but the testing lived in
rpm-ostree only. Let's add it here too.

In the process add a hidden `--lock-finalization` to `ostree admin
deploy` to make testing easier (though it could also be useful to update
managers driving OSTree via the CLI).
2022-01-21 13:48:35 -05:00
Jonathan Lebon 88dca03967 lib/deploy: When deleting staged deployment, delete any lock
Otherwise, any future staged deployment will also automatically be
locked even if not requested. Likely we should fold the locking into the
primary `staged-deployment` serialized GVariant instead.
2022-01-21 11:30:23 -05:00
Jonathan Lebon 1af0150750 Merge pull request #2516 from cgwalters/define-ostree-booted 2022-01-12 13:39:59 -05:00
Jonathan Lebon 267ca93da2 Merge pull request #2490 from lucab/ups/static-fixes 2021-11-26 10:55:15 -05:00
Jonathan Lebon 947acbf178 app: Only remount /sysroot if needed
We should only try to remount `/sysroot` if we're actually handling the
sysroot repo and the repo isn't writable. We already have public APIs to
check each of those, so let's use them.

Closes: #2485
2021-11-19 11:01:18 -05:00
Jonathan Lebon b7efd16cc5 Merge pull request #2472 from lucab/ups/prepare-root-checked-printf 2021-10-26 15:14:21 -04:00
Jonathan Lebon 6e0165020a Merge pull request #2473 from lucab/ups/prepare-root-less-global-mutable-state 2021-10-26 13:25:37 -04:00
Jonathan Lebon 09f4ad708c Merge pull request #2467 from cgwalters/bump-libglnx-20211014 2021-10-14 15:33:33 -04:00
Jonathan Lebon cc70ab27fa Merge pull request #2460 from cgwalters/gir-no-tls-interaction 2021-10-07 04:24:07 -04:00
Jonathan Lebon 8cb5d920c4 Merge pull request #2449 from cgwalters/mtree-from-commit 2021-10-05 11:56:02 -04:00
Jonathan Lebon 488edf6e26 Merge pull request #2453 from cgwalters/etc-ignore-sockets 2021-10-04 16:54:44 -04:00
Jonathan Lebon 841902c40d Merge pull request #2451 from cgwalters/fsck-happy 2021-09-30 16:33:47 -04:00
Jonathan Lebon d61a499163 Merge pull request #2450 from cgwalters/revdep-ext-ci 2021-09-30 16:15:45 -04:00
Jonathan Lebon 0f95e4e5ee ostree/dump: Fix free'ing a static string
Reported-by: Seth Arnold <seth.arnold@canonical.com>
2021-08-03 16:49:49 -04:00
Jonathan Lebon 738831c50b lib/sysroot: Fix error message about creating /var/lib
Reported-by: Seth Arnold <seth.arnold@canonical.com>
2021-08-03 16:49:49 -04:00
Jonathan Lebon 75b17937cf lib/sign-dummy: Handle incorrect signatures correctly
We need to check all signatures for one which passes, not just fail on
the first one.

Reported-by: Seth Arnold <seth.arnold@canonical.com>
2021-08-03 16:49:49 -04:00
Jonathan Lebon 420952595b Merge pull request #2398 from bgilbert/statoverride
man: improve statoverride description
2021-07-14 17:11:02 -04:00
Jonathan Lebon e00c0463cb Merge pull request #2382 from dbnicholson/gh-tests-configs 2021-06-22 14:37:15 -04:00
Jonathan Lebon 301b52704e ostree-remount: Order before systemd-rfkill.*
The `systemd-rfkill.*` service falls in the category of early things
that need write access to `/var`, so we need to make sure we run before
or it might hit the read-only sysroot.

The long-term fix for this is
https://github.com/ostreedev/ostree/issues/2115.

Closes: https://github.com/coreos/fedora-coreos-tracker/issues/746
2021-06-22 11:22:47 -04:00
Jonathan Lebon 35c5433d71 Merge pull request #2366 from pwithnall/freenode
docs: Change IRC channel to libera.chat from freenode
2021-06-18 10:27:45 -04:00
Jonathan Lebon c9a318faf4 Merge pull request #2375 from cgwalters/generator-remount
Use generator to enable ostree-remount.service and ostree-finalize-staged.path
2021-06-18 10:25:35 -04:00
Jonathan Lebon f8496098ee Merge pull request #2373 from cgwalters/warn-nonempty-var
deploy: Warn if we find content in the deployment's /var
2021-06-10 11:12:30 -04:00
Jonathan Lebon 788e171b7c docs: Add more details about 3-way merge
This came up a few times so let's go into more details in the docs.
2021-04-30 10:50:15 -04:00
Jonathan Lebon 89481ca4be Merge pull request #2354 from cgwalters/fix-gh-action
ci: Fix GH action for rustfmt
2021-04-27 15:23:02 -04:00
Jonathan Lebon 60c14240ab Merge pull request #2353 from cgwalters/uri-scheme-hardening
pull: Cleanly error out on unknown schemes
2021-04-27 14:09:10 -04:00
Jonathan Lebon 3991009c93 Merge pull request #2335 from cgwalters/write-regfile-api 2021-04-12 16:48:27 -04:00
Jonathan Lebon 020f6cb652 Merge pull request #2334 from cgwalters/write-symlink
repo: Add ostree_repo_write_symlink
2021-04-09 13:35:06 -04:00
Jonathan Lebon 96875b37e5 Merge pull request #2315 from cgwalters/add-lgtm-dot-com
.lgtm.yml: Add package deps
2021-03-26 14:08:06 -04:00
Jonathan Lebon 36a543ceb1 lib/pull: Add some error-prefixing in dirtree scanning
I think these are the paths involved in the error message at
https://github.com/coreos/rpm-ostree/issues/2250.
2021-03-22 16:32:11 -04:00
Jonathan Lebon a16be7df6e Merge pull request #2306 from cgwalters/drop-core-rust 2021-03-22 09:59:42 -04:00
Jonathan Lebon 02b6197924 lib/sysroot: Add comments and debug statements around sysroot parsing
Was looking at this code more closely today to investigate issues
related to bootlink mismatches (#2283).
2021-03-02 15:36:27 -05:00
Jonathan Lebon f895cf4fd2 Drop use of volatile
As detailed in
gitlab.gnome.org/GNOME/glib/-/issues/600#note_877282, volatile
isn't actually needed in these contexts because the atomic operations
already give us strong enough guarantees. In GCC 11, this triggers a
diagnostic due to the volatile qualifier getting dropped anyway.

There is a WIP to do the same in glib:
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719

This obsoletes this downstream patch:
https://src.fedoraproject.org/rpms/ostree/c/b8c5a6fb
2020-11-02 14:53:26 -05:00
Jonathan Lebon 8717608c7e lib/fetch-curl: Unref timeout source
The timeout timer should always be one-shot, so let's just always
destroy it in the callback. The main context has its own ref on it, so
it won't be freed behind its back.

This *should* fix a leak that was brought up in
https://bugzilla.redhat.com/show_bug.cgi?id=1891761.

Reported-by: Milan Crha <mcrha@redhat.com>
2020-10-27 12:01:01 -04:00
Jonathan Lebon 40edc33ef3 lib/fetcher-curl: Use G_SOURCE_REMOVE instead of FALSE
They're equivalent, though I prefer the former because it's more
descriptive and it makes it really obvious that it's a `GSource`
callback.
2020-10-27 11:57:00 -04:00
Jonathan Lebon dec9eab203 ostree-prepare-root: print st_dev and st_ino as 64-bit ints
This matches what systemd does and should work fine on all platforms.

Possibly resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1888436
2020-10-15 12:26:47 -04:00
Jonathan Lebon ee632e4968 ci: Make Packit ignore downstream patches
We don't really carry "Fedora-only" patches in dist-git. So we want to
nuke all the patches which exist there.

Follow-up to #2210.
2020-10-07 15:04:17 -04:00
Jonathan Lebon b3dc074f5e lib/deploy: Don't leak fd when checksumming dtbs
Likely the root of https://bugzilla.redhat.com/show_bug.cgi?id=1886149.
2020-10-07 14:47:34 -04:00
Jonathan Lebon 9c51aa3090 Add Packit integration
This is a basic `.packit.yaml` integration file which will allow us have
continuous builds of OSTree in cosa and upstream CI. If things go well,
we'll likely deploy this in other build tools like rpm-ostree.

Prompted by wanting to get #2155 out to unblock
https://github.com/coreos/rpm-ostree/pull/2170.
2020-10-06 14:20:57 -04:00
Jonathan Lebon 81b13da8e3 lib/deploy: Add support for overlay initrds
In FCOS and RHCOS, the need to configure software in the initramfs has
come up multiple times. Sometimes, using kernel arguments suffices.
Other times, it really must be a configuration file. Rebuilding the
initramfs on the client-side however is a costly operation. Not only
does it add complexity to the update workflow, it also erodes a lot of
the value obtained from using the baked "blessed" initramfs from the
tree itself.

One elegant way to address this is to allow specifying multiple
initramfses. This is supported by most bootloaders (notably GRUB) and
results in each initrd being overlayed on top of each other.

This patch allows libostree clients to leverage this so that they can
avoid regenerating the initramfs entirely. libostree itself is agnostic
as to what kind and how much data overlay initrds contain. It's up to
the clients to enforce such boundaries.

To implement this, we add a new ostree_sysroot_stage_overlay_initrd
which takes a file descriptor and returns a checksum. Then users can
pass these checksums when calling the deploy APIs via the new array
option `overlay_initrds`. We copy these files into `/boot` and add them
to the BLS as another `initrd` entry.
2020-09-30 13:29:32 -04:00
Jonathan Lebon 40fea4c443 lib/deploy: Add deploy/stage APIs with options
And make the `override_kernel_argv` one of those options. This is mostly
a mechanical move here, no functional change otherwise.

Prep for adding a new option.
2020-09-30 13:29:32 -04:00
Jonathan Lebon f7500bb703 lib/bootconfig: Add support for multiple initrd keys
Prep for actually teaching the rest of the codebase about this.

We keep the primary initrd in the `options` hash table for backwards
compatibility.
2020-09-30 13:29:32 -04:00
Jonathan Lebon f04e5d047d lib: Minor versioning related fixes
Fix/add the `Since` marker to the new static delta APIs, and update the
symbol versioning templates/comments.
2020-09-25 15:30:20 -04:00
Jonathan Lebon 75342035d5 Makefile-libostree.am: Uncomment BUILDOPT_IS_DEVEL_BUILD conditional
We shouldn't have to toggle the conditional itself during release
builds. It should only evaluate to true during devel builds.
2020-09-25 15:07:36 -04:00
Jonathan Lebon 8408f8913b ci: Temporarily import kola test from jlebon's FCOS fork
That test will not make it into the fedora-coreos-config repo until the
libostree fix gets percolated down. PR is:

https://github.com/coreos/fedora-coreos-config/pull/586

But we want to make sure that the fix does work and that we don't
regress on it. So manually fetch it for now.
2020-08-28 14:16:46 -04:00
Jonathan Lebon a7a751b69f ostree-remount: Remount /etc rw if needed
When we remount `/sysroot` as read-only, we also make `/etc` read-only.
This is usually OK because we then remount `/var` read-write, which also
flips `/etc` back to read-write... unless `/var` is a separate
filesystem and not a bind-mount to the stateroot `/var`.

Fix this by just remounting `/etc` read-write in the read-only sysroot
case.

Eventually, I think we should rework this to set everything up the way
we want from the initramfs (#2115). This would also eliminate the window
during which `/etc` is read-only while `ostree-remount` runs.
2020-08-28 14:16:46 -04:00
Jonathan Lebon b3c7b059ea ostree-prepare-root: Fix /etc bind mount
We were bind-mounting the initramfs' `/etc` (to itself) instead of the
target deployment `/etc` (to itself). Since we're already `chdir`'ed
into it, we can just drop the leading slash.
2020-08-28 14:16:29 -04:00
Jonathan Lebon 0a6a41a63d configure.ac: Set is_release_build=no
We missed this during the post-release version bump.
2020-08-24 14:17:35 -04:00
Jonathan Lebon 10a68cd26b lib/deploy: Clarify comment re. staging API
Don't mention deprecation in the description for
`ostree_sysroot_deploy_tree` since there are legitimate use cases for it
(e.g. to create the first deployment via `ostree admin deploy`).

Instead, make the comment clearly redirect to the staging API when
booted into the sysroot.
2020-08-17 09:48:57 -04:00
Jonathan Lebon 5de3a9759f lib/deploy: Drop unneccessary function arg 2020-08-17 09:48:57 -04:00
Jonathan Lebon e4fb7d3bb1 lib/cleanup: Drop unnecessary GEqualFunc cast 2020-08-17 09:48:57 -04:00
Jonathan Lebon 74bd136286 lib/deploy: Simplify deployment creation
Minor cleanup; we were declaring a superfluous variable.
2020-08-17 09:48:57 -04:00
Jonathan Lebon 61c544df1b lib/deploy: Avoid shadowing variable
There's already a `boot_relpath` variable in the outside scope.
2020-08-17 09:48:57 -04:00
Jonathan Lebon 52a6224606 lib/deploy: Clean up kargs override handling
Tighten up how we handle kargs here so it's more clear. When we call
`sysroot_finalize_deployment`, any karg overrides have already been set
on the bootconfig object of the deployment. So re-setting it here is
redundant and confusing.
2020-08-17 09:48:57 -04:00
Jonathan Lebon af140266d5 app: Fix various CLI metavariable names
- Use `REV` instead of `REF` in places where we meant it.
- Fix `commit --parent` actually taking a commit checksum and not a ref.
- Fix `ostree admin switch` using `REF` instead of `REFSPEC`.
2020-07-31 15:02:47 -04:00
Jonathan Lebon 92284f9b81 ci: Constrain parallel build jobs
The default `_NPROCESSORS_ONLN` heuristic we have isn't cgroups aware.
So it thinks it has e.g. 40 CPUs when running in a k8s pod. This can
then blow through our allocated resource limits.

Declare some modest amount of RAM and CPU resources and override `make`
parallelism.

This matches what rpm-ostree now does in
https://github.com/coreos/rpm-ostree/pull/2155.
2020-07-16 15:44:34 -04:00
Jonathan Lebon 1d755f62af lib/repo: Handle EACCES for POSIX locking
If `glnx_make_lock_file` falls back to `flock`, on NFS this uses POSIX
locks (`F_SETLK`). As such, we need to be able to handle `EACCES` as
well as `EAGAIN` (see `fnctl(2)`).

I think this is what coreos-ostree-importer has been hitting, which runs
on RHEL7 in the Fedora infra and does locking over an NFS share where
multiple apps could concurrently pull things into the repo.
2020-06-30 15:09:41 -04:00
Jonathan Lebon 516c1340b3 ci: Remove libpaprci/ directory
And move everything that was in it directly in `ci/`. There's a bunch
more cleanups here that we need to do (and more changes to upstream from
the rpm-ostree copies of this).
2020-06-17 15:48:31 -04:00
Jonathan Lebon eb3fe35b06 ci: Import latest ci-commitmessage-submodules from rpm-ostree
Especially for https://github.com/coreos/rpm-ostree/pull/2079.
2020-06-17 10:39:51 -04:00
Jonathan Lebon b3694b55ac libglnx: Bump to latest
For `copy_file_range` fix:

https://gitlab.gnome.org/GNOME/libglnx/-/merge_requests/18

Update submodule: libglnx
2020-06-16 16:31:22 -04:00
Jonathan Lebon 6730acc350 tests/admin-test: Fix --allow-downgrade check
We were doing a check to verify that `ostree admin upgrade` wouldn't
accept a downgrade without `--allow-downgrade`. However, there's no
guarantee that the commit it's upgrading from is older than HEAD^ (what
we're upgrading to). Specifically, if the test runs fast enough, the
timestamps could be equal, since the lowest resolution is seconds.

Rework the test so that we first upgrade to HEAD, which we're sure is at
least 1 second apart from HEAD^, and *then* check that downgrade
protection is enforced.

We also can't use `rev-parse testos/buildmaster/x86_64-runtime` as a way
to know what commit the host is sitting on since the ref might've gone
ahead. Instead, just use `ostree admin status | head -n1`. (I played
with using the `ostree/I/J/K` refs, but those depend on what the
boot/subbootversion is and can easily change if we change previous
tests).
2020-05-22 13:59:36 -04:00