[sblim-cmpi-sysfs] Update provider registration script to use systemctl to stop/start sfcb, Use new macros for %%pre/%%

vcrhonek vcrhonek at fedoraproject.org
Tue Mar 3 10:59:45 UTC 2015


commit 1bbd95f4efae617476ecf0a2cad6257036ea4eb9
Author: Vitezslav Crhonek <vcrhonek at redhat.com>
Date:   Tue Mar 3 11:59:38 2015 +0100

    Update provider registration script to use systemctl to stop/start sfcb, Use new macros for %%pre/%%post/%%preun from sblim-cmpi-devel

 sblim-cmpi-sysfs-1.2.0-prov-reg-sfcb-systemd.patch | 42 ++++++++++
 sblim-cmpi-sysfs.spec                              | 94 +++-------------------
 2 files changed, 54 insertions(+), 82 deletions(-)
---
diff --git a/sblim-cmpi-sysfs-1.2.0-prov-reg-sfcb-systemd.patch b/sblim-cmpi-sysfs-1.2.0-prov-reg-sfcb-systemd.patch
new file mode 100644
index 0000000..13c502c
--- /dev/null
+++ b/sblim-cmpi-sysfs-1.2.0-prov-reg-sfcb-systemd.patch
@@ -0,0 +1,42 @@
+diff -up sblim-cmpi-sysfs-1.2.0/provider-register.sh.orig sblim-cmpi-sysfs-1.2.0/provider-register.sh
+--- sblim-cmpi-sysfs-1.2.0/provider-register.sh.orig	2015-02-24 12:33:32.968193395 +0100
++++ sblim-cmpi-sysfs-1.2.0/provider-register.sh	2015-02-24 12:35:44.646754717 +0100
+@@ -326,20 +326,8 @@ sfcb_rebuild()
+     if ps -C sfcbd > /dev/null 2>&1
+     then
+         # sfcb is running -- need to restart
+-	for INITSCRIPT in /etc/init.d/sfcb /usr/local/etc/init.d/sfcb none
+-	do
+-	  if test -x $INITSCRIPT
+-	  then
+-	      break;
+-	  fi
+-	done
+ 	chatter "Shutting down sfcb."
+-	if test $INITSCRIPT = none
+-	then
+-	    killall sfcbd
+-	else
+-	    $INITSCRIPT stop
+-	fi
++	systemctl stop sblim-sfcb
+ 	t=0
+ 	while ps -C sfcbd > /dev/null 2>&1
+ 	do
+@@ -360,14 +348,8 @@ sfcb_rebuild()
+ 	    return 1
+ 	fi
+ 	
+-	if test $INITSCRIPT = none
+-	then
+-	    echo "No init script found - you need to start sfcbd manually." >&2
+-	    return 1
+-	else
+-	    chatter "Restarting sfcb."
+-	    $INITSCRIPT start
+-	fi
++	chatter "Restarting sfcb."
++	systemctl start sblim-sfcb
+     else
+ 	# Not running - rebuild repository
+ 	chatter "Rebuilding repository."
diff --git a/sblim-cmpi-sysfs.spec b/sblim-cmpi-sysfs.spec
index 63216ba..c4cc771 100644
--- a/sblim-cmpi-sysfs.spec
+++ b/sblim-cmpi-sysfs.spec
@@ -2,7 +2,7 @@
 
 Name:           sblim-cmpi-sysfs
 Version:        1.2.0
-Release:        11%{?dist}
+Release:        12%{?dist}
 Summary:        SBLIM sysfs instrumentation
 
 Group:          Applications/System
@@ -20,6 +20,8 @@ Patch1:         sblim-cmpi-sysfs-1.2.0-sysfs-links.patch
 Patch2:         sblim-cmpi-sysfs-1.2.0-docdir.patch
 # Patch3: use Pegasus root/interop instead of root/PG_Interop
 Patch3:         sblim-cmpi-sysfs-1.2.0-pegasus-interop.patch
+# Patch4: call systemctl in provider registration
+Patch4:         sblim-cmpi-sysfs-1.2.0-prov-reg-sfcb-systemd.patch
 
 BuildRequires:  sblim-cmpi-devel sblim-cmpi-base-devel
 Requires:       sblim-cmpi-base cim-server
@@ -42,6 +44,7 @@ SBLIM Base Params Testcase Files for SBLIM Testsuite
 %patch1 -p1 -b .sysfs-links
 %patch2 -p1 -b .docdir
 %patch3 -p1 -b .pegasus-interop
