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 }}
run: |
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
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 .

View File

@@ -18,6 +18,8 @@ jobs:
uses: docker/setup-buildx-action@v3
- name: Available platforms
run: echo ${{ steps.buildx.outputs.platforms }}
- name: Install Podman
run: sudo apt update && sudo apt install -y podman
release:
runs-on: ubuntu-22.04
needs: setup
@@ -34,8 +36,7 @@ jobs:
env:
VERSION: ${{ github.event.inputs.version }}
run: |
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 --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
echo "Start dev build"
docker run --privileged --rm tonistiigi/binfmt --install all
podman manifest create build
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

View File

@@ -10,16 +10,18 @@ on:
jobs:
setup:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v3
- name: Available platforms
run: echo ${{ steps.buildx.outputs.platforms }}
- name: Install Podman
run: sudo apt update && sudo apt install -y podman
release:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
needs: setup
steps:
- uses: actions/checkout@master
@@ -34,8 +36,7 @@ jobs:
env:
VERSION: ${{ github.event.inputs.version }}
run: |
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 --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
echo "Start productive build"
docker run --privileged --rm tonistiigi/binfmt --install all
podman manifest create build
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