packages: postgresql/postgresql.init, postgresql/postgresql.spec - upstart_...
jajcus
jajcus at pld-linux.org
Mon May 10 14:49:21 CEST 2010
Author: jajcus Date: Mon May 10 12:49:21 2010 GMT
Module: packages Tag: HEAD
---- Log message:
- upstart_native branch merged
- restart upstart service on upgrade
---- Files affected:
packages/postgresql:
postgresql.init (1.78 -> 1.79) , postgresql.spec (1.442 -> 1.443)
---- Diffs:
================================================================
Index: packages/postgresql/postgresql.init
diff -u packages/postgresql/postgresql.init:1.78 packages/postgresql/postgresql.init:1.79
--- packages/postgresql/postgresql.init:1.78 Thu Oct 23 22:52:44 2008
+++ packages/postgresql/postgresql.init Mon May 10 14:49:15 2010
@@ -167,6 +167,9 @@
pgsubsys
}
+
+upstart_controlled --except status init
+
RETVAL=0
# See how we were called.
# Every action is performed for all given (all configured by default)
================================================================
Index: packages/postgresql/postgresql.spec
diff -u packages/postgresql/postgresql.spec:1.442 packages/postgresql/postgresql.spec:1.443
--- packages/postgresql/postgresql.spec:1.442 Mon Apr 12 14:32:23 2010
+++ packages/postgresql/postgresql.spec Mon May 10 14:49:15 2010
@@ -26,7 +26,7 @@
Summary(zh_CN.UTF-8): PostgreSQL 客户端程序和库文件
Name: postgresql
Version: %{mver}.3
-Release: 4
+Release: 4.1
License: BSD
Group: Applications/Databases
Source0: ftp://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2
@@ -37,6 +37,8 @@
Source3: %{name}.sysconfig
Source4: edb-debugger-20100404.tgz
# Source4-md5: a10daee9a2017db40c7550c40cb47e8d
+Source5: %{name}.upstart
+Source6: %{name}-instance.upstart
Patch0: %{name}-conf.patch
Patch1: %{name}-absolute_dbpaths.patch
Patch2: %{name}-ecpg-includedir.patch
@@ -78,7 +80,7 @@
Requires(triggerpostun): /usr/sbin/usermod
Requires: %{name}-clients = %{version}-%{release}
Requires: %{name}-libs = %{version}-%{release}
-Requires: rc-scripts
+Requires: rc-scripts >= 0.4.3.0
Requires: tzdata
Obsoletes: postgresql-module-tsearch2
Obsoletes: postgresql-server
@@ -92,6 +94,25 @@
%define contrib_modules auto_explain adminpack btree_gin btree_gist chkpass citext cube dblink dict_int dict_xsyn earthdistance fuzzystrmatch hstore intagg intarray isn lo ltree oid2name pageinspect pgbench pg_buffercache pgcrypto pg_freespacemap pgrowlocks pg_standby pg_stat_statements pgstattuple pg_trgm pldebugger seg sslinfo tablefunc uuid-ossp vacuumlo xml2
+## to be moved to rpm-build-macros
+## TODO: handle RPM_SKIP_AUTO_RESTART
+
+# migrate from init script to upstart job
+%define upstart_post() \
+ if [ -f /var/lock/subsys/"%1" ] ; then \
+ /sbin/service --no-upstart "%1" stop \
+ /sbin/service "%1" start \
+ else \
+ /sbin/service "%1" try-restart \
+ fi
+
+# restart the job after upgrade or migrate to init script on removal
+%define upstart_postun() \
+ if [ -x /sbin/initctl ] && /sbin/initctl status "%1" 2>/dev/null | grep -q 'running' ; then \
+ /sbin/initctl stop "%1" 2>/dev/null \
+ [ -f "/etc/rc.d/init.d/%1" -o -f "/etc/init/%1.conf" ] && /sbin/service "%1" start \
+ fi
+
%description
PostgreSQL Data Base Management System (formerly known as Postgres,
then as Postgres95).
@@ -314,6 +335,19 @@
PostgreSQL працює на Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD
та більшості інших різновидів Unix.
+%package upstart
+Summary: Upstart job description for PostgreSQL server
+Summary(pl.UTF-8): Opis zadania Upstart dla serwera PostgreSQL
+Group: Daemons
+Requires: %{name} = %{version}-%{release}
+Requires: upstart >= 0.6
+
+%description upstart
+Upstart job description for PostgreSQL.
+
+%description upstart -l pl.UTF-8
+Opis zadania Upstart dla PostgreSQL.
+
%package devel
Summary: PostgreSQL development header files and libraries
Summary(de.UTF-8): PostgreSQL-Entwicklungs-Header-Dateien und Libraries
@@ -823,7 +857,7 @@
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,init/%{name}}} \
$RPM_BUILD_ROOT{/var/{lib/pgsql,log},%{_pgsqldir}} \
$RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \
$RPM_BUILD_ROOT%{_mandir} \
@@ -849,6 +883,9 @@
install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/postgresql
install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/postgresql
+install %{SOURCE5} $RPM_BUILD_ROOT/etc/init/%{name}.conf
+install %{SOURCE6} $RPM_BUILD_ROOT/etc/init/%{name}/instance.conf
+
install -d howto
tar zxf %{SOURCE2} -C howto
@@ -939,6 +976,12 @@
/sbin/chkconfig --del postgresql
fi
+%post upstart
+%upstart_post postgresql
+
+%postun upstart
+%upstart_postun postgresql
+
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
@@ -987,6 +1030,12 @@
%{_mandir}/man1/postgres.1*
%{_mandir}/man1/postmaster.1*
+%files upstart
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) /etc/init/postgresql.conf
+%dir /etc/init/postgresql
+%config(noreplace) %verify(not md5 mtime size) /etc/init/postgresql/instance.conf
+
%files doc
%defattr(644,root,root,755)
%doc doc/unpacked/* howto
@@ -1227,6 +1276,17 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.443 2010/05/10 12:49:15 jajcus
+- upstart_native branch merged
+- restart upstart service on upgrade
+
+Revision 1.442.2.2 2010/05/07 16:53:49 jajcus
+- dependencies improvement
+
+Revision 1.442.2.1 2010/05/07 13:02:42 jajcus
+- proof of concept native upstart job implementation: postgresql as an example
+ of multi-instace service.
+
Revision 1.442 2010/04/12 12:32:23 baggins
- rel 4
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/postgresql/postgresql.init?r1=1.78&r2=1.79&f=u
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/postgresql/postgresql.spec?r1=1.442&r2=1.443&f=u
More information about the pld-cvs-commit
mailing list