srpm problem

Horms horms at verge.net.au
Fri May 17 02:42:47 BST 2002


On Tue, May 14, 2002 at 07:43:52PM +0200, Alex Kramarov wrote:
> Hi.
> 
> I just installed lvs director, and would like to report the following problem :
> 
> using the ipvsadm-1.20-6.src.rpm, i ran :
> 
> rpm --rebuild ipvsadm-1.20-6.src.rpm
> rpm -i <the resulting i386.rpm>
> 
> it installs and works fine
> 
> running /etc/init.d/ipvsadm save - results in no response.
> 
> after looking at the code, i saw that /etc/init.d/ipvsadm expects
> /etc/sysconfig/ipvsadm file to exist. it exits if the file does not
> exist. the rpm does not create the file = problem.

Ouch, that sounds a bit broken to me.  I have attached a patch with
resolves this and some other minor RPM related problems.

-- 
Horms
        
-------------- next part --------------
diff -ruN ipvsadm/Makefile ipvsadm.new/Makefile
--- ipvsadm/Makefile	Fri Jan 25 01:57:53 2002
+++ ipvsadm.new/Makefile	Fri May 17 11:16:14 2002
@@ -26,7 +26,7 @@
 
 NAME	= ipvsadm
 VERSION	= $(shell cat VERSION)
-RELEASE	= 5
+RELEASE	= 1
 SCHEDULERS = "$(shell cat SCHEDULERS)"
 
 CC	= gcc
@@ -34,7 +34,8 @@
 SBIN    = $(BUILD_ROOT)/sbin
 MANDIR	= usr/man
 MAN	= $(BUILD_ROOT)/$(MANDIR)/man8
-INIT    = $(BUILD_ROOT)/etc/rc.d/init.d
+INIT    = $(BUILD_ROOT)/etc/init.d
+SYSCONF = $(BUILD_ROOT)/etc/sysconfig
 MKDIR   = mkdir
 INSTALL = install
 INCLUDE = -I/usr/src/linux/include -I.. -I.
@@ -89,6 +90,9 @@
 		if [ -d $(INIT) ]; then \
 		  $(INSTALL) -m 0755 ipvsadm.sh $(INIT)/ipvsadm; \
 		fi
+		if [ -d $(SYSCONF) ]; then \
+		  $(INSTALL) -m 0644 ipvsadm.sysconfig $(SYSCONF)/ipvsadm; \
+		fi
 
 clean:
 		rm -f ipvsadm $(NAME).spec $(NAME)-$(VERSION).tar.gz
@@ -96,16 +100,21 @@
 		find . -name '*.[ao]' -o -name "*~" -o -name "*.orig" \
 		  -o -name "*.rej" -o -name core | xargs rm -f
 
-distclean:	dist
+distclean:	clean
 
 dist:		clean
 		sed -e "s/@@VERSION@@/$(VERSION)/g" \
 		    -e "s/@@RELEASE@@/$(RELEASE)/g" \
 		    < ipvsadm.spec.in > ipvsadm.spec