+%patch4 -p1 -b .prov-reg-sfcb-systemd
 sed -ri 's,-type d -maxdepth 1 -mindepth 1,-maxdepth 1 -mindepth 1 -type d,g' \
         ./test/system/linux/*.{sh,system}
 
@@ -88,99 +91,26 @@ mv $RPM_BUILD_ROOT/%{_libdir}/libLinux_SysfsDeviceUtil.so $RPM_BUILD_ROOT/%{prov
 
 
 %global SCHEMA %{_datadir}/%{name}/Linux_SysfsAttribute.mof %{_datadir}/%{name}/Linux_SysfsBlockDevice.mof %{_datadir}/%{name}/Linux_SysfsBusDevice.mof %{_datadir}/%{name}/Linux_SysfsInputDevice.mof %{_datadir}/%{name}/Linux_SysfsNetworkDevice.mof %{_datadir}/%{name}/Linux_SysfsSCSIDevice.mof %{_datadir}/%{name}/Linux_SysfsSCSIHostDevice.mof %{_datadir}/%{name}/Linux_SysfsTTYDevice.mof
+
 %global REGISTRATION %{_datadir}/%{name}/Linux_SysfsAttribute.registration %{_datadir}/%{name}/Linux_SysfsBlockDevice.registration %{_datadir}/%{name}/Linux_SysfsBusDevice.registration %{_datadir}/%{name}/Linux_SysfsInputDevice.registration %{_datadir}/%{name}/Linux_SysfsNetworkDevice.registration %{_datadir}/%{name}/Linux_SysfsSCSIDevice.registration %{_datadir}/%{name}/Linux_SysfsSCSIHostDevice.registration %{_datadir}/%{name}/Linux_SysfsTTYDevice.registration
 
 %pre
-function unregister()
-{
-  %{_datadir}/%{name}/provider-register.sh -d \
-        $1 \
-        -m %{SCHEMA} \
-        -r %{REGISTRATION} > /dev/null 2>&1 || :;
-  # don't let registration failure when server not running fail upgrade!
-}
- 
-# If upgrading, deregister old version
-if [ $1 -gt 1 ]
-then
-        unregistered=no
-        if [ -e /usr/sbin/cimserver ]; then
-           unregister "-t pegasus";
-           unregistered=yes
-        fi  
- 
-        if [ -e /usr/sbin/sfcbd ]; then
-           unregister "-t sfcb";
-           unregistered=yes
-        fi  
- 
-        if [ "$unregistered" != yes ]; then
-           unregister
-        fi  
-fi
+%sblim_pre
 
 %post
-function register()
-{
-  # The follwoing script will handle the registration for various CIMOMs.
-  %{_datadir}/%{name}/provider-register.sh \
-        $1 \
-        -m %{SCHEMA} \
-        -r %{REGISTRATION} > /dev/null 2>&1 || :;
-  # don't let registration failure when server not running fail install!
-}
- 
-/sbin/ldconfig
-if [ $1 -ge 1 ]
-then
-        registered=no
-        if [ -e /usr/sbin/cimserver ]; then
-          register "-t pegasus";
-          registered=yes
-        fi  
- 
-        if [ -e /usr/sbin/sfcbd ]; then
-          register "-t sfcb";
-          registered=yes
-        fi
- 
-        if [ "$registered" != yes ]; then
-          register
-        fi
-fi
+%sblim_post
 
 %preun
-function unregister()
-{
-  %{_datadir}/%{name}/provider-register.sh -d \
-        $1 \
-        -m %{SCHEMA} \
-        -r %{REGISTRATION} > /dev/null 2>&1 || :;
-  # don't let registration failure when server not running fail erase!
-}
- 
-if [ $1 -eq 0 ]
-then
-        unregistered=no
-        if [ -e /usr/sbin/cimserver ]; then
-          unregister "-t pegasus";
-          unregistered=yes
-        fi
- 
-        if [ -e /usr/sbin/sfcbd ]; then
-          unregister "-t sfcb";
-          unregistered=yes
-        fi
- 
-        if [ "$unregistered" != yes ]; then
-          unregister
-        fi
-fi
+%sblim_preun
  
 %postun -p /sbin/ldconfig
 
 
 %changelog
+* Tue Mar 03 2015 Vitezslav Crhonek <vcrhonek at redhat.com> - 1.2.0-12
+- Update provider registration script to use systemctl to stop/start sfcb
+- Use new macros for %%pre/%%post/%%preun from sblim-cmpi-devel
+
 * Mon Aug 18 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.2.0-11
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
 


More information about the scm-commits mailing list