ostree/tests/installed
Giuseppe Scrivano 127d8bb846 commit: add logic for .payload-link
When a new object is added to the repository, create a
$PAYLOAD-SHA256.payload-link symlink file as well.  The target of the
symlink is the checksum of the object that was added the repository.

Whenever we add a new object file, in addition to lookup if the file is
already present with the same checksum we also check if an object with
the same payload is in the repository.

If a file with the same payload is already present in the repository, we
copy it with `glnx_regfile_copy_bytes` that internally attempts to
create a reflink (ioctl (..., FICLONE, ..)) to the target file if the
file system supports it.  This enables to have objects that share the
payload but have a different inode and xattrs.

By default the payload-link-threshold value is G_MAXUINT64 that disables
the feature.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>

Closes: #1443
Approved by: cgwalters
2018-03-07 18:28:59 +00:00
..
README.md tests/installed: New installed, privileged tests using Fedora AH 2017-04-25 15:15:06 +00:00
fah-prep.sh tests,ci: Move "test-basic" (bare mode) to installed test 2017-09-27 13:13:14 +00:00
itest-bare-root.sh tests: For installed, s/test-/itest-/ to avoid in-tree name clashes 2017-05-09 15:08:26 +00:00
itest-bare-unit.sh tests/installed: also run test-basic-c 2017-09-30 00:05:07 +00:00
itest-bare-user-root.sh lib/commit: Fix hardlink checkout commit with bare-user + mod xattrs 2017-10-23 17:02:28 +00:00
itest-bareuser-nouserxattrs.sh lib/repo: Immediately error creating bare-user repo on tmpfs 2017-07-06 14:31:37 +00:00
itest-deploy-selinux.sh deploy: SELinux-relabel installed kernel/initramfs data 2018-02-02 22:32:49 +00:00
itest-label-selinux.sh lib/checkout: add filter API to skip over files 2018-02-06 15:38:20 +00:00
itest-payload-link.sh commit: add logic for .payload-link 2018-03-07 18:28:59 +00:00
itest-pull-space.sh lib/repo: Add min-free-space-percent option, default 3% 2017-07-04 16:15:11 +00:00
itest-pull.sh lib/commit: Add a copy fastpath for imports 2017-09-26 16:50:41 +00:00
itest-remotes.sh Add a notion of "physical" sysroot, use for remote writing 2017-07-18 18:58:06 +00:00
libinsttest.sh Add SPDX-License-Identifier to source files 2018-01-30 20:03:42 +00:00
libtest-core.sh tests/installed: New installed, privileged tests using Fedora AH 2017-04-25 15:15:06 +00:00
run.sh tests/installed: support TESTS filter 2018-02-02 22:36:49 +00:00

README.md

This suite of tests is currently run from redhat-ci; they're intended to run as root.