Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

login: Beibooting to all supported OSes #21501

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

martinpitt
Copy link
Member

@martinpitt martinpitt commented Jan 9, 2025

Previously we only allowed beibooting to the same target OS as the host.
But we know which OSes Cockpit works on -- exactly the ones which we
have in CI.

Building that supported list isn't quite easy, though: It roughly
corresponds to our bots/lib/testmap.py, but not quite -- e.g.
"debian-stable" is "Debian 12" right now, and we don't get the official
human names (such as "Red Hat Enterprise Linux" or "CentOS Stream") from
the testmap either. So for the time being, keep that list static. We'll
have to update it for each new OS that we support, but our integration
tests will tell us.

In the future we might be doing something clever, like automatically
collecting os-release files from all our supported images in bots, and
use that to auto-build osinfo.py.

https://issues.redhat.com/browse/COCKPIT-1193


  • Bring back support for "same" OS (it might be unknown), and add a test
  • Add matching to PLATFORM_ID so that we support "RHEL 9", not "RHEL 9.6"
  • Design the login page error message. It is too long right now:

image

Do we really need to show it, or perhaps just "Testux 1.2.3 is unsupported blabla"? Showing the list is kind of moot, it's not like the admin can spontaneously change the target system's OS or admin a different machine instead.

This should use our conditional `debug()` helper, not be printed
unconditionally.
Previously we only allowed beibooting to the same target OS as the host.
But we know which OSes Cockpit works on -- exactly the ones which we
have in CI.

Building that supported list isn't quite easy, though: It *roughly*
corresponds to our bots/lib/testmap.py, but not quite -- e.g.
"debian-stable" is "Debian 12" right now, and we don't get the official
human names (such as "Red Hat Enterprise Linux" or "CentOS Stream") from
the testmap either. So for the time being, keep that list static. We'll
have to update it for each new OS that we support, but our integration
tests will tell us.

In the future we might be doing something clever, like automatically
collecting `os-release` files from all our supported images in bots, and
use that to auto-build `osinfo.py`.

https://issues.redhat.com/browse/COCKPIT-1193
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant