Include Debian 11 in CI automations (#111)

* Include Debian 11 in CI automations

* Disabled bullseye arm for now until we figure out a fix for the qemu crash

* Use qemu-static package from Ubuntu 20.10 when building for bullseye to workaround the segfault issue
This commit is contained in:
Juan Jose Medina
2021-09-01 14:22:27 +02:00
committed by GitHub
parent 688305299d
commit 58a9dd8846
3 changed files with 34 additions and 5 deletions
+31 -3
View File
@@ -40,6 +40,37 @@ runs:
echo "gcloud is installed" echo "gcloud is installed"
fi fi
shell: bash shell: bash
- name: "Install QEMU"
run: |
set -x
if [[ "${{ inputs.platform }}" == "arm64" ]]; then
echo "Installing QEMU"
# qemu-user-static fails with segfaults building bullseye
# We will revisit this when 20.10 is allowed as build slave on GitHub Actions
# https://bugs.launchpad.net/qemu/+bug/1749393
# https://bugs.launchpad.net/ubuntu/+source/qemu/+bug/1928075
if [[ "${{ inputs.dist }}" == "bullseye" ]]; then
sudo tee /etc/apt/preferences.d/qemu <<EOF
Package: *
Pin: release n=focal
Pin-Priority: 900
Package: *
Pin: release n=groovy
Pin-Priority: 400
EOF
sudo tee /etc/apt/sources.list.d/groovy.list <<EOF
deb http://archive.ubuntu.com/ubuntu groovy universe
deb http://archive.ubuntu.com/ubuntu groovy-updates universe
deb http://security.ubuntu.com/ubuntu groovy-security universe
EOF
sudo apt-get update -qq && sudo apt-get install -y -t groovy qemu-user-static
else
sudo apt-get update -qq && sudo apt-get install -y qemu-user-static
fi
else
echo "QEMU is not required for platform ${{ inputs.platform }}"
fi
shell: bash
- name: Build snapshot id - name: Build snapshot id
id: snapshot-id id: snapshot-id
run: | run: |
@@ -51,9 +82,6 @@ runs:
run: | run: |
set -x set -x
echo Building ${{ inputs.dist }} - ${{ inputs.platform }} echo Building ${{ inputs.dist }} - ${{ inputs.platform }}
if [[ "${{ inputs.platform }}" == "arm64" ]]; then
sudo apt-get update -qq && sudo apt-get install -y qemu-user-static
fi
sudo -E bash -x buildone "${{ inputs.dist }}" "${{ inputs.platform }}" sudo -E bash -x buildone "${{ inputs.dist }}" "${{ inputs.platform }}"
if ${{ inputs.build_snapshot }} ; then if ${{ inputs.build_snapshot }} ; then
sudo -E bash -x buildone_snapshot "${{ inputs.dist }}" "${{ steps.snapshot-id.outputs.snapshot-id }}" "${{ inputs.platform }}" sudo -E bash -x buildone_snapshot "${{ inputs.dist }}" "${{ steps.snapshot-id.outputs.snapshot-id }}" "${{ inputs.platform }}"
+2 -2
View File
@@ -66,7 +66,7 @@ jobs:
needs: [ shellcheck ] needs: [ shellcheck ]
strategy: strategy:
matrix: matrix:
dist: [stretch, buster] dist: [stretch, buster, bullseye]
arch: [amd64, arm64] arch: [amd64, arm64]
name: Build ${{ matrix.dist }} on ${{ matrix.arch }} name: Build ${{ matrix.dist }} on ${{ matrix.arch }}
@@ -120,5 +120,5 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Push Manifests - name: Push Manifests
run: | run: |
DISTS="stretch buster latest" bash pushmanifest DISTS="stretch buster bullseye latest" bash pushmanifest
DISTS=jessie PLATFORMS=amd64 bash pushmanifest DISTS=jessie PLATFORMS=amd64 bash pushmanifest
+1
View File
@@ -6,6 +6,7 @@ set -o pipefail
DISTS=${DISTS:-"stretch DISTS=${DISTS:-"stretch
buster buster
bullseye
latest latest
"} "}