Package Details: xcp 0.21.2-1

Git Clone URL: https://aur.archlinux.org/xcp.git (read-only, click to copy)
Package Base: xcp
Description: An extended 'cp'
Upstream URL: https://github.com/tarka/xcp
Keywords: cp
Licenses: GPL-3.0-only
Submitter: ArniDagur
Maintainer: tarball
Last Packager: tarball
Votes: 5
Popularity: 0.97
First Submitted: 2019-01-14 02:25 (UTC)
Last Updated: 2024-06-29 08:55 (UTC)

Required by (0)

Sources (1)

Latest Comments

tarka commented on 2024-06-29 00:46 (UTC)

Yes, on reflection I should tweak the default case to be more lenient. v0.21.2 released with and updated test-linux.sh.

tarball commented on 2024-06-28 09:08 (UTC)

Not sure how far package maintainers can accommodate less common build configurations tbh, there is only so much you can claim to support.

If we (along with @xiota who maintains xcp-git) start repeating test-linux.sh, we'll then have to follow the project really closely and/or build every release on multiple configurations, or push updates cowboy-style and then patch as more bug reports come in.

overlayfs is successfully detected as a separate filesystem and could run the safe subset of tests regardless of what is underneath, but I'm guessing you don't want to add anything there that's not actually being used by CI for exactly the same reasons.

Since you have far better visibility into how portable each test is, would it be possible to disable everything risky as a single unit?

% cargo test ... --features test_no_advanced

I will of course apply your current suggestion if that's what you prefer, but it probably won't remove the support burden on you.

Or we can just drop check() altogether to avoid playing whack-a-mole as there are other problems with building in a chroot (which is a pretty common use case) and who knows what else.

tarka commented on 2024-06-28 05:49 (UTC)

xcp author here. This ./tests/scripts/test-linux.sh probably isn't the best option to use for check(), it's mostly intended for use in CI where we know the setup beforehand. In particular if you run it in a Docker container you'll have issues with overlayfs, which hides the underlying FS identity. See https://github.com/tarka/xcp/issues/54

You would probably be better running a subset of the tests that will work on all linux-native filesystems; e.g. cargo test --workspace --locked --features test_no_reflink,test_no_acl,test_no_sparse,test_no_extents.

tarball commented on 2023-12-20 11:06 (UTC) (edited on 2023-12-20 11:32 (UTC) by tarball)

ext4 is officially supported (in fact it's the "main" Linux filesystem from the upstream's point of view). So it's an upstream bug. You should probably report it to the bugtracker and patch that line out for the moment.

edit: CI is using feature flags, so that's what I did for now. Still, it would be great to auto detect features since many other filesystems do support reflinks.

xiota commented on 2023-12-20 11:01 (UTC) (edited on 2023-12-24 02:07 (UTC) by xiota)

Clean chroot. I believe file system is ext4. Is there a way to detect file system support and disable tests? Or to run tests in an image file of a supported file system?

failures:
    linux::tests::test_reflink

Updates:

simona commented on 2020-10-03 08:23 (UTC) (edited on 2020-10-03 08:25 (UTC) by simona)

error
error: no override and no default toolchain set
Solved with:
rustup install stable ; rustup default stable

stvhuang commented on 2020-02-18 07:13 (UTC) (edited on 2020-02-18 07:20 (UTC) by stvhuang)

failures: os::linux::tests::test_empty_extent os::linux::tests::test_extent_fetch os::linux::tests::test_extent_fetch_many

test result: FAILED. 11 passed; 3 failed; 21 ignored; 0 measured; 0 filtered out

error: test failed, to rerun pass '--bin xcp' ==> ERROR: A failure occurred in check(). Aborting... Error making: xcp


build successfully, but cannot pass the test