From e6139ca955979446ecbe1dc00817a723a897e745 Mon Sep 17 00:00:00 2001 From: Luca Boccassi Date: Sun, 25 Oct 2026 20:08:07 +0000 Subject: [PATCH] semaphore: switch to Ubuntu LTS to get back coverage As Ubuntu's autopkgtest cloud infra is disabled, we are lacking coverage for Ubuntu's tests, which is problematic as regressions there are costly, especially as the plan for Resolute is to upload stable point releases. Switch the Semaphore job to cover it. It will give approximate coverage for Debian which is sufficient, and mkosi's tests provide the rest. --- .semaphore/semaphore-runner.sh | 33 +++++++++++++++++++-------------- .semaphore/semaphore.yml | 4 ++-- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/.semaphore/semaphore-runner.sh b/.semaphore/semaphore-runner.sh index 22dc9fc4ffd..c6fe4481e23 100755 --- a/.semaphore/semaphore-runner.sh +++ b/.semaphore/semaphore-runner.sh @@ -4,8 +4,8 @@ set -eux set -o pipefail -DISTRO="${DISTRO:-debian}" -RELEASE="${RELEASE:-trixie}" +DISTRO="${DISTRO:-ubuntu}" +RELEASE="${RELEASE:-resolute}" SALSA_URL="${SALSA_URL:-https://salsa.debian.org/systemd-team/systemd.git}" BRANCH="${BRANCH:-debian/master}" ARCH="${ARCH:-amd64}" @@ -32,35 +32,40 @@ create_container() { lxc.apparmor.profile = unconfined lxc.mount.auto = lxc.mount.auto = proc:mixed sys:mixed -lxc.init.cmd = /sbin/init systemd.unified_cgroup_hierarchy=1 +lxc.init.cmd = /sbin/init systemd.unified_cgroup_hierarchy=1 systemd.mask=netplan-configure.service EOF sudo lxc-start -n "$CONTAINER" --define "lxc.include=/var/lib/lxc/$CONTAINER/config.systemd_upstream" - # enable source repositories so that apt-get build-dep works sudo lxc-attach -n "$CONTAINER" -- sh -ex <>/etc/apt/sources.list.d/sources.list -echo "deb http://deb.debian.org/debian $RELEASE-backports main" >/etc/apt/sources.list.d/backports.list # We might attach the console too soon until systemctl --quiet --wait is-system-running; do sleep 1; done +# LXC uses a veth +mkdir -p /etc/systemd/network/ +cat >/etc/systemd/network/10-eth0.network </etc/dpkg/dpkg.cfg.d/unsafe_io -# For some reason, it is necessary to run this manually or the interface won't be configured -# Note that we avoid networkd, as some of the tests will break it later on -dhclient apt-get -q --allow-releaseinfo-change update apt-get -y dist-upgrade apt-get install -y eatmydata -# The following four are needed as long as these deps are not covered by Debian's own packaging -apt-get install -y tree libpwquality-dev rpm libcurl4-openssl-dev libarchive-dev -# autopkgtest doesn't consider backports -apt-get install -y -t $RELEASE-backports debhelper +# The following are needed as long as these deps are not covered by Debian's own packaging +apt-get install -y tree rpm apt-get purge --auto-remove -y unattended-upgrades -systemctl unmask systemd-networkd -systemctl enable systemd-networkd EOF sudo lxc-stop -n "$CONTAINER" } diff --git a/.semaphore/semaphore.yml b/.semaphore/semaphore.yml index baa6ecfa4a0..2e3730b77bb 100644 --- a/.semaphore/semaphore.yml +++ b/.semaphore/semaphore.yml @@ -3,7 +3,7 @@ # vi: ts=2 sw=2 et: version: v1.0 -name: Debian autopkgtest (LXC) +name: autopkgtest (LXC) agent: machine: type: e1-standard-2 @@ -21,7 +21,7 @@ blocks: - name: "Setup & test" task: jobs: - - name: "Install dependencies & run the Debian autopkgtest" + - name: "Install dependencies & run the autopkgtest" commands: - checkout --use-cache - .semaphore/semaphore-runner.sh SETUP