`arm64` build in ubuntu:22.04 errors out with `error processing package libc-bin`. This issue is a known issue between the binfmt (running different architectures via QEMU) and the libc ldconfig binary running in container. We're "suddenly" having issues as ubuntu-latest (which is the OS version we run the GH action container with) was recently changed from 22.04 to 24.04 and hence why upgrading the container userspace from 22.04 to 24.04 solves the problem. Removed deprecated package `python3-distutils`. Update image name from `20250111-0` to `20250222-0`. Signed-off-by: Ruoqing He <heruoqing@iscas.ac.cn>
65 lines
1.7 KiB
YAML
65 lines
1.7 KiB
YAML
name: Cloud Hypervisor's Docker image update
|
|
on:
|
|
push:
|
|
branches: main
|
|
paths: resources/Dockerfile
|
|
pull_request:
|
|
paths: resources/Dockerfile
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
REGISTRY: ghcr.io
|
|
IMAGE_NAME: ${{ github.repository }}
|
|
|
|
jobs:
|
|
main:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Code checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Login to ghcr
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: ${{ env.REGISTRY }}
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
|
|
- name: Docker meta
|
|
id: meta
|
|
uses: docker/metadata-action@v5
|
|
with:
|
|
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
# generate Docker tags based on the following events/attributes
|
|
tags: |
|
|
type=raw,value=20250222-0
|
|
type=sha
|
|
|
|
- name: Build and push
|
|
if: ${{ github.event_name == 'push' }}
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
file: ./resources/Dockerfile
|
|
platforms: linux/amd64,linux/arm64
|
|
push: true
|
|
tags: ${{ steps.meta.outputs.tags }}
|
|
|
|
- name: Build only
|
|
if: ${{ github.event_name == 'pull_request' }}
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
file: ./resources/Dockerfile
|
|
platforms: linux/amd64,linux/arm64
|
|
tags: ${{ steps.meta.outputs.tags }}
|
|
|
|
- name: Image digest
|
|
run: echo ${{ steps.docker_build.outputs.digest }}
|