From c755068bd25d99449a8de26cc3edd44128fc19fe Mon Sep 17 00:00:00 2001 From: Christian Kellner Date: Wed, 23 Mar 2022 14:37:18 +0100 Subject: [PATCH] meta: new host runner detection logic This is a port of `pipeline.detect_host_runner` in combination with the new runner detection logic. --- osbuild/meta.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/osbuild/meta.py b/osbuild/meta.py index 04fd17f7..7b89446a 100644 --- a/osbuild/meta.py +++ b/osbuild/meta.py @@ -34,6 +34,8 @@ from typing import (Any, Deque, Dict, List, Optional, Sequence, Set, Tuple, import jsonschema +from .util import osrelease + FAILED_TITLE = "JSON Schema validation failed" FAILED_TYPEURI = "https://osbuild.org/validation-error" @@ -668,3 +670,9 @@ class Index: # candidate None or is too new for version (2) raise ValueError(f"No suitable runner for {name}") + + def detect_host_runner(self) -> RunnerInfo: + """Use os-release(5) to detect the runner for the host""" + + osname = osrelease.describe_os(*osrelease.DEFAULT_PATHS) + return self.detect_runner("org.osbuild." + osname)