60aa9a4a33
In this PR: https://github.com/projectatomic/rpm-ostree/pull/1309 I was hitting race conditions running `ostree admin pin` then `rpm-ostree cleanup` as it was possible that the daemon hadn't handled the inotify on the sysroot and reloaded the deployment state before the txn request came in. Close this race by doing an implicit `reload` before starting a txn. This is a pretty efficient operation because for the sysroot we're just doing a `stat()` and comparing mtime. Implementation wise, change the external API to drop the "did change" boolean as nothing outside of the `sysroot.c` file used it. A followup to this would be changing the `status` CLI to call a (new) DBus API like `RequestReload` that at least did the sysroot reload if the daemon was otherwise idle or so? And it'd be available to unprivileged users. Closes: #1311 Approved by: cgwalters |
||
---|---|---|
.. | ||
check | ||
common | ||
compose-tests | ||
composedata | ||
ex-container-tests | ||
gpghome | ||
manual | ||
utils | ||
vmcheck | ||
compose | ||
ex-container | ||
README.md |
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.