diff --git a/.github/workflows/qemu.yml b/.github/workflows/qemu.yml index ed96046..72d7159 100644 --- a/.github/workflows/qemu.yml +++ b/.github/workflows/qemu.yml @@ -10,8 +10,9 @@ env: MAKEFLAGS: -j2 jobs: - bullseye-x86: + build-boot-x86: runs-on: ubuntu-latest + name: build x86 steps: - name: Install dependencies @@ -26,11 +27,8 @@ jobs: bison \ bzip2 \ ca-certificates \ - debian-archive-keyring \ - debootstrap \ device-tree-compiler \ dosfstools \ - e2fsprogs \ flex \ gcc \ gcc-arm-none-eabi \ @@ -41,13 +39,9 @@ jobs: mtools \ parted \ pigz \ - pwgen \ python2-dev \ python3-dev \ python3-pkg-resources \ - qemu-system-x86 \ - ssh \ - sshpass \ swig - name: Checkout @@ -63,17 +57,76 @@ jobs: qemu-x86_defconfig \ i686-linux-gnu - - name: Build bullseye i386 + - uses: actions/upload-artifact@v2 + with: + name: boot-qemu_x86_virt-master + path: ${{ runner.temp }}/boot-qemu_x86_virt.bin.gz + if-no-files-found: error + retention-days: 1 + + test-debian-x86: + runs-on: ubuntu-latest + needs: build-boot-x86 + name: test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} + + strategy: + matrix: + include: + - os: debian + suite: buster + arch: i386 + - os: debian + suite: bullseye + arch: i386 + - os: debian + suite: sid + arch: i386 + fail-fast: false + + env: + DEBIAN_OS: ${{ matrix.os }} + DEBIAN_ARCH: ${{ matrix.arch }} + DEBIAN_SUITE: ${{ matrix.suite }} + + steps: + - name: Install dependencies + timeout-minutes: 5 + env: + DEBIAN_FRONTEND: noninteractive + run: | + sudo apt-get update + sudo apt-get --assume-yes \ + --no-install-recommends \ + install bzip2 \ + ca-certificates \ + debian-archive-keyring \ + debootstrap \ + e2fsprogs \ + pigz \ + pwgen \ + qemu-system-x86 \ + ssh \ + sshpass + + - name: Checkout + uses: actions/checkout@v2 + + - name: Build ${{ matrix.suite }} ${{ matrix.arch }} timeout-minutes: 5 run: | sudo env PATH=$GITHUB_WORKSPACE/scripts:$PATH \ ARTIFACTS_DIR=$RUNNER_TEMP \ - build-debian debian \ - i386 \ - bullseye + build-debian $DEBIAN_OS \ + $DEBIAN_ARCH \ + $DEBIAN_SUITE - - name: Test qemu_x86_virt + bullseye i386 + - uses: actions/download-artifact@v2 + with: + name: boot-qemu_x86_virt-master + path: ${{ runner.temp }} + + - name: Test qemu_x86_virt + ${{ matrix.suite }} ${{ matrix.arch }} timeout-minutes: 5 run: | ./test/qemu.sh $RUNNER_TEMP/boot-qemu_x86_virt.bin.gz \ - $RUNNER_TEMP/debian-bullseye-i386-*.bin.gz + $RUNNER_TEMP/${{ matrix.os }}-${{ matrix.suite }}-${{ matrix.arch }}-*.bin.gz