53 lines
1.5 KiB
Diff
53 lines
1.5 KiB
Diff
From 7ca86e1c0d68f45915d9f583ffaf149285905005 Mon Sep 17 00:00:00 2001
|
|
From: Sergio Correia <scorreia@redhat.com>
|
|
Date: Tue, 3 Jun 2025 10:50:48 +0100
|
|
Subject: [PATCH 4/6] templates: duplicate str_to_version() in the adjust
|
|
script
|
|
|
|
As a follow-up of upstream PR#1486, duplicate the str_to_version()
|
|
method in adjust.py so that we do not need the keylime modules in
|
|
order for the configuration upgrade script to run.
|
|
|
|
Signed-off-by: Sergio Correia <scorreia@redhat.com>
|
|
---
|
|
templates/2.0/adjust.py | 22 ++++++++++++++++++++--
|
|
1 file changed, 20 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/templates/2.0/adjust.py b/templates/2.0/adjust.py
|
|
index 6008e4c..24ba898 100644
|
|
--- a/templates/2.0/adjust.py
|
|
+++ b/templates/2.0/adjust.py
|
|
@@ -4,9 +4,27 @@ import logging
|
|
import re
|
|
from configparser import RawConfigParser
|
|
from logging import Logger
|
|
-from typing import Dict, List, Optional, Tuple
|
|
+from typing import Dict, Tuple, Union
|
|
|
|
-from keylime.common.version import str_to_version
|
|
+
|
|
+def str_to_version(v_str: str) -> Union[Tuple[int, int], None]:
|
|
+ """
|
|
+ Validates the string format and converts the provided string to a tuple of
|
|
+ ints which can be sorted and compared.
|
|
+
|
|
+ :returns: Tuple with version number parts converted to int. In case of
|
|
+ invalid version string, returns None
|
|
+ """
|
|
+
|
|
+ # Strip to remove eventual quotes and spaces
|
|
+ v_str = v_str.strip('" ')
|
|
+
|
|
+ m = re.match(r"^(\d+)\.(\d+)$", v_str)
|
|
+
|
|
+ if not m:
|
|
+ return None
|
|
+
|
|
+ return (int(m.group(1)), int(m.group(2)))
|
|
|
|
|
|
def adjust(
|
|
--
|
|
2.47.1
|
|
|