Fix stray "no" in configure output
[zfs.git] / .github / workflows / zloop.yml
blob90d93c48e4bda57c70ac4496895726229e142aa9
1 name: zloop
3 on:
4   push:
5   pull_request:
7 concurrency:
8   group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
9   cancel-in-progress: true
11 jobs:
12   zloop:
13     runs-on: ubuntu-24.04
14     env:
15       TEST_DIR: /var/tmp/zloop
16     steps:
17     - uses: actions/checkout@v4
18       with:
19         ref: ${{ github.event.pull_request.head.sha }}
20     - name: Install dependencies
21       run: |
22         sudo apt-get purge -y snapd google-chrome-stable firefox
23         ONLY_DEPS=1 .github/workflows/scripts/qemu-3-deps.sh ubuntu24
24     - name: Autogen.sh
25       run: |
26         sed -i '/DEBUG_CFLAGS="-Werror"/s/^/#/' config/zfs-build.m4
27         ./autogen.sh
28     - name: Configure
29       run: |
30         ./configure --prefix=/usr --enable-debug --enable-debuginfo \
31            --enable-asan --enable-ubsan \
32            --enable-debug-kmem --enable-debug-kmem-tracking
33     - name: Make
34       run: |
35         make -j$(nproc)
36     - name: Install
37       run: |
38         sudo make install
39         sudo depmod
40         sudo modprobe zfs
41     - name: Tests
42       run: |
43         sudo mkdir -p $TEST_DIR
44         # run for 10 minutes or at most 6 iterations for a maximum runner
45         # time of 60 minutes.
46         sudo /usr/share/zfs/zloop.sh -t 600 -I 6 -l -m 1 -- -T 120 -P 60
47     - name: Prepare artifacts
48       if: failure()
49       run: |
50         sudo chmod +r -R $TEST_DIR/
51     - name: Ztest log
52       if: failure()
53       run: |
54         grep -B10 -A1000 'ASSERT' $TEST_DIR/*/ztest.out || tail -n 1000 $TEST_DIR/*/ztest.out
55     - name: Gdb log
56       if: failure()
57       run: |
58         sed -n '/Backtraces (full)/q;p' $TEST_DIR/*/ztest.gdb
59     - name: Zdb log
60       if: failure()
61       run: |
62         cat $TEST_DIR/*/ztest.zdb
63     - uses: actions/upload-artifact@v4
64       if: failure()
65       with:
66         name: Logs
67         path: |
68           /var/tmp/zloop/*/
69           !/var/tmp/zloop/*/vdev/
70         if-no-files-found: ignore
71     - uses: actions/upload-artifact@v4
72       if: failure()
73       with:
74         name: Pool files
75         path: |
76           /var/tmp/zloop/*/vdev/
77         if-no-files-found: ignore