From d0f612ad6116cc29737b05f545054026a6654f97 Mon Sep 17 00:00:00 2001 From: Vasiliy Stelmachenok Date: Thu, 26 Feb 2026 16:14:47 +0300 Subject: [PATCH] ci: Add tests for filesystems Signed-off-by: Vasiliy Stelmachenok --- .github/workflows/build.yml | 6 ++- .../cachyos/dailylive/test_install_calamares | 38 ++++++++++++++++--- 2 files changed, 37 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f56f434..7524f96 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -45,7 +45,7 @@ jobs: name: cachyos-desktop-linux-${{ steps.date.outputs.builddate }} path: out/desktop/* quicktest: - name: Testing (${{ matrix.bootloader }}) + name: Testing (${{ matrix.bootloader }} / ${{ matrix.filesystem }}) runs-on: ubuntu-latest needs: build container: @@ -56,6 +56,7 @@ jobs: max-parallel: 4 matrix: bootloader: [grub, systemd-boot, refind, limine] + filesystem: [btrfs, xfs, ext4, f2fs, zfs] steps: - name: Clone CachyOS-Live-ISO id: clone @@ -108,11 +109,12 @@ jobs: QUICKEMU_DISPLAY: "none" QUICKEMU_VM_DIR: "./machines" TEST_BOOTLOADER: "${{ matrix.bootloader }}" + TEST_FILESYSTEM: "${{ matrix.filesystem }}" - name: Upload results to artifacts id: upload-results if: always() uses: actions/upload-artifact@v4 with: - name: cachyos-desktop-linux-results-${{needs.build.outputs.builddate}}-${{ matrix.bootloader }} + name: cachyos-desktop-linux-results-${{needs.build.outputs.builddate}}-${{ matrix.bootloader }}-${{ matrix.filesystem }} path: results/* diff --git a/testcases/cachyos/dailylive/test_install_calamares b/testcases/cachyos/dailylive/test_install_calamares index e47b806..d9bd18b 100644 --- a/testcases/cachyos/dailylive/test_install_calamares +++ b/testcases/cachyos/dailylive/test_install_calamares @@ -83,13 +83,23 @@ function test_calamares_partitions() { qt_send_key_combo "tab" qt_send_key_combo "tab" qt_send_key_combo "spc" - qt_send_key_combo "shift-tab" - qt_send_key_combo "shift-tab" - qt_send_key_combo "shift-tab" - qt_send_key_combo "shift-tab" - qt_send_key_combo "shift-tab" + qt_send_key_combo "tab" qt_send_key_combo "spc" + + for ((i=0; i < filesystem_index; i++)); do + qt_send_key_combo "down" + done + + qt_send_key "enter" + qt_wait_for_seconds 2 + qt_send_key_combo "shift-tab" + qt_send_key_combo "shift-tab" + qt_send_key_combo "shift-tab" + qt_send_key_combo "shift-tab" + qt_send_key_combo "shift-tab" + qt_send_key_combo "shift-tab" qt_screenshot_ppm "$FUNCNAME" + qt_send_key_combo "spc" } function test_calamares_desktop() { @@ -153,6 +163,14 @@ function test_input_validation() { ["limine"]="4" ) + local -Ar filesystems=( + ["btrfs"]="0" + ["xfs"]="1" + ["ext4"]="2" + ["f2fs"]="3" + ["zfs"]="4" + ) + local bootloader="${TEST_BOOTLOADER:-Limine}" local -g bootloader_index="${bootloaders[$bootloader]}" @@ -163,6 +181,16 @@ function test_input_validation() { qt_echo "✅ Selected bootloader is $bootloader ($bootloader_index)" fi + local filesystem="${TEST_FILESYSTEM:-btrfs}" + local -g filesystem_index="${filesystems[$filesystem]}" + + if [ -z "$filesystem_index" ]; then + qt_echo "🚨 Unknown filesystem passed: $filesystem" + exit 1 + else + qt_echo "✅ Selected filesystem is $filesystem ($filesystem_index)" + fi + qt_echo "✅ Validation passed" }