workflow: add missing --platform to Dockerfile

This commit is contained in:
Kamil Trzcinski 2025-06-08 18:23:28 +02:00 committed by Kamil Trzciński
parent 350304e4c4
commit 50bb175ca4
4 changed files with 32 additions and 11 deletions

View File

@ -1,6 +1,7 @@
ARG DOCKER_ARCH
ARG DEBIAN_VERSION
FROM ${DOCKER_ARCH}debian:${DEBIAN_VERSION} as build_env
ARG DOCKER_REPO
FROM --platform=linux/${DOCKER_ARCH} ${DOCKER_REPO}debian:${DEBIAN_VERSION} as build_env
RUN apt-get -y update && apt-get -y install gnupg2

View File

@ -1,7 +1,7 @@
#!/bin/bash
if [[ $# -lt 3 ]]; then
echo "usage: $0 <generic|raspi> <buster|bullseye> <amd64|arm32v7|arm64v8>"
echo "usage: $0 <generic|raspi> <bullseye|bookworm> <amd64|arm32v7|arm64v8>"
exit 1
fi
@ -10,18 +10,18 @@ docker_image="camera_streamer_build_env"
build_type="raspi"
[[ -n "$1" ]] && build_type="$1"
debian_version="bullseye"
debian_version="bookworm"
[[ -n "$2" ]] && debian_version="$2" && docker_image="${docker_image}_${2}"
docker_arch=""
[[ -n "$3" ]] && docker_arch="$3/" && docker_image="${docker_image}_${3}"
[[ -n "$3" ]] && docker_arch="$3" && docker_image="${docker_image}_${3}"
PWD=$(pwd)
ROOT=$(cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/../.." &> /dev/null && pwd)
set -xeo pipefail
docker build -t "$docker_image" \
DOCKER_BUILDKIT=1 docker build -t "$docker_image" \
--build-arg "DOCKER_ARCH=$docker_arch" \
--build-arg "DEBIAN_VERSION=$debian_version" \
--build-arg "BUILD_TYPE=$build_type" \

View File

@ -9,7 +9,7 @@ jobs:
strategy:
matrix:
debian_version: [bullseye, bookworm]
docker_arch: [amd64, arm32v7, arm64v8]
docker_arch: [amd64, arm/v7, arm64/v8]
build_type: [generic, raspi]
exclude:
- docker_arch: amd64
@ -38,11 +38,21 @@ jobs:
- 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 .
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.docker_arch }}/
DOCKER_ARCH: ${{ matrix.docker_arch }}
BUILD_TYPE: ${{ matrix.build_type }}
DOCKER_BUILDKIT: 1
- name: Create container
run: docker create --name deb_make deb_make
- name: Copy files

View File

@ -12,7 +12,7 @@ jobs:
strategy:
matrix:
debian_version: [bullseye, bookworm]
docker_arch: [amd64, arm32v7, arm64v8]
docker_arch: [amd64, arm/v7, arm64/v8]
build_type: [generic, raspi]
exclude:
- docker_arch: amd64
@ -28,11 +28,21 @@ jobs:
- 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 .
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.docker_arch }}/
DOCKER_ARCH: ${{ matrix.docker_arch }}
BUILD_TYPE: ${{ matrix.build_type }}
DOCKER_BUILDKIT: 1
- name: Create container
run: docker create --name deb_make deb_make
- name: Copy files