Skip to content

sd-card-images CI

sd-card-images CI #329

Workflow file for this run

name: sd-card-images CI
on:
push:
branches: "*"
pull_request:
branches:
- "master"
schedule:
# Every Sunday morning
- cron: "00 03 * * 0"
jobs:
test-debian-x86:
runs-on: ubuntu-latest
name: test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }}
strategy:
matrix:
include:
- os: debian
suite: bullseye
arch: i386
- os: debian
suite: bookworm
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 bc \
bison \
bzip2 \
ca-certificates \
debian-archive-keyring \
debootstrap \
device-tree-compiler \
dosfstools \
e2fsprogs \
flex \
gcc \
gcc-arm-none-eabi \
gcc-i686-linux-gnu \
git \
libssl-dev \
make \
mtools \
parted \
pigz \
pwgen \
python3-dev \
python3-pkg-resources \
ssh \
sshpass \
swig \
qemu-system-x86
- name: Checkout
uses: actions/checkout@v4
- name: Build qemu_x86_virt
timeout-minutes: 5
run: |
env PATH=$GITHUB_WORKSPACE/scripts:$PATH \
ARTIFACTS_DIR=$RUNNER_TEMP \
U_BOOT_GIT_REV="v2023.07" \
U_BOOT_GIT_URL="https://github.com/u-boot/u-boot.git" \
build-boot qemu_x86_virt \
qemu-x86 \
qemu-x86_defconfig \
i686-linux-gnu
- name: Build ${{ matrix.suite }} ${{ matrix.arch }}
timeout-minutes: 5
run: |
sudo env PATH=$GITHUB_WORKSPACE/scripts:$PATH \
ARTIFACTS_DIR=$RUNNER_TEMP \
build-debian $DEBIAN_OS \
$DEBIAN_ARCH \
$DEBIAN_SUITE
- name: Test qemu_x86_virt + ${{ matrix.suite }} ${{ matrix.arch }}
timeout-minutes: 15
run: |
sudo ./test/qemu.sh $RUNNER_TEMP/boot-qemu_x86_virt.bin.gz \
$RUNNER_TEMP/${{ matrix.os }}-${{ matrix.suite }}-${{ matrix.arch }}-*.bin.gz
build-docker:
runs-on: ubuntu-latest
needs: test-debian-x86
name: build docker images
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up QEMU
timeout-minutes: 1
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
timeout-minutes: 1
uses: docker/setup-buildx-action@v2
- name: Build
timeout-minutes: 30
uses: docker/build-push-action@v3
with:
context: .
platforms: linux/amd64,linux/arm64