Fix: Temporarily remove linux/ppc64le, as the build crashes. #238
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Docker image | |
on: | |
push: | |
branches: [ 'master' ] | |
jobs: | |
Unit_Tests: | |
runs-on: ubuntu-latest | |
steps: | |
# Checkout | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: ./.github/actions/unit-tests | |
Integration_Tests: | |
runs-on: ubuntu-latest | |
steps: | |
# Checkout | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: ./.github/actions/integration-tests | |
with: | |
XOAUTH2_RELAYHOST_USERNAME: ${{ secrets.XOAUTH2_RELAYHOST_USERNAME }} | |
XOAUTH2_CLIENT_ID: ${{ secrets.XOAUTH2_CLIENT_ID }} | |
XOAUTH2_SECRET: ${{ secrets.XOAUTH2_SECRET }} | |
XOAUTH2_INITIAL_REFRESH_TOKEN: ${{ secrets.XOAUTH2_INITIAL_REFRESH_TOKEN }} | |
Helm_chart_Tests: | |
runs-on: ubuntu-latest | |
steps: | |
# Checkout | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: ./.github/actions/helm-chart-tests | |
Build_PostfixExporter: | |
runs-on: ubuntu-latest | |
needs: | |
- Helm_chart_Tests | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: ./.github/actions/build-postfix-exporter | |
with: | |
DOCKER_ACCESS_TOKEN: '${{ secrets.DOCKER_ACCESS_TOKEN }}' | |
tags: | | |
boky/postfix-exporter:latest | |
boky/postfix-exporter:edge | |
Build_Alpine: | |
runs-on: ubuntu-latest | |
needs: | |
- Unit_Tests | |
- Integration_Tests | |
steps: | |
# Checkout | |
- name: Checkout | |
uses: actions/checkout@v4 | |
# Buildkit setup | |
- uses: ./.github/actions/buildx-setup | |
# Docker hub login | |
- uses: ./.github/actions/docker-hub-login | |
with: | |
DOCKER_ACCESS_TOKEN: '${{ secrets.DOCKER_ACCESS_TOKEN }}' | |
- name: Cache Docker layers | |
uses: actions/cache@v4 | |
with: | |
path: /tmp/.buildx-cache | |
#key: ${{ runner.os }}-buildx-${{ hashFiles('**/Dockerfile') }} | |
key: ${{ runner.os }}-alpine-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-alpine- | |
- name: Fix issue with building Alpine # See https://gitlab.alpinelinux.org/alpine/aports/-/issues/12406 | |
run: | | |
if command -v update-binfmts; then update-binfmts --enable; fi | |
- name: Build and push Alpine | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
push: true | |
tags: | | |
boky/postfix:edge | |
boky/postfix:edge-alpine | |
# linux/s390x: "rsyslog (no such package)" | |
# Latest Alpine does not have all the packages for 386 anymore. :-( | |
# Notice: linux/ppc64le (temporarily) removed, as building the SASL library crashes with: | |
# [ 55%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/http.cc.o | |
# [ 61%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/log.cc.o | |
# [ 66%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/module.cc.o | |
# [ 72%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/token_store.cc.o | |
# c++: internal compiler error: Segmentation fault signal terminated program cc1plus | |
# Please submit a full bug report, with preprocessed source (by using -freport-bug). | |
# See <https://gitlab.alpinelinux.org/alpine/aports/-/issues> for instructions. | |
# make[2]: *** [src/CMakeFiles/sasl-xoauth2-static.dir/build.make:149: src/CMakeFiles/sasl-xoauth2-static.dir/token_store.cc.o] Error 4 | |
# make[1]: *** [CMakeFiles/Makefile2:169: src/CMakeFiles/sasl-xoauth2-static.dir/all] Error 2 | |
# make: *** [Makefile:166: all] Error 2 | |
platforms: "linux/arm/v6,linux/arm/v7,linux/amd64,linux/arm64" | |
cache-from: type=local,src=/tmp/.buildx-cache/alpine,mode=max,compression=estargz | |
cache-to: type=local,dest=/tmp/.buildx-cache-new/alpine | |
build-args: | | |
BASE_IMAGE=alpine:latest | |
- name: Move cache | |
run: | | |
rm -rf /tmp/.buildx-cache | |
mv /tmp/.buildx-cache-new /tmp/.buildx-cache | |
Build_Ubuntu: | |
runs-on: ubuntu-latest | |
needs: | |
- Unit_Tests | |
- Integration_Tests | |
steps: | |
# Checkout | |
- name: Checkout | |
uses: actions/checkout@v4 | |
# Buildkit setup | |
- uses: ./.github/actions/buildx-setup | |
# Docker hub login | |
- uses: ./.github/actions/docker-hub-login | |
with: | |
DOCKER_ACCESS_TOKEN: '${{ secrets.DOCKER_ACCESS_TOKEN }}' | |
- name: Cache Docker layers | |
uses: actions/cache@v4 | |
with: | |
path: /tmp/.buildx-cache | |
#key: ${{ runner.os }}-buildx-${{ hashFiles('**/Dockerfile') }} | |
key: ${{ runner.os }}-ubuntu-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-ubuntu- | |
- name: Build and push Ubuntu | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
push: true | |
tags: boky/postfix:edge-ubuntu | |
# Notice: linux/ppc64le (temporarily) removed, as building the SASL library crashes with: | |
# [ 55%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/http.cc.o | |
# [ 61%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/log.cc.o | |
# [ 66%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/module.cc.o | |
# [ 72%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/token_store.cc.o | |
# c++: internal compiler error: Segmentation fault signal terminated program cc1plus | |
# Please submit a full bug report, with preprocessed source (by using -freport-bug). | |
# See <https://gitlab.alpinelinux.org/alpine/aports/-/issues> for instructions. | |
# make[2]: *** [src/CMakeFiles/sasl-xoauth2-static.dir/build.make:149: src/CMakeFiles/sasl-xoauth2-static.dir/token_store.cc.o] Error 4 | |
# make[1]: *** [CMakeFiles/Makefile2:169: src/CMakeFiles/sasl-xoauth2-static.dir/all] Error 2 | |
# make: *** [Makefile:166: all] Error 2 | |
platforms: "linux/arm/v7,linux/amd64,linux/arm64,linux/s390x" | |
cache-from: type=local,src=/tmp/.buildx-cache/ubuntu,mode=max,compression=estargz | |
cache-to: type=local,dest=/tmp/.buildx-cache-new/ubuntu | |
build-args: | | |
BASE_IMAGE=ubuntu:noble | |
- name: Move cache | |
run: | | |
rm -rf /tmp/.buildx-cache | |
mv /tmp/.buildx-cache-new /tmp/.buildx-cache | |
Build_Debian: | |
runs-on: ubuntu-latest | |
needs: | |
- Unit_Tests | |
- Integration_Tests | |
steps: | |
# Checkout | |
- name: Checkout | |
uses: actions/checkout@v4 | |
# Buildkit setup | |
- uses: ./.github/actions/buildx-setup | |
# Docker hub login | |
- uses: ./.github/actions/docker-hub-login | |
with: | |
DOCKER_ACCESS_TOKEN: '${{ secrets.DOCKER_ACCESS_TOKEN }}' | |
- name: Cache Docker layers | |
uses: actions/cache@v4 | |
with: | |
path: /tmp/.buildx-cache | |
#key: ${{ runner.os }}-buildx-${{ hashFiles('**/Dockerfile') }} | |
key: ${{ runner.os }}-debian-${{ github.sha }} | |
restore-keys: | | |
${{ runner.os }}-debian- | |
- name: Build and push Debian | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
push: true | |
tags: boky/postfix:edge-debian | |
# Notice: linux/ppc64le (temporarily) removed, as building the SASL library crashes with: | |
# [ 55%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/http.cc.o | |
# [ 61%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/log.cc.o | |
# [ 66%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/module.cc.o | |
# [ 72%] Building CXX object src/CMakeFiles/sasl-xoauth2-static.dir/token_store.cc.o | |
# c++: internal compiler error: Segmentation fault signal terminated program cc1plus | |
# Please submit a full bug report, with preprocessed source (by using -freport-bug). | |
# See <https://gitlab.alpinelinux.org/alpine/aports/-/issues> for instructions. | |
# make[2]: *** [src/CMakeFiles/sasl-xoauth2-static.dir/build.make:149: src/CMakeFiles/sasl-xoauth2-static.dir/token_store.cc.o] Error 4 | |
# make[1]: *** [CMakeFiles/Makefile2:169: src/CMakeFiles/sasl-xoauth2-static.dir/all] Error 2 | |
# make: *** [Makefile:166: all] Error 2 | |
platforms: "linux/386,linux/arm/v5,linux/arm/v7,linux/arm64/v8,linux/amd64,linux/arm64,linux/mips64le,linux/s390x" | |
cache-from: type=local,src=/tmp/.buildx-cache/debian,mode=max,compression=estargz | |
cache-to: type=local,dest=/tmp/.buildx-cache-new/debian | |
build-args: | | |
BASE_IMAGE=debian:bookworm-slim | |
- name: Move cache | |
run: | | |
rm -rf /tmp/.buildx-cache | |
mv /tmp/.buildx-cache-new /tmp/.buildx-cache | |