SPECS: openldap.spec - minimizing restarts logics (based on apache...

glen glen at pld-linux.org
Mon Feb 6 17:34:33 CET 2006


Author: glen                         Date: Mon Feb  6 16:34:33 2006 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- minimizing restarts logics (based on apache.spec)
- rel 2, STBR

---- Files affected:
SPECS:
   openldap.spec (1.226 -> 1.227) 

---- Diffs:

================================================================
Index: SPECS/openldap.spec
diff -u SPECS/openldap.spec:1.226 SPECS/openldap.spec:1.227
--- SPECS/openldap.spec:1.226	Mon Feb  6 17:19:24 2006
+++ SPECS/openldap.spec	Mon Feb  6 17:34:27 2006
@@ -19,7 +19,7 @@
 Summary(uk):	úŇÁÚËÉ ËĚŚ¤ÎÔŚ× LDAP
 Name:		openldap
 Version:	2.3.19
-Release:	1
+Release:	2
 License:	OpenLDAP Public License
 Group:		Networking/Daemons
 Source0:	ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/%{name}-%{version}.tgz
@@ -51,7 +51,7 @@
 BuildRequires:	openssl-devel >= 0.9.7d
 %{?with_perl:BuildRequires:	perl-devel}
 BuildRequires:	readline-devel >= 4.2
-BuildRequires:	rpmbuild(macros) >= 1.202
+BuildRequires:	rpmbuild(macros) >= 1.268
 %{?with_odbc:BuildRequires:	unixODBC-devel}
 Requires:	%{name}-libs = %{version}-%{release}
 Obsoletes:	openldap-clients
@@ -180,7 +180,7 @@
 Summary:	BDB backend to OpenLDAP server
 Summary(pl):	Backend BDB do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-bdb
@@ -193,7 +193,7 @@
 Summary:	DNS SRV backend to OpenLDAP server
 Summary(pl):	Backend DNS SRV do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-dnssrv
@@ -206,7 +206,7 @@
 Summary:	HDB (Hierarchical DB) backend to OpenLDAP server
 Summary(pl):	Backend HDB (Hierarchical DB) do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-hdb
@@ -219,7 +219,7 @@
 Summary:	LDAP backend to OpenLDAP server
 Summary(pl):	Backend LDAP do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-ldap
@@ -232,7 +232,7 @@
 Summary:	LDBM backend to OpenLDAP server
 Summary(pl):	Backend LDBM do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-ldbm
@@ -245,7 +245,7 @@
 Summary:	Meta backend to OpenLDAP server
 Summary(pl):	Backend Meta do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-meta
@@ -258,7 +258,7 @@
 Summary:	Monitor backend to OpenLDAP server
 Summary(pl):	Backend Monitor do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-monitor
@@ -271,7 +271,7 @@
 Summary:	/etc/passwd backend to OpenLDAP server
 Summary(pl):	Backend /etc/passwd do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-passwd
@@ -284,7 +284,7 @@
 Summary:	Perl backend to OpenLDAP server
 Summary(pl):	Backend Perl do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 Requires:	perl(DynaLoader) = %(%{__perl} -MDynaLoader -e 'print DynaLoader->VERSION')
 
@@ -298,7 +298,7 @@
 Summary:	Relay backend to OpenLDAP server
 Summary(pl):	Backend przekazujący do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-overlay-rwm = %{version}-%{release}
 Requires:	%{name}-servers = %{version}-%{release}
 
@@ -318,7 +318,7 @@
 Summary:	Shell backend to OpenLDAP server
 Summary(pl):	Backend Shell do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-shell
@@ -331,7 +331,7 @@
 Summary:	SQL backend to OpenLDAP server
 Summary(pl):	Backend SQL do serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description backend-sql
@@ -344,7 +344,7 @@
 Summary:	Accesslog overlay for OpenLDAP server
 Summary(pl):	Nakładka accesslog dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-accesslog
@@ -357,7 +357,7 @@
 Summary:	Denyop overlay for OpenLDAP server
 Summary(pl):	Nakładka zabraniająca wykonania operacji dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-denyop
@@ -376,7 +376,7 @@
 Summary:	Dyngroup overlay for OpenLDAP server
 Summary(pl):	Nakładka dynamicznych grup dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-dyngroup
@@ -397,7 +397,7 @@
 Summary:	Dynnamic list overlay for OpenLDAP server
 Summary(pl):	Nakładka dynamicznych list dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-dynlist
@@ -411,7 +411,7 @@
 Summary:	Last Modification overlay for OpenLDAP server
 Summary(pl):	Nakładka Last Modification dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-lastmod
@@ -430,7 +430,7 @@
 Summary:	Proxy cache overlay for OpenLDAP server
 Summary(pl):	Nakładka proxy cache dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-pcache
@@ -445,7 +445,7 @@
 Summary:	Password Policy overlay for OpenLDAP server
 Summary(pl):	Nakładka do polityki haseł dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-ppolicy
@@ -464,7 +464,7 @@
 Summary:	Referential Integrity overlay for OpenLDAP server
 Summary(pl):	Nakładka sprawdzają integralność odwołań dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-refint
@@ -479,7 +479,7 @@
 Summary:	Return code overlay for OpenLDAP server
 Summary(pl):	Nakładka obsługująca zwracane wartości dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-retcode
@@ -497,7 +497,7 @@
 Summary:	Rewrite/remap overlay for OpenLDAP server
 Summary(pl):	Nakładka mapująca dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-rwm
@@ -518,7 +518,7 @@
 Summary:	Syncrepl Provider overlay for OpenLDAP server
 Summary(pl):	Nakładka Syncrepl Provider dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-syncprov
@@ -539,7 +539,7 @@
 Summary:	Translucent Proxy overlay for OpenLDAP server
 Summary(pl):	Nakładka Translucent Proxy dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-translucent
@@ -560,7 +560,7 @@
 Summary:	Uniqueness overlay for OpenLDAP server
 Summary(pl):	Nakładka sprawdzająca unikatowość dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-unique
@@ -575,7 +575,7 @@
 Summary:	Valsort overlay for OpenLDAP server
 Summary(pl):	Nakładka valsort dla serwera OpenLDAP
 Group:		Networking/Daemons
-Requires(post,preun):	/bin/ed
+Requires(post,preun):	sed >= 4.0
 Requires:	%{name}-servers = %{version}-%{release}
 
 %description overlay-valsort
@@ -608,9 +608,11 @@
 Provides:	group(slapd)
 Provides:	user(slapd)
 Obsoletes:	openldap-overlay-glue
+# for the posttrans scriptlet, conflicts because in vserver environment rpm package is not installed.
+Conflicts:	rpm < 4.4.2-0.2
 
 %description servers
-The openldap2-server package has the slapd daemon which is responsible
+The openldap-server package has the slapd daemon which is responsible
 for handling the database and client queries.
 
 The package includes:
@@ -773,22 +775,22 @@
 
 %post servers
 /sbin/chkconfig --add ldap
-if [ -f /var/lock/subsys/ldap ]; then
-	/etc/rc.d/init.d/ldap restart >&2
-else
-	echo "Run '/etc/rc.d/init.d/ldap start' to start OpenLDAP server." >&2
-fi
 
-%triggerpostun servers -- openldap-servers < 2.1.12
-if [ "`/usr/bin/getent passwd slapd | cut -d: -f6`" = "/var/lib/openldap-ldbm" ]; then
-	/usr/sbin/usermod -d /var/lib/openldap-data slapd
-fi
+# minimizing restarts logics. we restart server:
+#
+# 1. at the end of transaction. (posttrans, feature from rpm 4.4.2)
+# 2. first install of module (post: $1 == 1)
+# 2. uninstall of module (postun: $1 == 0)
+#
+# the strict internal deps between modules and
+# server package are very important for all this to work.
+
+%posttrans servers
+%service ldap restart "OpenLDAP server"
 
 %preun servers
 if [ "$1" = "0" ] ; then
-	if [ -f /var/lock/subsys/ldap ]; then
-		/etc/rc.d/init.d/ldap stop >&2 || :
-	fi
+	%service ldap stop
 	/sbin/chkconfig --del ldap || :
 fi
 
@@ -800,15 +802,15 @@
 
 %define	ldap_module_add() \
 %{__sed} -i -e 's/^#[[:blank:]]*moduleload[[:blank:]]\\+%1[[:blank:]]*$/moduleload	%1/' %{_sysconfdir}/openldap/slapd.conf \
-if [ -f /var/lock/subsys/ldap ]; then \
-	/etc/rc.d/init.d/ldap restart >&2 \
+if [ "$1" = "1" ]; then \
+	%service ldap restart "OpenLDAP server" \
 fi \
 %{nil}
 
 %define	ldap_module_remove() \
 %{__sed} -i -e 's/^[[:blank:]]*moduleload[[:blank:]]\\+%1[[:blank:]]*$/# moduleload   %1/' %{_sysconfdir}/openldap/slapd.conf \
-if [ -f /var/lock/subsys/ldap ]; then \
-	/etc/rc.d/init.d/ldap restart >&2 \
+if [ "$1" = "0" ]; then \
+	%service ldap restart "OpenLDAP server" \
 fi \
 %{nil}
 
@@ -816,212 +818,165 @@
 %ldap_module_add back_bdb.la
 
 %preun backend-bdb
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_bdb.la
-fi
+%ldap_module_remove back_bdb.la
 
 %post backend-dnssrv
 %ldap_module_add back_dnssrv.la
 
 %preun backend-dnssrv
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_dnssrv.la
-fi
+%ldap_module_remove back_dnssrv.la
 
 %post backend-hdb
 %ldap_module_add back_hdb.la
 
 %preun backend-hdb
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_hdb.la
-fi
+%ldap_module_remove back_hdb.la
 
 %post backend-ldap
 %ldap_module_add back_ldap.la
 
 %preun backend-ldap
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_ldap.la
-fi
+%ldap_module_remove back_ldap.la
 
 %post backend-ldbm
 %ldap_module_add back_ldbm.la
 
 %preun backend-ldbm
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_ldbm.la
-fi
+%ldap_module_remove back_ldbm.la
 
 %post backend-meta
 %ldap_module_add back_meta.la
 
 %preun backend-meta
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_meta.la
-fi
+%ldap_module_remove back_meta.la
 
 %post backend-monitor
 %ldap_module_add back_monitor.la
 
 %preun backend-monitor
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_monitor.la
-fi
+%ldap_module_remove back_monitor.la
 
 %post backend-passwd
 %ldap_module_add back_passwd.la
 
 %preun backend-passwd
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_passwd.la
-fi
+%ldap_module_remove back_passwd.la
 
 %if %{with perl}
 %post backend-perl
 %ldap_module_add back_perl.la
 
 %preun backend-perl
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_perl.la
-fi
+%ldap_module_remove back_perl.la
 %endif
 
 %post backend-relay
 %ldap_module_add back_relay.la
 
 %preun backend-relay
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_relay.la
-fi
+%ldap_module_remove back_relay.la
 
 %post backend-shell
 %ldap_module_add back_shell.la
 
 %preun backend-shell
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_shell.la
-fi
+%ldap_module_remove back_shell.la
 
 %if %{with odbc}
 %post backend-sql
 %ldap_module_add back_sql.la
 
 %preun backend-sql
-if [ "$1" = 0 ]; then
-	%ldap_module_remove back_sql.la
-fi
+%ldap_module_remove back_sql.la
 %endif
 
 %post overlay-pcache
 %ldap_module_add pcache.la
 
 %preun overlay-pcache
-if [ "$1" = 0 ]; then
-	%ldap_module_remove pcache.la
-fi
+%ldap_module_remove pcache.la
 
 %post overlay-accesslog
 %ldap_module_add accesslog.la
 
 %preun overlay-accesslog
-if [ "$1" = 0 ]; then
-	%ldap_module_remove accesslog.la
-fi
+%ldap_module_remove accesslog.la
 
 %post overlay-denyop
 %ldap_module_add denyop.la
 
 %preun overlay-denyop
-if [ "$1" = 0 ]; then
-	%ldap_module_remove denyop.la
-fi
+%ldap_module_remove denyop.la
 
 %post overlay-dyngroup
 %ldap_module_add dyngroup.la
 
 %preun overlay-dyngroup
-if [ "$1" = 0 ]; then
-	%ldap_module_remove dyngroup.la
-fi
+%ldap_module_remove dyngroup.la
 
 %post overlay-dynlist
 %ldap_module_add dynlist.la
 
 %preun overlay-dynlist
-if [ "$1" = 0 ]; then
-	%ldap_module_remove dynlist.la
-fi
+%ldap_module_remove dynlist.la
 
 %post overlay-lastmod
 %ldap_module_add lastmod.la
 
 %preun overlay-lastmod
-if [ "$1" = 0 ]; then
-	%ldap_module_remove lastmod.la
-fi
+%ldap_module_remove lastmod.la
 
 %post overlay-ppolicy
 %ldap_module_add ppolicy.la
 
 %preun overlay-ppolicy
-if [ "$1" = 0 ]; then
-	%ldap_module_remove ppolicy.la
-fi
+%ldap_module_remove ppolicy.la
 
 %post overlay-refint
 %ldap_module_add refint.la
 
 %preun overlay-refint
-if [ "$1" = 0 ]; then
-	%ldap_module_remove refint.la
-fi
+%ldap_module_remove refint.la
 
 %post overlay-retcode
 %ldap_module_add retcode.la
 
 %preun overlay-retcode
-if [ "$1" = 0 ]; then
-	%ldap_module_remove retcode.la
-fi
+%ldap_module_remove retcode.la
 
 %post overlay-rwm
 %ldap_module_add rwm.la
 
 %preun overlay-rwm
-if [ "$1" = 0 ]; then
-	%ldap_module_remove rwm.la
-fi
+%ldap_module_remove rwm.la
 
 %post overlay-syncprov
 %ldap_module_add syncprov.la
 
 %preun overlay-syncprov
-if [ "$1" = 0 ]; then
-	%ldap_module_remove syncprov.la
-fi
+%ldap_module_remove syncprov.la
 
 %post overlay-translucent
 %ldap_module_add translucent.la
 
 %preun overlay-translucent
-if [ "$1" = 0 ]; then
-	%ldap_module_remove translucent.la
-fi
+%ldap_module_remove translucent.la
 
 %post overlay-unique
 %ldap_module_add unique.la
 
 %preun overlay-unique
-if [ "$1" = 0 ]; then
-	%ldap_module_remove unique.la
-fi
+%ldap_module_remove unique.la
 
 %post overlay-valsort
 %ldap_module_add valsort.la
 
 %preun overlay-valsort
-if [ "$1" = 0 ]; then
-	%ldap_module_remove valsort.la
+%ldap_module_remove valsort.la
+
+%triggerpostun servers -- openldap-servers < 2.1.12
+if [ "`/usr/bin/getent passwd slapd | cut -d: -f6`" = "/var/lib/openldap-ldbm" ]; then
+	/usr/sbin/usermod -d /var/lib/openldap-data slapd
 fi
 
 %files
@@ -1241,6 +1196,10 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.227  2006/02/06 16:34:27  glen
+- minimizing restarts logics (based on apache.spec)
+- rel 2, STBR
+
 Revision 1.226  2006/02/06 16:19:24  glen
 - adapterised (killed prereq)
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SPECS/openldap.spec?r1=1.226&r2=1.227&f=u



More information about the pld-cvs-commit mailing list