Skip to content

Commit eed5428

Browse files
committed
btrfs-progs: ci: split devel tests to groups
The tests are run in one job, we can make it parallel by grouping related tests together. - musl test, using docker, does not have to wait for build - simple tests, library, ioctl, api, ... - the rest are functional tests Signed-off-by: David Sterba <dsterba@suse.com>
1 parent 8397fee commit eed5428

File tree

1 file changed

+42
-19
lines changed

1 file changed

+42
-19
lines changed

.github/workflows/devel.yml

Lines changed: 42 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -9,35 +9,34 @@ on:
99
branches:
1010
- devel
1111
jobs:
12-
build:
12+
build-simple:
13+
name: Simple build tests
1314
runs-on: ubuntu-latest
1415
steps:
1516
- uses: actions/checkout@v3
16-
- run: uname -a
17-
- run: sudo modprobe btrfs
1817
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev python3-sphinx libaio-dev liburing-dev attr jq
1918
- name: Configure
2019
run: ./autogen.sh && ./configure
21-
- name: Make
22-
run: make V=1
23-
- name: Musl build
24-
run: sudo docker run kdave/ci-musl-x86_64 ./test-build $GITHUB_REF_NAME --disable-documentation --disable-backtrace --disable-libudev
2520
- name: Make static
2621
run: make V=1 EXTRA_CFLAGS='-march=x86-64' static
2722
- name: Make box.static
2823
run: make V=1 EXTRA_CFLAGS='-march=x86-64' btrfs.box.static
29-
- name: Tests cli
30-
run: sudo make TEST_LOG=dump test-cli
31-
- name: Tests mkfs
32-
run: sudo make TEST_LOG=dump test-mkfs
33-
- name: Tests check
34-
run: sudo make TEST_LOG=dump test-check
35-
- name: Tests check (lowmem)
36-
run: sudo make TEST_LOG=dump test-check-lowmem
37-
- name: Tests misc
38-
run: sudo make TEST_LOG=dump test-misc
39-
- name: Tests fuzz
40-
run: sudo make TEST_LOG=dump test-fuzz
24+
build-musl:
25+
name: Build test on musl
26+
runs-on: ubuntu-latest
27+
steps:
28+
- name: Musl build
29+
run: sudo docker run kdave/ci-musl-x86_64 ./test-build $GITHUB_REF_NAME --disable-documentation --disable-backtrace --disable-libudev
30+
test-quick:
31+
name: Quick tests
32+
runs-on: ubuntu-latest
33+
steps:
34+
- uses: actions/checkout@v3
35+
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev python3-sphinx libaio-dev liburing-dev attr jq
36+
- name: Configure
37+
run: ./autogen.sh && ./configure --disable-documentation
38+
- name: Make
39+
run: make V=1
4140
- name: Tests json formatter
4241
run: make test-json
4342
- name: Tests string-table formatter
@@ -54,3 +53,27 @@ jobs:
5453
run: make hash-speedtest && ./hash-speedtest 1
5554
- name: Tests hash (correctness)
5655
run: make hash-vectest && ./hash-vectest
56+
test-all:
57+
name: Functional tests
58+
runs-on: ubuntu-latest
59+
steps:
60+
- uses: actions/checkout@v3
61+
- run: uname -a
62+
- run: sudo modprobe btrfs
63+
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev python3-sphinx libaio-dev liburing-dev attr jq
64+
- name: Configure
65+
run: ./autogen.sh && ./configure
66+
- name: Make
67+
run: make V=1
68+
- name: Tests cli
69+
run: sudo make TEST_LOG=dump test-cli
70+
- name: Tests mkfs
71+
run: sudo make TEST_LOG=dump test-mkfs
72+
- name: Tests check
73+
run: sudo make TEST_LOG=dump test-check
74+
- name: Tests check (lowmem)
75+
run: sudo make TEST_LOG=dump test-check-lowmem
76+
- name: Tests misc
77+
run: sudo make TEST_LOG=dump test-misc
78+
- name: Tests fuzz
79+
run: sudo make TEST_LOG=dump test-fuzz

0 commit comments

Comments
 (0)