Skip to content

Try to fix arm64 libc sigsegv issue by reinstalling qemu #210

Try to fix arm64 libc sigsegv issue by reinstalling qemu

Try to fix arm64 libc sigsegv issue by reinstalling qemu #210

Workflow file for this run

---
name: CI
on: [ workflow_dispatch, push, pull_request ]
jobs:
# omnilint:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4.2.2
# - uses: docker://lpenz/omnilint:0.5.2
# pytest:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4.2.2
# - uses: actions/setup-python@v5.4.0
# - name: Install pytest
# run: python -m pip install pytest
# - run: pytest
# test:
# strategy:
# matrix:
# preset:
# - cppcheck
# - install
# - clang-tidy
# - clang-sanitize-address
# - clang-sanitize-memory
# - clang-sanitize-undefined
# - clang-sanitize-dataflow
# - clang-sanitize-safe-stack
# - gcc-sanitize-address
# - valgrind
# - cpack
# - coverage
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4.2.2
# with:
# path: ghaction-cmake
# - uses: actions/checkout@v4.2.2
# with:
# repository: lpenz/execpermfix
# path: execpermfix
# fetch-depth: 0
# - uses: ./ghaction-cmake
# with:
# preset: ${{ matrix.preset }}
# working-directory: execpermfix
publish-dockerhub:
# needs: [ omnilint, test ]
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
variant:
# # Global default: Debian Bullseye
# - base: debian:bullseye
# platform: 'linux/386,linux/amd64,linux/arm/v7,linux/arm64'
# label: ''
# # Global default platforms: Debian Bullseye
# - base: debian:bullseye
# platform: linux/386
# label: -386
# - base: debian:bullseye
# platform: linux/amd64
# label: -amd64
# - base: debian:bullseye
# platform: linux/arm/v7
# label: -armv7
- base: debian:bullseye
platform: linux/arm64
label: -arm64
# # Debian Bullseye platforms:
# - base: debian:bullseye
# platform: linux/386
# label: -debian-bullseye-386
# - base: debian:bullseye
# platform: linux/amd64
# label: -debian-bullseye-amd64
# - base: debian:bullseye
# platform: linux/arm/v7
# label: -debian-bullseye-armv7
# - base: debian:bullseye
# platform: linux/arm64
# label: -debian-bullseye-arm64
# # Debian Bookworm platforms:
# - base: debian:bookworm
# platform: linux/386
# label: -debian-bookworm-386
# - base: debian:bookworm
# platform: linux/amd64
# label: -debian-bookworm-amd64
# - base: debian:bookworm
# platform: linux/arm/v6
# label: -debian-bookworm-armv6
# - base: debian:bookworm
# platform: linux/arm/v7
# label: -debian-bookworm-armv7
# - base: debian:bookworm
# platform: linux/arm64
# label: -debian-bookworm-arm64
# # Debian Trixie platforms:
# - base: debian:trixie
# platform: linux/386
# label: -debian-trixie-386
# - base: debian:trixie
# platform: linux/amd64
# label: -debian-trixie-amd64
# - base: debian:trixie
# platform: linux/arm/v6
# label: -debian-trixie-armv6
# - base: debian:trixie
# platform: linux/arm/v7
# label: -debian-trixie-armv7
# - base: debian:trixie
# platform: linux/arm64
# label: -debian-trixie-arm64
# # Ubuntu Jammy platforms:
# - base: ubuntu:jammy
# platform: linux/amd64
# label: -ubuntu-jammy-amd64
# - base: ubuntu:jammy
# platform: linux/arm/v7
# label: -ubuntu-jammy-armv7
# - base: ubuntu:jammy
# platform: linux/arm64/v8
# label: -ubuntu-jammy-arm64
# # Ubuntu Noble platforms:
# - base: ubuntu:noble
# platform: linux/amd64
# label: -ubuntu-noble-amd64
# - base: ubuntu:noble
# platform: linux/arm/v7
# label: -ubuntu-noble-armv7
# - base: ubuntu:noble
# platform: linux/arm64/v8
# label: -ubuntu-noble-arm64
# # Raspbian Bullseye:
# - base: lpenz/raspbian-bullseye-armhf
# platform: linux/armhf
# label: -raspbian-bullseye-armhf
# # Raspberry Pi OS Bullseye:
# - base: lpenz/rpios-bullseye-armhf
# platform: linux/armhf
# label: -rpios-bullseye-armhf
# - base: lpenz/rpios-bullseye-arm64
# platform: linux/arm64
# label: -rpios-bullseye-arm64
steps:
- uses: actions/checkout@v4.2.2
- id: version
uses: docker://lpenz/ghaction-version-gen:0.14.1
- uses: docker/setup-qemu-action@v3.4.0
# - name: qemu fix from https://github.com/docker/buildx/issues/314
# run: |
# set -e -x;
# sudo apt update;
# sudo apt upgrade -y;
# sudo apt-get install -y libpixman-1-dev make ninja-build libglib2.0-dev;
# wget https://download.qemu.org/qemu-7.0.0.tar.xz;
# tar xvJf qemu-7.0.0.tar.xz;
# cd qemu-7.0.0;
# ./configure;
# make;
# docker run --rm --privileged multiarch/qemu-user-static --reset -p yes -c yes;
- run: |
set -e -x;
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes -c yes;
docker pull tonistiigi/binfmt:latest;
docker run --privileged --rm tonistiigi/binfmt --uninstall qemu-*;
docker run --privileged --rm tonistiigi/binfmt --install all
- uses: docker/setup-buildx-action@v3.9.0
# - run: |
# set -e -x;
# qemu-system-aarch64 --version
- uses: docker/login-action@v3.3.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
if: ${{ steps.version.outputs.version_docker_ci != 'null' }}
- uses: docker/build-push-action@v6.14.0
with:
build-args: BASE=${{ matrix.variant.base }}
push: ${{ steps.version.outputs.version_docker_ci != 'null' }}
platforms: ${{ matrix.variant.platform }}
tags: ${{ github.repository }}:${{ steps.version.outputs.version_docker_ci }}${{ matrix.variant.label }}
publish-github-release:
needs: [ publish-dockerhub ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- id: version
uses: docker://lpenz/ghaction-version-gen:0.14.1
- name: publish github release
uses: "marvinpinto/action-automatic-releases@v1.2.1"
if: steps.version.outputs.version_tagged != ''
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
prerelease: false