This commit is contained in:
cmcmarrow 2023-03-21 10:44:39 -05:00 committed by Pedro Algarvio
parent 467740f4ab
commit 36e150861c
5 changed files with 19 additions and 19 deletions

1
changelog/63904.fixed.md Normal file
View file

@ -0,0 +1 @@
add linux_distribution to util to stop dep warning

View file

@ -23,8 +23,6 @@ import time
import uuid
from errno import EACCES, EPERM
import distro
import salt.exceptions
# Solve the Chicken and egg problem where grains need to run before any
@ -41,6 +39,7 @@ import salt.utils.pkg.rpm
import salt.utils.platform
import salt.utils.stringutils
from salt.utils.network import _clear_interfaces, _get_interfaces
from salt.utils.platform import linux_distribution as _linux_distribution
try:
# pylint: disable=no-name-in-module
@ -90,15 +89,6 @@ except ImportError: # Define freedesktop_os_release for Python < 3.10
return _parse_os_release("/etc/os-release", "/usr/lib/os-release")
# rewrite distro.linux_distribution to allow best=True kwarg in version(), needed to get the minor version numbers in CentOS
def _linux_distribution():
return (
distro.id(),
distro.version(best=True),
distro.codename(),
)
def __init__(opts):
_clear_interfaces()

View file

@ -8,11 +8,20 @@ import platform
import subprocess
import sys
from distro import linux_distribution
import distro
from salt.utils.decorators import memoize as real_memoize
def linux_distribution(full_distribution_name=True):
"""
Simple function to return information about the OS distribution (id_name, version, codename).
"""
if full_distribution_name:
return distro.name(), distro.version(best=True), distro.codename()
return distro.id(), distro.version(best=True), distro.codename()
@real_memoize
def is_windows():
"""

View file

@ -755,7 +755,7 @@ def system_information():
Report system versions.
"""
# Late import so that when getting called from setup.py does not break
from distro import linux_distribution
from salt.utils.platform import linux_distribution
def system_version():
"""

View file

@ -433,7 +433,7 @@ def test_system_version_linux():
"""
with patch(
"distro.linux_distribution",
"salt.utils.platform.linux_distribution",
MagicMock(return_value=("Manjaro Linux", "20.0.2", "Lysia")),
):
versions = [item for item in system_information()]
@ -441,7 +441,7 @@ def test_system_version_linux():
assert version in versions
with patch(
"distro.linux_distribution",
"salt.utils.platform.linux_distribution",
MagicMock(return_value=("Debian GNU/Linux", "9", "stretch")),
):
versions = [item for item in system_information()]
@ -449,7 +449,7 @@ def test_system_version_linux():
assert version in versions
with patch(
"distro.linux_distribution",
"salt.utils.platform.linux_distribution",
MagicMock(return_value=("Debian GNU/Linux", "10", "buster")),
):
versions = [item for item in system_information()]
@ -457,7 +457,7 @@ def test_system_version_linux():
assert version in versions
with patch(
"distro.linux_distribution",
"salt.utils.platform.linux_distribution",
MagicMock(return_value=("CentOS Linux", "7", "Core")),
):
versions = [item for item in system_information()]
@ -465,7 +465,7 @@ def test_system_version_linux():
assert version in versions
with patch(
"distro.linux_distribution",
"salt.utils.platform.linux_distribution",
MagicMock(return_value=("CentOS Linux", "8", "Core")),
):
versions = [item for item in system_information()]
@ -473,7 +473,7 @@ def test_system_version_linux():
assert version in versions
with patch(
"distro.linux_distribution",
"salt.utils.platform.linux_distribution",
MagicMock(return_value=("OpenSUSE Leap", "15.1", "")),
):
versions = [item for item in system_information()]