Repository navigation
fix(computers): ubuntu-24.04's session supervisord logs to the console again, so a disk's boot check sees it - #665
Closed
earakely-scale wants to merge 1 commit into
Closed
earakely-scale wants to merge 1 commit into
earakely-scale wants to merge 1 commit into
Conversation
…e again, so a disk's boot check sees it Since root's supervisord runs the session's (#649), the session's output went to a file root alone reads, so the console showed only root's own programs. The release's disk boot check waits on the console for every program in supervisord.conf and timed out on the ubuntu-24.04 disk, failing every release since v0.9.1522. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator
Author
|
Closing in favor of #666, which has this root.conf change plus what it needs to work in a disk guest: the disk's init had no /dev/stdout (devtmpfs has none; a container runtime or udev makes it), so with this change alone the session's output went to a plain file of that name and the console still showed only clock, egress and session. #666 adds the four standard links to the init and widens the boot check to root's programs; the release's own check passed on the v0.9.1529 arm64 base with it, under TCG on a Graviton host. If a VM test for this PR is still running, it can be stopped. |
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.
What and why
Every release since v0.9.1522 has failed to publish, v0.9.1522 to v0.9.1529, so nothing merged since Nov 12 23:40Z is on PyPI.
infra_build.py smoke) on the ubuntu-24.04 disk. It boots the disk and waits, on its console, for every program in the base'ssupervisord.confto logentered RUNNING, for up to 15 minutes.root.conf) runs the session's supervisord as the session user. It wrote the session supervisord's output to/var/log/agentenv-root/session.log, so the console showed only root's own programs (clock,egress,session) and the check timed out.dbus,xvfbanddesktoprunning and the XFCE panel up within two seconds.What changes
root.conf'ssessionprogram logs to/proc/self/fd/1(stdout_logfile_maxbytes=0), as the session's supervisord did when init ran it before feat(computers): a ubuntu-24.04 computer in a multi env follows its gateway's clock (FD-5476) #649. That's root supervisord's own output: the console in a disk, the container's log in a container./dev/stdout, the first commit's choice. A disk's/devis the kernel's devtmpfs, which has no/dev/stdoutand no/dev/fd, so supervisord made/dev/stdouta regular file in memory, 870 bytes of the session's output at 45 seconds, growing for the computer's life. The console still showed nothing./var/log/agentenv/supervisord.log.v0.9.1528 also failed two local-backends tests,
page_driver_test's one-second bound andcomputer_app_test's WebSocket deploy. Both passed on the merge commit before it and on v0.9.1529's bump, so this PR leaves them alone.How it was tested
The disk boot check runs only at release time, so it was run on an agent-environments-admin VM: a c8i.4xlarge with nested virtualization, so KVM, as on the release's runner, amd64. The disks were built with the release's own Dockerfile and arguments, from the rootfs v0.9.1529 published (
src-f3e72c92…) with onlyroot.confreplaced, and checked withinfra_build.py smokeitself.root.conf/dev/stdout(first commit)/proc/self/fd/1(this PR)dbus,xvfb,desktoprunning/dev/stdoutin the diskThe change is the same on arm64, the platform each release failed on first; it wasn't booted there. The VM is torn down.
🤖 Generated with Claude Code