-		( cd .. ; tar czvf $(NAME)-$(VERSION).tar.gz \
+		( cd .. && \
+			mkdir ipvsadm/net/ && \
+			cp ip_vs.h ipvsadm/net && \
+			tar czvf $(NAME)-$(VERSION).tar.gz \
 			--exclude CVS \
 			--exclude $(NAME)-$(VERSION).tar.gz \
-			ipvsadm ; \
+			ipvsadm && \
+			rm ipvsadm/net/ip_vs.h && \
+			rmdir ipvsadm/net/ && \
 			mv $(NAME)-$(VERSION).tar.gz ipvsadm )
 
 rpm:		rpms
diff -ruN ipvsadm/README ipvsadm.new/README
--- ipvsadm/README	Fri Jan 25 01:23:51 2002
+++ ipvsadm.new/README	Fri May 17 11:14:38 2002
@@ -1,6 +1,6 @@
 --------------------------------------------------------------------------
 
-ipvsadm - Version 1.20 - 18th September 2001
+ipvsadm - Version 1.21 - 17th May 2002
 
 This is free software.  See below for details.
 
@@ -28,7 +28,8 @@
 	/usr/man/man8/ipvsadm.8
 	/usr/man/man8/ipvsadm-save.8
 	/usr/man/man8/ipvsadm-restore.8
-	/etc/rc.d/init.d/ipvsadm
+	/etc/init.d/ipvsadm
+	/etc/sysconfig/ipvsadm
 This will be done automatically when calling
 	make install
 in the source directory.
diff -ruN ipvsadm/VERSION ipvsadm.new/VERSION
--- ipvsadm/VERSION	Wed Sep 19 01:42:54 2001
+++ ipvsadm.new/VERSION	Fri May 17 11:12:26 2002
@@ -1 +1 @@
-1.20
+1.21
diff -ruN ipvsadm/ipvsadm.sh ipvsadm.new/ipvsadm.sh
--- ipvsadm/ipvsadm.sh	Fri May 11 00:17:41 2001
+++ ipvsadm.new/ipvsadm.sh	Fri May 17 11:15:05 2002
@@ -28,9 +28,9 @@
 fi
 
 # Use the funtions provided by Red Hat or use our own
-if [ -f /etc/rc.d/init.d/functions ]
+if [ -f /etc/init.d/functions ]
 then
-  . /etc/rc.d/init.d/functions
+  . /etc/init.d/functions
 else
   function action {
     echo "$1"
diff -ruN ipvsadm/ipvsadm.spec.in ipvsadm.new/ipvsadm.spec.in
--- ipvsadm/ipvsadm.spec.in	Fri Jan 25 01:23:51 2002
+++ ipvsadm.new/ipvsadm.spec.in	Fri May 17 11:15:42 2002
@@ -28,14 +28,15 @@
 
 %install
 rm -rf $RPM_BUILD_ROOT
-mkdir -p ${RPM_BUILD_ROOT}/{sbin,%{_mandir}/man8,etc/rc.d/init.d}
+mkdir -p ${RPM_BUILD_ROOT}/{sbin,%{_mandir}/man8,etc/{init.d,sysconfig}}
 make install BUILD_ROOT=${RPM_BUILD_ROOT} MANDIR=%{_mandir}
 
 
 %files
 %defattr(-,root,root)
 %doc README
-%config /etc/rc.d/init.d/ipvsadm
+%config /etc/init.d/ipvsadm
+%config /etc/sysconfig/ipvsadm
 /sbin/ipvsadm*
 %{_mandir}/man8/ipvsadm*
 
@@ -52,6 +53,12 @@
 
 
 %changelog
+* Fri May 17 2002 Horms <horms at vergenet.net>
+- Include /etc/sysconfig/ipvsadm in RPM
+- Install init script into /etc/init.d instead of /etc/init.d/rc.d
+- Include net/ip_vs.h in source RPM (and tar ball), to avoid having 
+  to install it somewhere before building
+
 * Thu Dec 16 2001 Wensong Zhang <wensong at linuxvirtualserver.org>
 - Changed to install ipvsadm man pages according to the %{_mandir}
 
diff -ruN ipvsadm/ipvsadm.sysconfig ipvsadm.new/ipvsadm.sysconfig
--- ipvsadm/ipvsadm.sysconfig	Thu Jan  1 10:00:00 1970
+++ ipvsadm.new/ipvsadm.sysconfig	Fri May 17 10:40:28 2002
@@ -0,0 +1,7 @@
+######################################################################
+# /etc/sysconfig/ipvsadm
+#
+# To populate this file configure your LVS virtual services and
+# then run /etc/init.d/ipvsadm save
+######################################################################
+


More information about the lvs-users mailing list