CI: Add Ubuntu 22.04 (Jammy) and 24.04 (Noble) testing

The containers are exactly as per 20.04 (Focal).  However, this now brings us
to 5 releases * 4 build jobs worth of Ubuntu testing, which is overkill.

The oldest and newest toolchains are the most likely to find problems with new
code, so reduce the middle 3 releases (18/20/22) to just a single smoke test
each.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Anthony PERARD <anthony.perard@vates.tech>
Release-Acked-By: Oleksii Kurochko <oleksii.kurochko@gmail.com>
This commit is contained in:
Andrew Cooper committed 2024-07-12 18:58:45 +01:00
1 parent 6db222eb1f
commit 1ddc8c1bad
4 files changed
+163 -22

No files matched your search

@@ -0,0 +1,72 @@
# syntax=docker/dockerfile:1
FROM --platform=linux/amd64 ubuntu:22.04
LABEL maintainer.name="The Xen Project"
LABEL maintainer.email="xen-devel@lists.xenproject.org"
ENV DEBIAN_FRONTEND=noninteractive
RUN <<EOF
#!/bin/bash
set -e
useradd --create-home user
apt-get -y update
DEPS=(
# Xen
bison
build-essential
checkpolicy
clang
flex
python3-minimal
# Tools (general)
ca-certificates
git-core
gzip
patch
perl
pkg-config
wget
# libxenguest dombuilder
libbz2-dev
libzstd-dev
liblzo2-dev
liblzma-dev
zlib1g-dev
# libacpi
acpica-tools
# libxl
uuid-dev
libyajl-dev
# RomBIOS
bcc
bin86
# xentop
libncurses5-dev
# Python bindings
python3-dev
python3-setuptools
# Ocaml bindings/oxenstored
ocaml-nox
ocaml-findlib
# Stubdom download/extract
bzip2
# Qemu build
libglib2.0-dev
libpixman-1-dev
meson
ninja-build
python3-packaging
)
apt-get -y --no-install-recommends install "${DEPS[@]}"
rm -rf /var/lib/apt/lists/*
EOF
USER user
WORKDIR /build
@@ -0,0 +1,72 @@
# syntax=docker/dockerfile:1
FROM --platform=linux/amd64 ubuntu:24.04
LABEL maintainer.name="The Xen Project"
LABEL maintainer.email="xen-devel@lists.xenproject.org"
ENV DEBIAN_FRONTEND=noninteractive
RUN <<EOF
#!/bin/bash
set -e
useradd --create-home user
apt-get -y update
DEPS=(
# Xen
bison
build-essential
checkpolicy
clang
flex
python3-minimal
# Tools (general)
ca-certificates
git-core
gzip
patch
perl
pkg-config
wget
# libxenguest dombuilder
libbz2-dev
libzstd-dev
liblzo2-dev
liblzma-dev
zlib1g-dev
# libacpi
acpica-tools
# libxl
uuid-dev
libyajl-dev
# RomBIOS
bcc
bin86
# xentop
libncurses5-dev
# Python bindings
python3-dev
python3-setuptools
# Ocaml bindings/oxenstored
ocaml-nox
ocaml-findlib
# Stubdom download/extract
bzip2
# Qemu build
libglib2.0-dev
libpixman-1-dev
meson
ninja-build
python3-packaging
)
apt-get -y --no-install-recommends install "${DEPS[@]}"
rm -rf /var/lib/apt/lists/*
EOF
USER user
WORKDIR /build
+17 -22
View File
@@ -605,45 +605,40 @@ ubuntu-16.04-x86_64-gcc-debug:
variables:
CONTAINER: ubuntu:16.04-x86_64
ubuntu-18.04-x86_64-clang:
extends: .clang-x86-64-build
variables:
CONTAINER: ubuntu:18.04-x86_64
ubuntu-18.04-x86_64-clang-debug:
extends: .clang-x86-64-build-debug
variables:
CONTAINER: ubuntu:18.04-x86_64
ubuntu-18.04-x86_64-gcc:
extends: .gcc-x86-64-build
variables:
CONTAINER: ubuntu:18.04-x86_64
ubuntu-18.04-x86_64-gcc-debug:
extends: .gcc-x86-64-build-debug
variables:
CONTAINER: ubuntu:18.04-x86_64
ubuntu-20.04-x86_64-gcc:
extends: .gcc-x86-64-build
variables:
CONTAINER: ubuntu:20.04-x86_64
ubuntu-20.04-x86_64-gcc-debug:
extends: .gcc-x86-64-build-debug
ubuntu-22.04-x86_64-gcc:
extends: .gcc-x86-64-build
variables:
CONTAINER: ubuntu:20.04-x86_64
CONTAINER: ubuntu:22.04-x86_64
ubuntu-20.04-x86_64-clang:
ubuntu-24.04-x86_64-clang:
extends: .clang-x86-64-build
variables:
CONTAINER: ubuntu:20.04-x86_64
CONTAINER: ubuntu:24.04-x86_64
ubuntu-20.04-x86_64-clang-debug:
ubuntu-24.04-x86_64-clang-debug:
extends: .clang-x86-64-build-debug
variables:
CONTAINER: ubuntu:20.04-x86_64
CONTAINER: ubuntu:24.04-x86_64
ubuntu-24.04-x86_64-gcc:
extends: .gcc-x86-64-build
variables:
CONTAINER: ubuntu:24.04-x86_64
ubuntu-24.04-x86_64-gcc-debug:
extends: .gcc-x86-64-build-debug
variables:
CONTAINER: ubuntu:24.04-x86_64
opensuse-leap-15.6-clang:
extends: .clang-x86-64-build
+2
View File
@@ -44,6 +44,8 @@ case "_${CONTAINER}" in
_xenial) CONTAINER="${BASE}/ubuntu:16.04-x86_64" ;;
_bionic) CONTAINER="${BASE}/ubuntu:18.04-x86_64" ;;
_focal) CONTAINER="${BASE}/ubuntu:20.04-x86_64" ;;
_jammy) CONTAINER="${BASE}/ubuntu:22.04-x86_64" ;;
_noble) CONTAINER="${BASE}/ubuntu:24.04-x86_64" ;;
esac
# Use this variable to control whether root should be used
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.