File fix-deb822-nonetype-object-has-no-attribute-split-71.patch of Package venv-salt-minion

From ac77a2e4ac4b3e2019efeeb5fce8a61d649b4f6c Mon Sep 17 00:00:00 2001
From: Marek Czernek <marek.czernek@suse.com>
Date: Wed, 12 Mar 2025 14:27:36 +0100
Subject: [PATCH] Fix DEB822 'NoneType' object has no attribute 'split'
 (#710)

---
 salt/modules/aptpkg.py | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/salt/modules/aptpkg.py b/salt/modules/aptpkg.py
index 48d2ccb904..8244c639e8 100644
--- a/salt/modules/aptpkg.py
+++ b/salt/modules/aptpkg.py
@@ -2807,7 +2807,9 @@ def mod_repo(repo, saltenv="base", aptkey=True, **kwargs):
             if not invalid:
                 repos.append(source)
         else:
-            if HAS_DEB822 and source.types == [""]:
+            if HAS_DEB822 and (
+                source.types == [""] or not bool(source.types) or not source.type
+            ):
                 # most probably invalid or comment line
                 continue
             repos.append(source)
@@ -2991,8 +2993,10 @@ def mod_repo(repo, saltenv="base", aptkey=True, **kwargs):
         kwargs["comments"] = salt.utils.pkg.deb.combine_comments(kwargs["comments"])
 
     if not mod_source:
-        if HAS_DEB822:
-            apt_source_file = kwargs.get("file")
+        apt_source_file = kwargs.get("file")
+        if not apt_source_file:
+            raise SaltInvocationError("missing 'file' argument when defining a new repository")
+        if HAS_DEB822 and not apt_source_file.endswith(".list"):
             section = _deb822.Section("")
             section["Types"] = repo_type
             section["URIs"] = repo_uri
-- 
2.48.1

openSUSE Build Service is sponsored by