Hello community,

here is the log from the commit of package fence-agents for openSUSE:Factory 
checked in at 2017-02-16 17:05:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fence-agents (Old)
 and      /work/SRC/openSUSE:Factory/.fence-agents.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "fence-agents"

Changes:
--------
--- /work/SRC/openSUSE:Factory/fence-agents/fence-agents.changes        
2017-02-12 00:50:48.585935509 +0100
+++ /work/SRC/openSUSE:Factory/.fence-agents.new/fence-agents.changes   
2017-02-16 17:05:52.524848043 +0100
@@ -1,0 +2,6 @@
+Tue Feb 14 14:21:12 UTC 2017 - [email protected]
+
+- Downgrade some agent-specific dependencies to recommends (bsc#1025149)
+  * Add 0010-Make-pywsman-dependency-optional.patch
+
+-------------------------------------------------------------------

New:
----
  0010-Make-pywsman-dependency-optional.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ fence-agents.spec ++++++
--- /var/tmp/diff_new_pack.hUB3PD/_old  2017-02-16 17:05:52.988782400 +0100
+++ /var/tmp/diff_new_pack.hUB3PD/_new  2017-02-16 17:05:52.992781834 +0100
@@ -42,6 +42,8 @@
 Patch7:         0007-fence_compute-Remove-duplicate-check-for-binary-name.patch
 # PATCH-FIX-UPSTREAM: fence_compute: Fix disabling force_down on node when 
action is on
 Patch9:         0009-fence_compute-Fix-disabling-force_down-on-node-when-.patch
+# PATCH-FIX-SLE: Make pywsman dependency optional (bsc#1025149)
+Patch10:        0010-Make-pywsman-dependency-optional.patch
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  autoconf
@@ -53,7 +55,6 @@
 BuildRequires:  libxslt
 BuildRequires:  mozilla-nspr-devel
 BuildRequires:  mozilla-nss-devel
-BuildRequires:  openwsman-python
 BuildRequires:  perl
 BuildRequires:  perl-Net-Telnet
 BuildRequires:  pkg-config
@@ -67,7 +68,6 @@
 
 Requires:       net-snmp
 Requires:       openssh
-Requires:       openwsman-python
 Requires:       perl-Net-Telnet
 Requires:       python-curl
 Requires:       python-openssl
@@ -76,13 +76,16 @@
 Requires:       python-suds
 Requires:       sg3_utils
 Requires:       telnet
+
 # This is required by fence_virsh. Per discussion on fedora-devel
 # switching from package to file based require.
-Requires:       /usr/bin/virsh
+Recommends:     /usr/bin/virsh
 
 # This is required by fence_ipmilan. it appears that the packages
 # have changed Requires around. Make sure to get the right one.
-Requires:       /usr/bin/ipmitool
+Recommends:     /usr/bin/ipmitool
+
+Recommends:     openwsman-python
 
 %if 0%{?with_regression_tests}
 BuildRequires:  time
@@ -112,6 +115,7 @@
 %patch6 -p1
 %patch7 -p1
 %patch9 -p1
+%patch10 -p1
 
 %build
 CFLAGS="${CFLAGS} ${RPM_OPT_FLAGS}"

++++++ 0010-Make-pywsman-dependency-optional.patch ++++++
>From dc8cc03057f3c4ac809689fd95a06da1e64dcb8f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?= <[email protected]>
Date: Tue, 14 Feb 2017 15:32:39 +0100
Subject: [PATCH] Make pywsman dependency optional

If the pywsman python library is only imported when it is actually used,
it becomes possible to generate the man pages for the fence_amt_ws agent
even if it is not installed. That then means that there is no need to
require pywsman for the whole fence-agents package to be installable.

In our (SLE) case, pywsman is only available in the SDK module, so we
can't have a hard require on it in order to build or install the
fence-agents package for HA.
---
 configure.ac                        | 1 -
 fence/agents/amt_ws/fence_amt_ws.py | 9 ++++++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 4efa041..e17b95c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -163,7 +163,6 @@ AC_PYTHON_MODULE(suds, 1)
 AC_PYTHON_MODULE(pexpect, 1)
 AC_PYTHON_MODULE(pycurl, 1)
 AC_PYTHON_MODULE(requests, 1)
-AC_PYTHON_MODULE(pywsman, 1)
 
 ## path to 3rd-party binaries
 AC_PATH_PROG([IPMITOOL_PATH], [ipmitool], [/usr/bin/ipmitool])
diff --git a/fence/agents/amt_ws/fence_amt_ws.py 
b/fence/agents/amt_ws/fence_amt_ws.py
index 5284a77..b4343bb 100755
--- a/fence/agents/amt_ws/fence_amt_ws.py
+++ b/fence/agents/amt_ws/fence_amt_ws.py
@@ -24,7 +24,6 @@ sys.path.append("@FENCEAGENTSLIBDIR@")
 from fencing import *
 from fencing import run_delay, fail_usage, fail, EC_STATUS
 
-import pywsman
 from xml.etree import ElementTree
 
 
@@ -63,6 +62,8 @@ def xml_find(doc, namespace, item):
     return tree.find(query)
 
 def _generate_power_action_input(action):
+    import pywsman
+
     method_input = "RequestPowerStateChange_INPUT"
     address = 'http://schemas.xmlsoap.org/ws/2004/08/addressing'
     anonymous = ('http://schemas.xmlsoap.org/ws/2004/08/addressing/'
@@ -87,6 +88,8 @@ def _generate_power_action_input(action):
     return doc
 
 def get_power_status(_, options):
+    import pywsman
+
     client = pywsman.Client(options["--ip"], int(options["--ipport"]), \
                             '/wsman', 'http', 'admin', options["--password"])
     namespace = CIM_AssociatedPowerManagementService
@@ -114,6 +117,8 @@ def get_power_status(_, options):
         fail(EC_STATUS)
 
 def set_power_status(_, options):
+    import pywsman
+
     client = pywsman.Client(options["--ip"], int(options["--ipport"]), \
                             '/wsman', 'http', 'admin', options["--password"])
 
@@ -142,6 +147,8 @@ def set_power_status(_, options):
         fail(EC_STATUS)
 
 def set_boot_order(_, client, options):
+    import pywsman
+
     method_input = "ChangeBootOrder_INPUT"
     address = 'http://schemas.xmlsoap.org/ws/2004/08/addressing'
     anonymous = ('http://schemas.xmlsoap.org/ws/2004/08/addressing/'
-- 
2.10.1


Reply via email to