switched CI builds to podman

* although podman builds are slower, they seem to be more reliable.
This commit is contained in:
Bernhard B 2025-04-19 20:24:44 +02:00
parent 20192a6eb9
commit 2aa89315ef
3 changed files with 16 additions and 18 deletions

View File

@ -32,10 +32,6 @@ jobs:
VERSION: ${{ github.run_number }} VERSION: ${{ github.run_number }}
run: | run: |
echo "Start CI build" echo "Start CI build"
#docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
#docker buildx create --name multibuilder
#docker buildx use multibuilder
#docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t bbernhard/signal-cli-rest-api:${VERSION}-ci .
docker run --privileged --rm tonistiigi/binfmt --install all docker run --privileged --rm tonistiigi/binfmt --install all
podman manifest create build podman manifest create build
podman build --format docker --platform linux/amd64,linux/arm64,linux/arm/v7 -t bbernhard/signal-cli-rest-api:${VERSION}-ci --manifest localhost/build . podman build --format docker --platform linux/amd64,linux/arm64,linux/arm/v7 -t bbernhard/signal-cli-rest-api:${VERSION}-ci --manifest localhost/build .

View File

@ -18,6 +18,8 @@ jobs:
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@v3
- name: Available platforms - name: Available platforms
run: echo ${{ steps.buildx.outputs.platforms }} run: echo ${{ steps.buildx.outputs.platforms }}
- name: Install Podman
run: sudo apt update && sudo apt install -y podman
release: release:
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
needs: setup needs: setup
@ -34,8 +36,7 @@ jobs:
env: env:
VERSION: ${{ github.event.inputs.version }} VERSION: ${{ github.event.inputs.version }}
run: | run: |
echo "Start CI build" echo "Start dev build"
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes docker run --privileged --rm tonistiigi/binfmt --install all
docker buildx create --name multibuilder podman manifest create build
docker buildx use multibuilder podman build --format docker --build-arg BUILD_VERSION_ARG=${VERSION} --manifest localhost/build --platform linux/amd64,linux/arm64,linux/arm/v7 -t bbernhard/signal-cli-rest-api:${VERSION}-dev -t bbernhard/signal-cli-rest-api:latest-dev . --push
docker buildx build --build-arg BUILD_VERSION_ARG=${VERSION} --platform linux/amd64,linux/arm64,linux/arm/v7 -t bbernhard/signal-cli-rest-api:${VERSION}-dev -t bbernhard/signal-cli-rest-api:latest-dev . --push

View File

@ -10,16 +10,18 @@ on:
jobs: jobs:
setup: setup:
runs-on: ubuntu-latest runs-on: ubuntu-22.04
steps: steps:
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v1 uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1 uses: docker/setup-buildx-action@v3
- name: Available platforms - name: Available platforms
run: echo ${{ steps.buildx.outputs.platforms }} run: echo ${{ steps.buildx.outputs.platforms }}
- name: Install Podman
run: sudo apt update && sudo apt install -y podman
release: release:
runs-on: ubuntu-latest runs-on: ubuntu-22.04
needs: setup needs: setup
steps: steps:
- uses: actions/checkout@master - uses: actions/checkout@master
@ -34,8 +36,7 @@ jobs:
env: env:
VERSION: ${{ github.event.inputs.version }} VERSION: ${{ github.event.inputs.version }}
run: | run: |
echo "Start CI build" echo "Start productive build"
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes docker run --privileged --rm tonistiigi/binfmt --install all
docker buildx create --name multibuilder podman manifest create build
docker buildx use multibuilder podman build --build-arg BUILD_VERSION_ARG=${VERSION} --manifest localhost/build --platform linux/amd64,linux/arm64,linux/arm/v7 -t bbernhard/signal-cli-rest-api:${VERSION} -t bbernhard/signal-cli-rest-api:latest . --push
docker buildx build --build-arg BUILD_VERSION_ARG=${VERSION} --platform linux/amd64,linux/arm64,linux/arm/v7 -t bbernhard/signal-cli-rest-api:${VERSION} -t bbernhard/signal-cli-rest-api:latest . --push