mkosi: add CI for Ubuntu 26.04 (#41383)

It is in final beta now, so we can start building and testing it
This commit is contained in:
Luca Boccassi
2026-03-28 01:19:35 +00:00
committed by GitHub
29 changed files with 129 additions and 8 deletions
+11
View File
@@ -109,6 +109,17 @@ jobs:
no_qemu: 0
no_kvm: 0
shim: 0
- distro: ubuntu
release: resolute
runner: ubuntu-24.04
sanitizers: ""
llvm: 0
cflags: "-Og"
relabel: no
vm: 0
no_qemu: 0
no_kvm: 0
shim: 0
- distro: fedora
release: "43"
runner: ubuntu-24.04
-1
View File
@@ -90,7 +90,6 @@ Packages=
attr
bash-completion
binutils
coreutils
cpio
curl
diffutils
+1
View File
@@ -17,6 +17,7 @@ Packages=
bind
bpf
btrfs-progs
coreutils
cryptsetup
dbus-broker
dbus-broker-units
@@ -23,6 +23,7 @@ VolatilePackages=
Packages=
bind-utils
bpftool
coreutils
cryptsetup
device-mapper-event
device-mapper-multipath
+1
View File
@@ -8,4 +8,5 @@ Release=testing
[Content]
Packages=
coreutils
linux-perf
+1
View File
@@ -35,6 +35,7 @@ Packages=
bind-utils
bpftool
btrfs-progs
coreutils
cryptsetup
device-mapper
dhcp-server
@@ -0,0 +1,13 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
# avoid pulling in the uutils package which is the default and is broken in several ways
[TriggerMatch]
Distribution=ubuntu
Release=!jammy
Release=!noble
[Content]
Packages=
coreutils-from-gnu
coreutils-from-uutils-
rust-coreutils-
@@ -0,0 +1,10 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[TriggerMatch]
Distribution=ubuntu
Release=jammy
Release=noble
[Content]
Packages=
coreutils
@@ -0,0 +1,10 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
# bpftool was untangled in resolute
[TriggerMatch]
Distribution=ubuntu
Release=!jammy
Release=!noble
[Content]
Packages=bpftool
@@ -15,7 +15,6 @@ CleanPackageMetadata=yes
Packages=
bash
coreutils
grep
socat
util-linux
@@ -6,6 +6,7 @@ Distribution=arch
[Content]
PrepareScripts=%D/mkosi/mkosi.conf.d/arch/systemd.prepare
Packages=
coreutils
inetutils
iproute
nmap
@@ -7,6 +7,7 @@ Distribution=|fedora
[Content]
PrepareScripts=%D/mkosi/mkosi.conf.d/centos-fedora/systemd.prepare
Packages=
coreutils
hostname
iproute
iproute-tc
@@ -0,0 +1,8 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=debian
[Content]
Packages=
coreutils
@@ -6,6 +6,7 @@ Distribution=opensuse
[Content]
PrepareScripts=%D/mkosi/mkosi.conf.d/opensuse/systemd.prepare
Packages=
coreutils
diffutils
grep
hostname
@@ -0,0 +1,4 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=ubuntu
@@ -0,0 +1,13 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
# avoid pulling in the uutils package which is the default and is broken in several ways
[TriggerMatch]
Distribution=ubuntu
Release=!jammy
Release=!noble
[Content]
Packages=
coreutils-from-gnu
coreutils-from-uutils-
rust-coreutils-
@@ -0,0 +1,10 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[TriggerMatch]
Distribution=ubuntu
Release=jammy
Release=noble
[Content]
Packages=
coreutils
-1
View File
@@ -12,7 +12,6 @@ Environment=SYSTEMD_REQUIRED_DEPS_ONLY=1
ExtraTrees=%D/mkosi/mkosi.extra.common
Packages=
coreutils
findutils
grep
sed
@@ -7,6 +7,7 @@ Distribution=arch
PrepareScripts=%D/mkosi/mkosi.conf.d/arch/systemd.prepare
Packages=
btrfs-progs
coreutils
tpm2-tools
VolatilePackages=
@@ -7,6 +7,7 @@ Distribution=|fedora
[Content]
PrepareScripts=%D/mkosi/mkosi.conf.d/centos-fedora/systemd.prepare
Packages=
coreutils
swtpm-tools
tpm2-tools
@@ -0,0 +1,8 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=debian
[Content]
Packages=
coreutils
@@ -7,6 +7,7 @@ Distribution=opensuse
PrepareScripts=%D/mkosi/mkosi.conf.d/opensuse/systemd.prepare
Packages=
btrfs-progs
coreutils
kmod
tpm2.0-tools
@@ -0,0 +1,4 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=ubuntu
@@ -0,0 +1,13 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
# avoid pulling in the uutils package which is the default and is broken in several ways
[TriggerMatch]
Distribution=ubuntu
Release=!jammy
Release=!noble
[Content]
Packages=
coreutils-from-gnu
coreutils-from-uutils-
rust-coreutils-
@@ -0,0 +1,10 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[TriggerMatch]
Distribution=ubuntu
Release=jammy
Release=noble
[Content]
Packages=
coreutils
@@ -17,6 +17,6 @@ integration_tests += [
'StopWhenUnneeded' : 'yes',
},
},
'coredump-exclude-regex' : '/(bash|sleep)$',
'coredump-exclude-regex' : '/(bash|coreutils|gnusleep|sleep)$',
},
]
@@ -4,6 +4,6 @@ integration_tests += [
integration_test_template + {
'name' : fs.name(meson.current_source_dir()),
'vm' : true,
'coredump-exclude-regex' : '/(coreutils|sleep|udevadm)$',
'coredump-exclude-regex' : '/(coreutils|gnusleep|sleep|udevadm)$',
},
]
@@ -3,6 +3,6 @@
integration_tests += [
integration_test_template + {
'name' : fs.name(meson.current_source_dir()),
'coredump-exclude-regex' : '/(coreutils|sleep|bash|systemd-notify)$',
'coredump-exclude-regex' : '/(coreutils|gnusleep|sleep|bash|systemd-notify)$',
},
]
+2 -2
View File
@@ -25,9 +25,9 @@ systemd-dissect "$MINIMAL_IMAGE.raw" | grep -F -f <(sed 's/"//g' "$OS_RELEASE")
systemd-dissect --list "$MINIMAL_IMAGE.raw" | grep '^etc/os-release$' >/dev/null
systemd-dissect --mtree "$MINIMAL_IMAGE.raw" --mtree-hash yes | \
grep -E "^.(/usr|)/bin/cat type=file mode=0755 uid=0 gid=0 size=[0-9]* sha256sum=[a-z0-9]*$" >/dev/null
grep -E "^.(/usr|)/bin/bash type=file mode=0755 uid=0 gid=0 size=[0-9]* sha256sum=[a-z0-9]*$" >/dev/null
systemd-dissect --mtree "$MINIMAL_IMAGE.raw" --mtree-hash no | \
grep -E "^.(/usr|)/bin/cat type=file mode=0755 uid=0 gid=0 size=[0-9]*$" >/dev/null
grep -E "^.(/usr|)/bin/bash type=file mode=0755 uid=0 gid=0 size=[0-9]*$" >/dev/null
read -r SHA256SUM1 _ < <(systemd-dissect --copy-from "$MINIMAL_IMAGE.raw" etc/os-release | sha256sum)
test "$SHA256SUM1" != ""