File fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch of Package salt

From 0612549b3acfeb15e0b499b6f469d64062d6ae2d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
 <psuarezhernandez@suse.com>
Date: Mon, 25 Jun 2018 13:06:40 +0100
Subject: [PATCH] Fix zypper.list_pkgs to be aligned with pkg state

Handle packages with multiple version properly with zypper

Add unit test coverage for multiple version packages on Zypper

Fix '_find_remove_targets' after aligning Zypper with pkg state
---
 salt/states/pkg.py | 21 ---------------------
 1 file changed, 21 deletions(-)

diff --git a/salt/states/pkg.py b/salt/states/pkg.py
index c0fa2f6b69..a13d418400 100644
--- a/salt/states/pkg.py
+++ b/salt/states/pkg.py
@@ -450,16 +450,6 @@ def _find_remove_targets(name=None,
 
         if __grains__['os'] == 'FreeBSD' and origin:
             cver = [k for k, v in six.iteritems(cur_pkgs) if v['origin'] == pkgname]
-        elif __grains__['os_family'] == 'Suse':
-            # On SUSE systems. Zypper returns packages without "arch" in name
-            try:
-                namepart, archpart = pkgname.rsplit('.', 1)
-            except ValueError:
-                cver = cur_pkgs.get(pkgname, [])
-            else:
-                if archpart in salt.utils.pkg.rpm.ARCHES + ("noarch",):
-                    pkgname = namepart
-                cver = cur_pkgs.get(pkgname, [])
         else:
             cver = cur_pkgs.get(pkgname, [])
 
@@ -866,17 +856,6 @@ def _verify_install(desired, new_pkgs, ignore_epoch=False, new_caps=None):
             cver = new_pkgs.get(pkgname.split('%')[0])
         elif __grains__['os_family'] == 'Debian':
             cver = new_pkgs.get(pkgname.split('=')[0])
-        elif __grains__['os_family'] == 'Suse':
-            # On SUSE systems. Zypper returns packages without "arch" in name
-            try:
-                namepart, archpart = pkgname.rsplit('.', 1)
-            except ValueError:
-                cver = new_pkgs.get(pkgname)
-            else:
-                if archpart in salt.utils.pkg.rpm.ARCHES + ("noarch",):
-                    cver = new_pkgs.get(namepart)
-                else:
-                    cver = new_pkgs.get(pkgname)
         else:
             cver = new_pkgs.get(pkgname)
             if not cver and pkgname in new_caps:
-- 
2.16.4


openSUSE Build Service is sponsored by