SPECS: pgpool.spec - rc-script added - sysconfig file added - pam support a...
sardzent
sardzent at pld-linux.org
Fri Jun 13 23:17:37 CEST 2008
Author: sardzent Date: Fri Jun 13 21:17:37 2008 GMT
Module: SPECS Tag: HEAD
---- Log message:
- rc-script added
- sysconfig file added
- pam support added
- 240/240 uid/gid
- doesn't chown to user yet
- monitrc file added
- logrotate file missing
---- Files affected:
SPECS:
pgpool.spec (1.8 -> 1.9)
---- Diffs:
================================================================
Index: SPECS/pgpool.spec
diff -u SPECS/pgpool.spec:1.8 SPECS/pgpool.spec:1.9
--- SPECS/pgpool.spec:1.8 Mon Nov 26 22:24:45 2007
+++ SPECS/pgpool.spec Fri Jun 13 23:17:31 2008
@@ -2,26 +2,60 @@
#
# TODO
# - I think it shuld be daemon so rc-scripts support is needed
-# (user pgpool?)
+# (user pgpool?) init script must be fixed
+#
+%bcond_without pam # don't build with pam support
#
Summary: Pgpool - a connection pooling/replication server for PostgreSQL
Summary(pl.UTF-8): Pgpool - serwer puli połączeń i replikacji dla PostgreSQL-a
Name: pgpool
Version: 3.4.1
-Release: 1
+Release: 0.1
License: BSD
Group: Applications/Databases
Source0: http://pgfoundry.org/frs/download.php/1446/%{name}-%{version}.tar.gz
# Source0-md5: 1f876237923be8095ed6fb30885a416a
+Source1: %{name}.init
+Source2: %{name}.monitrc
+Source3: %{name}.sysconfig
URL: http://pgfoundry.org/projects/pgpool/
+%{?with_pam:BuildRequires: pam-devel}
+Requires(post,preun): /sbin/chkconfig
+Requires(postun): /usr/sbin/groupdel
+Requires(postun): /usr/sbin/userdel
+Requires(pre): /bin/id
+Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
+%{?with_pam:Requires: pam}
+Requires: rc-scripts >= 0.2.0
+Provides: group(pgpool)
+Provides: user(pgpool)
+Provides: pgpool
Buildroot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Pgpool is a connection pooling/replication server for PostgreSQL.
+Pgpool runs between PostgreSQL's clients(front ends) and servers
+(backends). A PostgreSQL client can connect to pgpool as if it
+were a standard PostgreSQL server.
%description -l pl.UTF-8
Pgpool to serwer puli połączeń i replikacji dla PostgreSQL-a.
+%package -n monit-rc-pgpool
+Summary: pgpool support for monit
+Summary(pl.UTF-8): wsparcie pgpool dla monit
+Group: Applications/System
+Requires: %{name} = %{version}-%{release}
+Requires: monit
+
+%description -n monit-rc-pgpool
+monitrc file for pgpool monitoring.
+
+%description -n monit-rc-pgpool -l pl.UTF-8
+plik monitrc do monitorowania pgpool.
+
%prep
%setup -q
%build
@@ -30,29 +64,70 @@
%configure \
--bindir %{_bindir} \
+ %{?with_pam:--with-pam} \
--sysconfdir=%{_sysconfdir}
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
+
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \
+ $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,monit,pam.d} \
+ $RPM_BUILD_ROOT%{_sbindir}
+
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
install pgpool $RPM_BUILD_ROOT%{_bindir}/
install pgpool.conf.sample $RPM_BUILD_ROOT%{_sysconfdir}/pgpool.conf
install pool_hba.conf.sample $RPM_BUILD_ROOT%{_sysconfdir}/pool_hba.conf
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/monit/%{name}.monitrc
+install %{SOURCE3} $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/%{name}
+%if %{with pam}
+install pgpool.pam $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/pgpool
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
+%pre
+%groupadd -r -g 240 %{name}
+%useradd -r -u 240 -d /usr/share/empty -s /bin/false -c "Pgpool User" -g %{name} %{name}
+
+%post
+/sbin/chkconfig --add %{name}
+%service %{name} restart
+
+%preun
+if [ "$1" = "0" ]; then
+ %service %{name} stop
+ /sbin/chkconfig --del %{name}
+fi
+
+%postun
+if [ "$1" = "0" ]; then
+ %userremove %{name}
+ %groupremove %{name}
+fi
+
%files
%defattr(644,root,root,755)
-%doc AUTHORS COPYING ChangeLog NEWS README TODO
+%doc AUTHORS COPYING ChangeLog NEWS README TODO pgpool.conf.sample pool_hba.conf.sample
%lang(ja) %doc README.euc_jp
%attr(755,root,root) %{_bindir}/pgpool
+%attr(754,root,root) /etc/rc.d/init.d/pgpool
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pgpool.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pool_hba.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sysconfig/%{name}
%{_mandir}/man8/pgpool.8*
+%if %{with pam}
+%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/%{name}
+%endif
+
+%files -n monit-rc-pgpool
+%defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/%{name}.monitrc
%define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
%changelog
@@ -60,6 +135,15 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.9 2008-06-13 21:17:31 sardzent
+- rc-script added
+- sysconfig file added
+- pam support added
+- 240/240 uid/gid
+- doesn't chown to user yet
+- monitrc file added
+- logrotate file missing
+
Revision 1.8 2007-11-26 21:24:45 radek
- version 3.4.1; WARNING: adjust pool_hba.conf to your needs
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SPECS/pgpool.spec?r1=1.8&r2=1.9&f=u
More information about the pld-cvs-commit
mailing list