5a79ca9035
Came out of discussion in https://github.com/coreos/rpm-ostree/pull/2581 around some racy code for checking for the live commit object. The reliability of apply-live depends on the underlying commits not being garbage collected. Our diff logic is in terms of ostree commits, not the physical filesystem (this allows us to make various optimizations too). Ultimately I think we should drive some of the live-apply logic into libostree itself; we can more easily have an atomic state file instead of the two split refs. (Or perhaps what we should add to ostree is like a refs.d model where a single atomic file can refer to multiple commits) For now though let's rework the code here to write refs. We retain the file in `/run` as just a "stamp file" that signals that a deployment has had `apply-live` run. |
||
---|---|---|
.. | ||
check | ||
common | ||
compose | ||
gpghome | ||
kolainst | ||
manual | ||
utils | ||
vmcheck | ||
compose.sh | ||
README.md | ||
runkola | ||
vmcheck.sh |
Tests are divided into three groups:
-
Tests in the
check
directory are non-destructive and uninstalled. Some of the tests require root privileges. Usemake check
to run these. -
The
composecheck
tests currently require uid 0 capabilities - the default in Docker, or you can run them via a user namespace. They are non-destructive, but are installed.To use them, you might do a
make && sudo make install
inside a Docker container.Then invoke
./tests/compose
. Alternatively of course, you can simply run the tests on a host system or in an existing container, without doing a build.Note: This is intentionally not a
Makefile
target because it doesn't require building and doesn't use uninstalled binaries. -
Tests in the
vmcheck
directory are oriented around using Vagrant. Usemake vmcheck
to run them. See alsoHACKING.md
in the top directory.
The common
directory contains files used by multiple
tests. The utils
directory contains helper utilities
required to run the tests.