2025-06-08 19:43:00 +02:00

69 lines
1.9 KiB
YAML

on:
push:
paths-ignore:
- '.github/workflows/build_test.yaml'
- 'RELEASE.md'
pull_request:
workflow_dispatch:
schedule:
- cron: '0 15 * * 2' # Runs at 15:00 (3pm) UTC every Tuesday
jobs:
build:
runs-on: ${{ matrix.arch.runner }}
strategy:
fail-fast: false
matrix:
debian_version: [bullseye, bookworm]
arch:
- docker: amd64
variant: amd64
runner: ubuntu-24.04
- docker: arm/v7
variant: arm32v7
runner: ubuntu-24.04
- docker: arm64/v8
variant: arm64v8
runner: ubuntu-24.04-arm
build_type: [generic, raspi]
exclude:
- arch:
docker: amd64
build_type: raspi
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: recursive
- name: Set GIT_VERSION
run: echo "GIT_VERSION=$(git describe --tags)" >> $GITHUB_ENV
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Build Dockerfile
run: |
docker build \
--target deb_make \
--tag deb_make \
--file .github/ci/Dockerfile \
--build-arg GIT_VERSION \
--build-arg DOCKER_ARCH \
--build-arg DEBIAN_VERSION \
--build-arg BUILD_TYPE \
.
env:
DEBIAN_VERSION: ${{ matrix.debian_version }}
DOCKER_ARCH: ${{ matrix.arch.docker }}
BUILD_TYPE: ${{ matrix.build_type }}
DOCKER_BUILDKIT: 1
- name: Create container
run: docker create --name deb_make deb_make
- name: Copy files
run: docker cp deb_make:/deb/. deb/
- name: 'Upload debian files'
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.debian_version }}-${{ matrix.arch.variant }}-${{ matrix.build_type }}.zip
path: deb/
retention-days: 14