From 5053dfa08c4310fe1e2ada21131c64562132fbc0 Mon Sep 17 00:00:00 2001 From: George Melikov Date: Tue, 8 Dec 2020 21:40:44 +0300 Subject: [PATCH] CI: add zloop workflow Run ztest via zloop for 20 minutes, total run time is ~30 minutes. Signed-off-by: George Melikov --- .github/workflows/zloop.yml | 67 +++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 .github/workflows/zloop.yml diff --git a/.github/workflows/zloop.yml b/.github/workflows/zloop.yml new file mode 100644 index 0000000000..30785b1450 --- /dev/null +++ b/.github/workflows/zloop.yml @@ -0,0 +1,67 @@ +name: zloop + +on: + push: + pull_request: + +jobs: + tests: + runs-on: ubuntu-latest + env: + TEST_DIR: /var/tmp/zloop + steps: + - uses: actions/checkout@v2 + with: + ref: ${{ github.event.pull_request.head.sha }} + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install --yes -qq build-essential autoconf libtool gdb \ + git alien fakeroot \ + zlib1g-dev uuid-dev libblkid-dev libselinux-dev \ + xfslibs-dev libattr1-dev libacl1-dev libudev-dev libdevmapper-dev \ + libssl-dev libffi-dev libaio-dev libelf-dev libmount-dev \ + libpam0g-dev \ + python-dev python-setuptools python-cffi \ + python3 python3-dev python3-setuptools python3-cffi + - name: Autogen.sh + run: | + sh autogen.sh + - name: Configure + run: | + ./configure --enable-debug --enable-debuginfo + - name: Make + run: | + make --no-print-directory -s pkg-utils pkg-kmod + - name: Install + run: | + sudo dpkg -i *.deb + # Update order of directories to search for modules, otherwise + # Ubuntu will load kernel-shipped ones. + sudo sed -i.bak 's/updates/extra updates/' /etc/depmod.d/ubuntu.conf + sudo depmod + sudo modprobe zfs + - name: Tests + run: | + sudo mkdir -p $TEST_DIR + # run for 20 minutes to have a total runner time of 30 minutes + sudo /usr/share/zfs/zloop.sh -t 1200 -l -m1 + - name: Prepare artifacts + if: failure() + run: | + sudo chmod +r -R $TEST_DIR/ + - uses: actions/upload-artifact@v2 + if: failure() + with: + name: Logs + path: | + /var/tmp/zloop/*/ + !/var/tmp/zloop/*/vdev/ + if-no-files-found: ignore + - uses: actions/upload-artifact@v2 + if: failure() + with: + name: Pool files + path: | + /var/tmp/zloop/*/vdev/ + if-no-files-found: ignore