24faf942df
I'd like to embed structured metadata about the originating git repository. See [this example](https://pagure.io/fedora-atomic-host-continuous/c/142b12020d7efe18b56d039304efea102a210790?branch=master). However, I think what we really want here is a *single* value which has subkeys. One thing in the back of my mind too is...we could use this to enhance our "change detection". Right now we checksum the sack, treefile, and treecompose-post. But down the line, I'd like to support more sophisticated postprocessing, where the script might reference external files or the like. In that case, we could stop checksumming the post script, and rely on whether or not the git repo changed. (This would conversely mean we would do a build even if e.g. the repo's `README.md` changed, but we can address that with a post-assemble content check). Anyways though, for now, this gets us the ability to more easily drop more structured metadata in the commit, whether it's input git repos, tests that passed, etc. Note a trap that bit me here: since the metadata we write here is *host* endian, but `ostree show --raw` byteswaps (it needs to since the core ostree variant is always big endian), we get inverted numbers if the host is little. I think we should probably canonicalize our metadata to big endian; this should be pretty backwards compatible since I doubt anyone has been adding raw numbers so far. Closes: #676 Approved by: jlebon |
||
---|---|---|
.. | ||
check | ||
common | ||
compose-tests | ||
composedata | ||
gpghome | ||
manual | ||
utils | ||
vmcheck | ||
compose | ||
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.