-
Notifications
You must be signed in to change notification settings - Fork 66
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add xfstests into CI for overlayfs, it will work as Github Actions. Currently not all test cases can be run, only about half of `generic/*` for the Fuse Overlay FS, some test cases are expected to fail due to missing function implementation, little are unexpected due to potential bugs which will be investigated laterly. Signed-off-by: Wei Zhang <weizhang555.zw@gmail.com>
- Loading branch information
1 parent
b263196
commit 81b24b2
Showing
8 changed files
with
108 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
[package] | ||
name = "testoverlay" | ||
name = "overlay" | ||
version = "0.1.0" | ||
edition = "2021" | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# Exclude list for tests that we know are broken in smb3 | ||
# | ||
generic/011 # Broken: dirstress 5 processes. | ||
generic/020 # ENOSPC, suppose to be FUSE compatibility issue. | ||
generic/023 # Rename is not supported currently. | ||
generic/024 # Rename is not supported currently. | ||
generic/025 # Rename is not supported currently. | ||
generic/035 # Rename is not supported currently. | ||
generic/078 # Rename is not supported currently. | ||
generic/089 # Rename is not supported currently. | ||
generic/099 # Suppose to be FUSE compatibility issue. | ||
generic/184 # Special device isn't supported due to 'nodev' mount option. | ||
generic/241 # Rename is not supported currently. | ||
generic/245 # Rename is not supported currently. | ||
generic/375 # Suppose to be FUSE compatibility issue, about posix acl support | ||
generic/426 # Suppose to be FUSE compatibility issue: 'open_by_handle' | ||
generic/434 # Special device isn't supported due to 'nodev' mount option. | ||
generic/444 # Suppose to be FUSE compatibility issue, about posix acl support | ||
generic/467 # Suppose to be FUSE compatibility issue: 'open_by_handle' | ||
generic/477 # Suppose to be FUSE compatibility issue: 'open_by_handle' | ||
generic/591 # Broken. | ||
generic/633 # Suppose to be FUSE compatibility issue. | ||
generic/697 # Suppose to be FUSE compatibility issue. | ||
generic/736 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
#!/bin/bash | ||
|
||
current_dir=$(dirname $(realpath $0)) | ||
|
||
sudo apt-get update | ||
sudo apt-get install acl attr automake bc dbench dump e2fsprogs fio gawk \ | ||
gcc git indent libacl1-dev libaio-dev libcap-dev libgdbm-dev libtool \ | ||
libtool-bin liburing-dev libuuid1 lvm2 make psmisc python3 quota sed \ | ||
uuid-dev uuid-runtime xfsprogs linux-headers-$(uname -r) sqlite3 | ||
sudo apt-get install exfatprogs f2fs-tools ocfs2-tools udftools xfsdump \ | ||
xfslibs-dev | ||
|
||
# clone xfstests and install. | ||
cd /tmp/ | ||
git clone -b v2023.12.10 git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git | ||
cd xfstests-dev | ||
make | ||
sudo make install | ||
# overwrite local config. | ||
cat >local.config <<EOF | ||
export TEST_DEV=testoverlay | ||
export TEST_DIR=/tmp/testoverlay/merged | ||
#export SCRATCH_DEV=testoverlay | ||
#export SCRATCH_MNT=/tmp/test2/merged | ||
export FSTYP=fuse | ||
export FUSE_SUBTYP=.testoverlay | ||
EOF | ||
|
||
# create fuse overlay mount script. | ||
# /tmp/testoverlay must exists. | ||
sudo cat >/usr/sbin/mount.fuse.testoverlay <<EOF | ||
#!/bin/bash | ||
ulimit -n 1048576 | ||
exec /usr/sbin/overlay -o \ | ||
lowerdir=/tmp/testoverlay/lower2:/tmp/testoverlay/lower1,upperdir=/tmp/testoverlay/upper,workdir=/tmp/testoverlay/work \ | ||
testoverlay /tmp/testoverlay/merged \ | ||
1>>/tmp/testoverlay.log 2>&1 & | ||
sleep 1 | ||
EOF | ||
sudo chmod +x /usr/sbin/mount.fuse.testoverlay | ||
|
||
# create related directories. | ||
mkdir -p /tmp/testoverlay/{upper,work,merged,lower2,lower1} | ||
|
||
echo "====> Start to run xfstests." | ||
# run tests. | ||
cd /tmp/xfstests-dev | ||
# Some tests are not supported by fuse or cannot pass currently. | ||
sudo ./check -fuse -E $current_dir/xfstests_overlay.exclude | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,4 +8,5 @@ generic/467 | |
generic/471 | ||
generic/477 | ||
generic/591 | ||
generic/633 | ||
generic/633 | ||
generic/736 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters