[meta-filesystems,v2] xfstests: add new recipe

Message ID 20220529084050.3660792-1-uvv.mail@gmail.com
State Under Review
Headers show
Series [meta-filesystems,v2] xfstests: add new recipe | expand

Commit Message

Vyacheslav Yurkov May 29, 2022, 8:40 a.m. UTC
From: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>

File system QA test suite

Signed-off-by: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>
---
 .../recipes-utils/xfstests/xfstests_git.bb    | 61 +++++++++++++++++++
 1 file changed, 61 insertions(+)
 create mode 100644 meta-filesystems/recipes-utils/xfstests/xfstests_git.bb

Patch

diff --git a/meta-filesystems/recipes-utils/xfstests/xfstests_git.bb b/meta-filesystems/recipes-utils/xfstests/xfstests_git.bb
new file mode 100644
index 000000000..868fa0330
--- /dev/null
+++ b/meta-filesystems/recipes-utils/xfstests/xfstests_git.bb
@@ -0,0 +1,61 @@ 
+SUMMARY = "File system QA test suite"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=74274e8a218423e49eefdea80bc55038"
+
+SRCREV_FORMAT = "xfstests_unionmount"
+
+SRC_URI = "\
+    git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git;branch=master;name=xfstests \
+    git://github.com/amir73il/unionmount-testsuite.git;branch=master;protocol=https;name=unionmount;destsuffix=unionmount-testsuite \
+"
+
+SRCREV_xfstests = "37881397f1aa62df3c63468049c80b301b0e89eb"
+SRCREV_unionmount = "cec4c51a3bf8ba80bb99fc74b302749d4e3d2f1d"
+
+S = "${WORKDIR}/git"
+
+inherit autotools-brokensep useradd
+
+DEPENDS += "xfsprogs acl"
+RDEPENDS:${PN} += "\
+    bash \
+    bc \
+    coreutils \
+    e2fsprogs \
+    e2fsprogs-tune2fs \
+    e2fsprogs-resize2fs \
+    libcap-bin \
+    overlayfs-progs \
+    perl \
+    python3 \
+    python3-core \
+    xfsprogs \
+    acl \
+"
+
+USERADD_PACKAGES = "${PN}"
+# these users are necessary to run the tests
+USERADD_PARAM:${PN} = "-U -m fsgqa; -N 123456-fsgqa; -N fsgqa2"
+
+EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root"
+
+# install-sh script in the project is outdated
+# we use the one from the latest libtool to solve installation issues
+# It looks like the upstream is not interested in having it fixed :(
+# https://www.spinics.net/lists/fstests/msg16981.html
+do_configure:prepend() {
+    cp ${STAGING_DIR_NATIVE}${datadir}/libtool/build-aux/install-sh ${B}
+}
+
+do_install:append() {
+    unionmount_target_dir=${D}/usr/xfstests/unionmount-testsuite
+    install -d ${D}/usr/xfstests/unionmount-testsuite/tests
+    install -D ${WORKDIR}/unionmount-testsuite/tests/* -t $unionmount_target_dir/tests
+    install ${WORKDIR}/unionmount-testsuite/*.py -t $unionmount_target_dir
+    install ${WORKDIR}/unionmount-testsuite/run -t $unionmount_target_dir
+    install ${WORKDIR}/unionmount-testsuite/README -t $unionmount_target_dir
+}
+
+FILES:${PN} += "\
+    /usr/xfstests \
+"