Repository navigation
Conversation
|
@imlk0 ,您好,您的请求已接收,请耐心等待结果。 |
|
@imlk0 ,您好,未检测到有镜像需要构建,如需重新检测请评论 /start 。 |
|
@imlk0 ,您好,您的请求已接收,请耐心等待结果。 |
|
@imlk0 ,您好,未检测到有镜像需要构建,如需重新检测请评论 /start 。 |
|
@imlk0 ,您好,您的请求已接收,请耐心等待结果。 |
|
@imlk0 ,您好,未检测到有镜像需要构建,如需重新检测请评论 /start 。 |
|
@imlk0 ,您好,您的请求已接收,请耐心等待结果。 |
|
@imlk0 ,您好,未检测到有镜像需要构建,如需重新检测请评论 /start 。 |
…rness test-convert.sh gains a --distro flag (alinux3 default, ubuntu new) and a --deb option for the guest package, with loud errors when the distro and package type disagree. Ubuntu guests boot the ghcr noble test image, extracted via docker create/cp like the CI workflows do and cached the same way the alinux download is. Boot-success detection now also matches the Ubuntu serial-console markers (the getty "login:" prompt and the /etc/issue banner "Ubuntu <version> LTS <host> ttyS0" that serial-getty prints once getty.target is up) alongside the alinux issue banner. "Welcome to Ubuntu" is intentionally not a marker: the dracut initramfs prints that banner on the serial console seconds into the boot, long before the FDE services have run. Ubuntu boots get a 25-minute timeout since their fuller userspace boots much slower under TCG than alinux, and the QEMU boot container is force-removed after a failed attempt so the built-in retry does not hit a name conflict with the asynchronously removed --rm container. Signed-off-by: Kun Lai <laikun@linux.alibaba.com> Assisted-by: Claude Code:glm-5.3[1M]
Mirrors the build-rpm test-convert job shape: a privileged ubuntu:24.04 runtime container (docker run -d + docker exec, /dev and udev control mounted in) runs the harness, the host DEB is installed inside it so cryptpilot-fde-host show-reference-value really executes, and the noble test image qcow2 is extracted from ghcr with docker create/cp/rmi. The 4-leg matrix (grub/enc/ram, uki/enc/ram, grub/noenc/disk-persist, uki/noenc/disk-persist, fail-fast off) is mapped into test-convert.sh flags through the existing Makefile run-convert-test-case target, which now takes DISTRO=ubuntu + CRYPTPILOT_FDE_DEB and picks the apt branch of install-convert-test-depend when the runtime container is Debian-based (the alinux path is unchanged). The apt branch sets DEBIAN_FRONTEND=noninteractive like the other ubuntu jobs: the cryptsetup-initramfs dependency chain pulls console-setup, whose debconf postinst stalls in a container without a tty otherwise. The runtime container also gets the runner's /boot and /lib/modules read-only: it ships no kernel, but cryptpilot-enhance drives virt-customize on every leg and supermin needs a kernel to build the libguestfs appliance (the alinux legs get one incidentally from yum update). The release job's needs are untouched. Signed-off-by: Kun Lai <laikun@linux.alibaba.com> Assisted-by: Claude Code:glm-5.3[1M]
workflow_dispatch gains a mode choice (direct default, ubuntu new). The ubuntu mode builds the noble guest test image for the convert integration tests: stock Ubuntu Noble cloud image, virtual size grown to 10G with the space unallocated behind the last partition (a stock ~3.5G image cannot fit the converted layout), dracut preinstalled via virt-customize, pushed to ghcr with the same labels as the direct mode. The direct mode is unchanged apart from the url input becoming optional (validated at run time instead of by the dispatch form). Signed-off-by: Kun Lai <laikun@linux.alibaba.com> Assisted-by: Claude Code:glm-5.3[1M]
build-rpm's release already waits for its convert-and-boot legs; align the DEB release the same way so a broken Ubuntu conversion cannot publish packages. Assisted-by: Claude Code:glm-5.3 Signed-off-by: Kun Lai <laikun@linux.alibaba.com>
imlk0
force-pushed
the
convert-ubuntu-ci
branch
from
October 30, 2026 12:51
c2ae71a to
277b1e0
Compare
|
@imlk0 ,您好,您的请求已接收,请耐心等待结果。 |
|
@imlk0 ,您好,未检测到有镜像需要构建,如需重新检测请评论 /start 。 |
grub2-tools is the RPM package name and does not exist on apt: the grub tools the UKI setup needs are in grub2-common, already in the base list. The UKI reassembly and PE-header patch also need binutils and python3, which the minimal Ubuntu runtime images do not ship. Found by the first build-deb test-convert run of the uki legs. Assisted-by: Claude Code:glm-5.3 Signed-off-by: Kun Lai <laikun@linux.alibaba.com>
|
@imlk0 ,您好,您的请求已接收,请耐心等待结果。 |
|
@imlk0 ,您好,未检测到有镜像需要构建,如需重新检测请评论 /start 。 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ubuntu convert-and-boot CI coverage, stacked on #167 (the script-side Ubuntu support). Everything here is test infrastructure; no product code changes.
--distro <alinux3|ubuntu>(alinux3 path byte-identical), a DEB package option for Ubuntu guests, Ubuntu image sourcing from the ghcr noble test image (or--input), and Ubuntu boot-success detection. The success marker is the gettylogin:prompt plus theUbuntu <ver> LTS <host> ttyS<N>banner: the dracut initramfs prints "Welcome to Ubuntu" about 5 seconds into boot, before the FDE services run, so that string would be a premature-success marker.DEBIAN_FRONTEND=noninteractive, else console-setup's debconf postinst stalls the CI container).test-convertjob following the build-rpm job's shape: a privileged ubuntu:24.04 runtime container (docker run -d --privileged+docker exec), the freshly built host DEB installed inside it so the reference-value check actually runs, the noble test image extracted from ghcr, diagnostic log on failure. The runner's/bootand/lib/modulesare mounted read-only into the container: Ubuntu images ship no kernel, and cryptpilot-enhance's supermin needs one (the alinux legs get kernel-core incidentally fromyum update). Matrix is four legs: (grub, enc, ram), (uki, enc, ram), (grub, noenc, disk-persist), (uki, noenc, disk-persist). Thereleasejob now gates ontest-convert, mirroring build-rpm's release gate (its convert-and-boot legs already block package publishing).ubuntumode that produces the noble test image (stock Noble cloud image, resized to 10G with free space behind the last partition, dracut installed). Validated against the existingnoble-dracut-20260518artifact: that is its entire content. The direct mode is unchanged.Test plan
make -nconfirms the matrix-to-flag mapping (alinux path byte-identical to master).