debian-forge/test/mod
Christian Kellner ae0680da11 osbuid: integrate FsCache into ObjectStore
Integrate the recently added file system cache `FsCache` into our
object store `ObjectStore`. NB: This changes the semantics of it:
previously a call to `ObjectStore.commit` resulted in the object
being in the cache (i/o errors aside). But `FsCache.store`, which
is now the backing store for objects, will only commit objects if
there is enough space left. Thus we cannot rely that objects are
present for reading after a call to `FsCache.store`. To cope with
this we now always copy the object into the cache, even for cases
where we previously moved it: for the case where commit is called
with `object_id` matching `Object.id`, which is the case for when
`commit` is called for last stage in the pipeline. We could keep
this optimization but then we would have to special case it and
not call `commit` for these cases but only after we exported all
objects; or in other words, after we are sure we will never read
from any committed object again. The extra complexity seems not
worth it for the little gain of the optimization.
Convert all the tests for the new semantic and also remove a lot
of them that make no sense under this new paradigm.

Add a new command line option `--cache-max-size` which will set
the maximum size of the cache, if specified.
2022-12-09 12:03:40 +01:00
..
__init__.py test: '{. -> ./mod}/test_util_selinux.py' 2020-04-24 15:50:44 +02:00
test_api.py pipeline,api: write metadata directly 2022-12-09 12:03:40 +01:00
test_buildroot.py osbuild: auto-detect best available runner 2022-10-11 12:49:16 +02:00
test_fmt_v1.py objectstore: direct path i/o for Object 2022-11-21 17:26:53 +01:00
test_fmt_v2.py osbuild: auto-detect best available runner 2022-10-11 12:49:16 +02:00
test_host.py host: add support for emitting signals 2022-02-22 10:38:43 +01:00
test_loop.py osbuild: run isort on all files 2022-09-12 13:32:51 +02:00
test_meta.py meta: cache list of runners 2022-10-11 12:49:16 +02:00
test_monitor.py osbuild: auto-detect best available runner 2022-10-11 12:49:16 +02:00
test_objectstore.py osbuid: integrate FsCache into ObjectStore 2022-12-09 12:03:40 +01:00
test_osbuild.py test/osbuild: use proper object in stage run test 2022-12-09 12:03:40 +01:00
test_util_checksum.py osbuild: run isort on all files 2022-09-12 13:32:51 +02:00
test_util_ctx.py util/ctx: extract suppress_oserror() 2020-05-11 18:05:12 +02:00
test_util_fscache.py test/fscache: drop PathLike annotation 2022-12-07 20:11:05 +01:00
test_util_jsoncomm.py util/jsoncomm: add send_and_recv helper 2021-06-09 18:37:47 +01:00
test_util_linux.py linux: add Libc accessor with renameat2(2) 2022-12-06 09:48:38 +01:00
test_util_lorax.py osbuild: run isort on all files 2022-09-12 13:32:51 +02:00
test_util_lvm2.py osbuild: run isort on all files 2022-09-12 13:32:51 +02:00
test_util_osrelease.py test: make TestBase inherit unittest.TestCase 2020-06-05 09:27:40 +02:00
test_util_ostree.py osbuild: run isort on all files 2022-09-12 13:32:51 +02:00
test_util_parsing.py util: add helper to parse size strings 2022-12-09 12:03:40 +01:00
test_util_path.py global: fix PEP-8 formatting 2022-08-05 09:41:05 +02:00
test_util_pe32p.py util: add module to parse PE32+ files 2022-11-14 20:10:59 +01:00
test_util_rhsm.py global: fix PEP-8 formatting 2022-08-05 09:41:05 +02:00
test_util_rmrf.py test: convert to shared helpers 2020-05-13 14:26:05 +02:00
test_util_selinux.py util/selinux: add setfilecon method 2022-03-18 20:36:10 +01:00
test_util_udev.py devices: add custom udev rule inhibitor mechanism 2021-12-09 00:44:21 +00:00