Skip to content

Commit d185801

Browse files
committed
btrfs-progs: ci: split functional tests for devel workflow
We can run more tests in parallel, the overall CI run time will be shorter (from 12m to 5m) at the cost of building the same sources. Also build documentation only once. Signed-off-by: David Sterba <dsterba@suse.com>
1 parent 1faaa87 commit d185801

File tree

1 file changed

+45
-9
lines changed

1 file changed

+45
-9
lines changed

.github/workflows/devel.yml

Lines changed: 45 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,12 @@ jobs:
1414
runs-on: ubuntu-latest
1515
steps:
1616
- uses: actions/checkout@v3
17-
- 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
17+
- run: sudo modprobe btrfs
18+
- 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
1819
- name: Configure
1920
run: ./autogen.sh && ./configure
21+
- name: Documentation
22+
run: make V=1 -C Documentation
2023
- name: Make static
2124
run: make V=1 EXTRA_CFLAGS='-march=x86-64' static
2225
- name: Make box.static
@@ -32,7 +35,8 @@ jobs:
3235
runs-on: ubuntu-latest
3336
steps:
3437
- 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
38+
- run: sudo modprobe btrfs
39+
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev libaio-dev liburing-dev attr jq
3640
- name: Configure
3741
run: ./autogen.sh && ./configure --disable-documentation
3842
- name: Make
@@ -53,27 +57,59 @@ jobs:
5357
run: make hash-speedtest && ./hash-speedtest 1
5458
- name: Tests hash (correctness)
5559
run: make hash-vectest && ./hash-vectest
56-
test-all:
57-
name: Functional tests
60+
test-mkfs:
61+
name: Test mkfs.btrfs
5862
runs-on: ubuntu-latest
5963
steps:
6064
- uses: actions/checkout@v3
61-
- run: uname -a
6265
- 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
66+
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev libaio-dev liburing-dev attr jq
6467
- name: Configure
65-
run: ./autogen.sh && ./configure
68+
run: ./autogen.sh && ./configure --disable-documentation
6669
- name: Make
6770
run: make V=1
68-
- name: Tests cli
69-
run: sudo make TEST_LOG=dump test-cli
7071
- name: Tests mkfs
7172
run: sudo make TEST_LOG=dump test-mkfs
73+
test-check:
74+
name: Test btrfs check
75+
runs-on: ubuntu-latest
76+
steps:
77+
- uses: actions/checkout@v3
78+
- run: sudo modprobe btrfs
79+
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev libaio-dev liburing-dev attr jq
80+
- name: Configure
81+
run: ./autogen.sh && ./configure --disable-documentation
82+
- name: Make
83+
run: make V=1
7284
- name: Tests check
7385
run: sudo make TEST_LOG=dump test-check
7486
- name: Tests check (lowmem)
7587
run: sudo make TEST_LOG=dump test-check-lowmem
88+
test-misc:
89+
name: Test misc
90+
runs-on: ubuntu-latest
91+
steps:
92+
- uses: actions/checkout@v3
93+
- run: sudo modprobe btrfs
94+
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev libaio-dev liburing-dev attr jq
95+
- name: Configure
96+
run: ./autogen.sh && ./configure --disable-documentation
97+
- name: Make
98+
run: make V=1
7699
- name: Tests misc
77100
run: sudo make TEST_LOG=dump test-misc
101+
test-other:
102+
name: Test cli, fuzz
103+
runs-on: ubuntu-latest
104+
steps:
105+
- uses: actions/checkout@v3
106+
- run: sudo modprobe btrfs
107+
- run: sudo apt-get install -y pkg-config gcc liblzo2-dev libzstd-dev libblkid-dev uuid-dev zlib1g-dev libext2fs-dev e2fsprogs libudev-dev libaio-dev liburing-dev attr jq
108+
- name: Configure
109+
run: ./autogen.sh && ./configure --disable-documentation
110+
- name: Make
111+
run: make V=1
112+
- name: Tests cli
113+
run: sudo make TEST_LOG=dump test-cli
78114
- name: Tests fuzz
79115
run: sudo make TEST_LOG=dump test-fuzz

0 commit comments

Comments
 (0)