tests/vm: build openbsd from lcitool data

For now only use the minimal decadency set until all the OpenBSD
mappings can be divined.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-ID: <20260226185303.1920021-7-alex.bennee@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
This commit is contained in:
Alex Bennée
2026-02-26 18:53:01 +00:00
parent 74a813a265
commit 1a1787ab6b
4 changed files with 33 additions and 43 deletions

View File

@@ -87,9 +87,9 @@ def generate_cirrus(target, trailer=None):
generate(filename, cmd, trailer)
def generate_pkglist(vm, target):
def generate_pkglist(vm, target, project="qemu"):
filename = Path(src_dir, "tests", "vm", "generated", vm + ".json")
cmd = lcitool_cmd + ["variables", "--format", "json", target, "qemu"]
cmd = lcitool_cmd + ["variables", "--format", "json", target, project]
generate(filename, cmd, None)
@@ -316,6 +316,7 @@ try:
# VM packages lists
#
generate_pkglist("freebsd", "freebsd-14")
generate_pkglist("openbsd", "openbsd-78", project="qemu-minimal")
#
# Ansible package lists

View File

@@ -0,0 +1,27 @@
{
"ccache": "/usr/local/bin/ccache",
"cpan_pkgs": [],
"cross_pkgs": [],
"make": "/usr/local/bin/gmake",
"ninja": "/usr/local/bin/ninja",
"packaging_command": "pkg_add",
"pip3": "/usr/local/bin/pip3",
"pkgs": [
"bash",
"bison",
"bzip2",
"ccache",
"dtc",
"git",
"glib2",
"gmake",
"gsed",
"libffi",
"meson",
"ninja",
"pkgconf",
"python3"
],
"pypi_pkgs": [],
"python": "/usr/local/bin/python3"
}

View File

@@ -24,45 +24,6 @@ class OpenBSDVM(basevm.BaseVM):
link = "https://cdn.openbsd.org/pub/OpenBSD/7.8/amd64/install78.iso"
csum = "a228d0a1ef558b4d9ec84c698f0d3ffd13cd38c64149487cba0f1ad873be07b2"
size = "20G"
pkgs = [
# tools
"dtc",
"git",
"pkgconf",
"bzip2", "xz",
"ninja",
# gnu tools
"bash",
"gmake",
"gsed",
"gettext-tools",
# libs: usb
"libusb1--",
# libs: crypto
"gnutls",
# libs: images
"jpeg",
"png",
# libs: ui
"capstone",
"sdl2",
"gtk+3",
"libxkbcommon",
# libs: migration
"zstd",
# libs: networking
"libslirp",
# Python stuff
"py3-setuptools",
]
BUILD_SCRIPT = """
set -e;
@@ -198,8 +159,9 @@ class OpenBSDVM(basevm.BaseVM):
self.console_wait("login:")
self.wait_ssh()
pkgs = self.get_qemu_packages_from_lcitool_json()
self.print_step("Installing packages")
self.ssh_root_check("pkg_add %s\n" % " ".join(self.pkgs))
self.ssh_root_check("pkg_add %s\n" % " ".join(pkgs))
# shutdown
self.ssh_root(self.poweroff)