summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLamont Granquist <lamont@scriptkiddie.org>2020-11-13 16:09:24 -0800
committerLamont Granquist <lamont@scriptkiddie.org>2020-11-13 16:09:24 -0800
commit40e50956e77b107908e2f0ef203ac2369c8e5ad0 (patch)
tree94de17aa917e04a80feec9a7334b35f7eebb38bd
parent84c6e6f6561230ab178fac8eb7fc9f944c985944 (diff)
downloadchef-40e50956e77b107908e2f0ef203ac2369c8e5ad0.tar.gz
Fix zypper_package CI failures
Very unclear why this didn't turn up on my local testing, but it seems legit enough hardening to do here. Signed-off-by: Lamont Granquist <lamont@scriptkiddie.org>
-rw-r--r--lib/chef/provider/package/zypper.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/chef/provider/package/zypper.rb b/lib/chef/provider/package/zypper.rb
index 6ed7339e32..a62f4ac6ee 100644
--- a/lib/chef/provider/package/zypper.rb
+++ b/lib/chef/provider/package/zypper.rb
@@ -103,6 +103,12 @@ class Chef
(status, name, type, version, arch, repo) = [ md[1], md[2], md[3], md[4], md[5], md[6] ]
next if version == "Version" # header
+ # sometimes even though we request a specific version in the search string above and have match exact, we wind up
+ # with other versions in the ouput, particularly getting the installed version when downgrading.
+ if new_version
+ next unless version == new_version || version.start_with?("#{new_version}-")
+ end
+
return version
end
end