From d074713b94f026e4de78bb3c07b777a3066e7d85 Mon Sep 17 00:00:00 2001 From: Daniel Heule Date: Mon, 2 Dec 2013 13:27:42 +0100 Subject: [PATCH] Fix explorer and globalopts issue in type __package_zypper Fixes #215. Signed-off-by: Nico Schottelius --- cdist/conf/type/__package_zypper/explorer/pkg_version | 2 +- cdist/conf/type/__package_zypper/gencode-remote | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) mode change 100755 => 100644 cdist/conf/type/__package_zypper/explorer/pkg_version mode change 100755 => 100644 cdist/conf/type/__package_zypper/gencode-remote diff --git a/cdist/conf/type/__package_zypper/explorer/pkg_version b/cdist/conf/type/__package_zypper/explorer/pkg_version old mode 100755 new mode 100644 index fb3b7753..655b464d --- a/cdist/conf/type/__package_zypper/explorer/pkg_version +++ b/cdist/conf/type/__package_zypper/explorer/pkg_version @@ -27,4 +27,4 @@ else name="$__object_id" fi -rpm -q --whatprovides "$name" 2>/dev/null || true +rpm -q --whatprovides "$name" | grep -v 'no package provides' || true diff --git a/cdist/conf/type/__package_zypper/gencode-remote b/cdist/conf/type/__package_zypper/gencode-remote old mode 100755 new mode 100644 index ca9aec33..d1766126 --- a/cdist/conf/type/__package_zypper/gencode-remote +++ b/cdist/conf/type/__package_zypper/gencode-remote @@ -39,15 +39,22 @@ else state_should="present" fi +pkg_version="$(cat "$__object/explorer/pkg_version")" +if [ -z "$pkg_version" ]; then + state_is="absent" +else + state_is="present" +fi + # Exit if nothing is needed to be done [ "$state_is" = "$state_should" ] && exit 0 case "$state_should" in present) - echo zypper "$globalopts" install --auto-agree-with-licenses \"$name\" + echo zypper $globalopts install --auto-agree-with-licenses \"$name\" ">/dev/null" ;; absent) - echo pacman "$globalopts" remove \"$name\" + echo zypper $globalopts remove \"$name\" ">/dev/null" ;; *) echo "Unknown state: $state_should" >&2