File detect-openeuler-as-redhat-family-os.patch of Package salt

From 0e28d38534ae5437f546ea4373918d22fdfc1510 Mon Sep 17 00:00:00 2001
From: Victor Zhestkov <vzhestkov@suse.com>
Date: Mon, 10 Mar 2025 13:59:25 +0100
Subject: [PATCH] Detect openEuler as RedHat family OS

* Make openEuler resolving as RedHat OS family

* Add grains test for openEuler
---
 salt/grains/core.py                    |  1 +
 tests/pytests/unit/grains/test_core.py | 27 ++++++++++++++++++++++++++
 2 files changed, 28 insertions(+)

diff --git a/salt/grains/core.py b/salt/grains/core.py
index ceb142a7b8..94f58e8c4e 100644
--- a/salt/grains/core.py
+++ b/salt/grains/core.py
@@ -1845,6 +1845,7 @@ _OS_FAMILY_MAP = {
     "Alinux": "RedHat",
     "Mendel": "Debian",
     "OSMC": "Debian",
+    "openEuler": "RedHat",
 }
 
 
diff --git a/tests/pytests/unit/grains/test_core.py b/tests/pytests/unit/grains/test_core.py
index 072287248f..c3cf12c10f 100644
--- a/tests/pytests/unit/grains/test_core.py
+++ b/tests/pytests/unit/grains/test_core.py
@@ -1425,6 +1425,33 @@ def test_astralinuxse_os_grains():
     _run_os_grains_tests(_os_release_data, {}, expectation)
 
 
+@pytest.mark.skip_unless_on_linux
+def test_openeuler_os_grains():
+    """
+    Test that OS grains are parsed correctly for openEuler
+    """
+    # /etc/os-release data taken from openEuler 24.03 (LTS-SP1)
+    _os_release_data = {
+        "PRETTY_NAME": "openEuler 24.03 (LTS-SP1)",
+        "NAME": "openEuler",
+        "ID": "openEuler",
+        "ANSI_COLOR": "0;31",
+        "VERSION": "24.03 (LTS-SP1)",
+        "VERSION_ID": "24.03",
+    }
+    expectation = {
+        "os": "openEuler",
+        "os_family": "RedHat",
+        "oscodename": "openEuler 24.03 (LTS-SP1)",
+        "osfullname": "openEuler",
+        "osrelease": "24.03",
+        "osrelease_info": (24, 3),
+        "osmajorrelease": 24,
+        "osfinger": "openEuler-24",
+    }
+    _run_os_grains_tests(_os_release_data, {}, expectation)
+
+
 @pytest.mark.skip_unless_on_windows
 def test_windows_platform_data():
     """
-- 
2.48.1

openSUSE Build Service is sponsored by