Bug 290982 - 15.0-BETA5 image is broken in Cirrus CI
Summary: 15.0-BETA5 image is broken in Cirrus CI
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: bin (show other bugs)
Version: 15.0-STABLE
Hardware: Any Any
: --- Affects Only Me
Assignee: Alan Somers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-11-12 19:17 UTC by Alan Somers
Modified: 2025-11-19 15:37 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alan Somers freebsd_committer freebsd_triage 2025-11-12 19:17:54 UTC
As a possible repeat of #288817 , the freebsd-15-0-beta5-amd64-ufs Google Cloud image is broken in Cirrus CI.  Builds that select that image never start.  For example: https://cirrus-ci.com/build/4997590732767232 .  By contrast, the -alpha4 image _did_ work.
Comment 1 Alan Somers freebsd_committer freebsd_triage 2025-11-12 22:40:03 UTC
I booted both the alpha4 and beta5 images in GCE.  What I found is that:

* While alpha4 used the latest packages, beta5 switched back to quarterly
* The "google_instance_setup" script worked on alpha4, but failed on beta5.  I failed with the following error:

Starting google_instance_setup.
freebsd-update 1377 - - freebsd-update is incompatible with the use of packaged base.  Please see
freebsd-update 1377 - - https://wiki.freebsd.org/PkgBase for more information.
Starting google_network_daemon.
Starting google_accounts_daemon.
Traceback (most recent call last):
  File "/usr/local/bin/google_accounts_daemon-3.11", line 33, in <module>
    sys.exit(load_entry_point('google-compute-engine==2.8.16', 'console_scripts', 'google_accounts_daemon')())
Mounting late filesystems:.
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/google_compute_engine/accounts/accounts_daemon.py", line 296, in main
    AccountsDaemon(
  File "/usr/local/lib/python3.11/site-packages/google_compute_engine/accounts/accounts_Security policy loaded: MAC/ntpd (mac_ntpd)
daemon.py", line 62, in __init__
    self.utils = accounts_utils.AccountsUtils(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/google_compute_engine/accounts/accounts_utils.py", line 73, in __init__
    self._CreateSudoersGroup()
  File "/usr/local/lib/python3.11/site-packages/google_compute_engine/accounts/accounts_utils.py", line 97, in _CreateSudoersGroup
    subprocess.check_call(command.split(' '))
  File "/usr/local/lib/python3.11/subprocess.py", line 408, in check_call
    retcode = call(*popenargs, **kwargs)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/subprocess.py", line 389, in call
    with Popen(*popenargs, **kwargs) as p:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/subprocess.py", line 1026, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/local/lib/python3.11/subprocess.py", line 1955, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'groupadd'

I'll try to figure out where that "groupadd" command is supposed to come from.  Fixing this might be as simple as merging a port change to the quarterly branch.
Comment 2 Colin Percival freebsd_committer freebsd_triage 2025-11-12 22:46:12 UTC
Oh, this might be the "@sample is broken with no-root" thing.  If that's it, new packages will resolve it in 15.0-RC1.
Comment 3 Alan Somers freebsd_committer freebsd_triage 2025-11-12 23:18:51 UTC
I can confirm that the @sample bug affects the 15.0-BETA5, because the /usr/local/etc/instance_configs.cfg.distro file doesn't exist there.  And if I create that file manually, AND remove /usr/local/etc/instance_configs.cfg, then rerun google_instance_setup and google_accounts_daemon scripts, then I can connect via SSH.  So probably Cirrus will work at that point.

However, there's a separate problem: sysutils/firstboot-freebsd-update tries to use freebsd-update on a pkgbase system.  I'll open a separate bug for that.

And I'll keep this bug open for now, to remind me to retest with -RC1.
Comment 4 Colin Percival freebsd_committer freebsd_triage 2025-11-12 23:21:43 UTC
Running freebsd-update is correct.  It will soon be a front-end to pkgbase rather than erroring out on pkgbase systems.
Comment 5 Alan Somers freebsd_committer freebsd_triage 2025-11-13 14:35:09 UTC
(In reply to Colin Percival from comment #4)
Will freebsd-update become a frontend for pkg in time for 15.0-RELEASE ?
Comment 6 Colin Percival freebsd_committer freebsd_triage 2025-11-13 14:52:01 UTC
I very much hope so.
Comment 7 Alan Somers freebsd_committer freebsd_triage 2025-11-19 15:37:40 UTC
I can confirm that the freebsd-15-0-rc2-amd64-ufs image does work in Cirrus CI.