[hail] convert to systemd

Tom Callaway spot at fedoraproject.org
Thu Sep 8 17:57:07 UTC 2011


commit 4b058333f5cecb34e09c2041cbee9ebeda2e6a82
Author: Tom "spot" Callaway <tcallawa at redhat.com>
Date:   Thu Sep 8 13:56:56 2011 -0400

    convert to systemd

 chunkd.service |   11 ++++++++
 cld.service    |   11 ++++++++
 hail.spec      |   78 +++++++++++++++++++++----------------------------------
 3 files changed, 52 insertions(+), 48 deletions(-)
---
diff --git a/chunkd.service b/chunkd.service
new file mode 100644
index 0000000..90985ca
--- /dev/null
+++ b/chunkd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Single-node data storage service for hail
+After=syslog.target network.target
+
+[Service]
+EnvironmentFile=-/etc/sysconfig/chunkd
+Type=forking
+ExecStart=/usr/sbin/chunkd $OPTS
+
+[Install]
+WantedBy=multi-user.target
diff --git a/cld.service b/cld.service
new file mode 100644
index 0000000..fd348d0
--- /dev/null
+++ b/cld.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=coarse locking daemon
+After=syslog.target network.target
+
+[Service]
+EnvironmentFile=-/etc/sysconfig/cld
+Type=forking
+ExecStart=/usr/sbin/cld $OPTS
+
+[Install]
+WantedBy=multi-user.target
diff --git a/hail.spec b/hail.spec
index 35cdfdb..b95eb46 100644
--- a/hail.spec
+++ b/hail.spec
@@ -1,6 +1,6 @@
 Name:		hail
 Version:	0.8
-Release:	0.3.gf9c5b967%{?dist}
+Release:	0.4.gf9c5b967%{?dist}
 Summary:	Project Hail core cloud services
 
 Group:		System Environment/Libraries
@@ -13,16 +13,15 @@ Source0:	hail-%{version}git.tar.gz
 
 # cld, chunkd init.d and sysconfig data.  copied from pkg/* in upstream git,
 # commit 554f1338e29342ba6dcfa0bce648d304afc2c1e1
-Source2:	cld.init
+Source2:	cld.service
 Source3:	cld.sysconf
-Source4:	chunkd.init
+Source4:	chunkd.service
 Source5:	chunkd.sysconf
 
-BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-
 BuildRequires:	db4-devel glib2-devel doxygen openssl-devel
 BuildRequires:	texlive-latex fuse-devel libcurl-devel
 BuildRequires:	libxml2-devel procps tokyocabinet-devel
+BuildRequires:	systemd-units
 
 %description
 Core libraries and document associated with cloud computing related
@@ -32,8 +31,7 @@ Project Hail.
 Summary: Coarse locking service for %{name}
 Group: System Environment/Base
 Requires: %{name} = %{version}-%{release}
-Requires(post):		chkconfig
-Requires(preun):	chkconfig initscripts
+Requires(post): systemd-sysv
 
 %description -n cld
 Coarse locking daemon for cloud computing.  This software provides
@@ -48,8 +46,7 @@ and reliable small file storage.
 Summary: Single-node data storage service for %{name}
 Group: System Environment/Base
 Requires: %{name} = %{version}-%{release}
-Requires(post):		chkconfig
-Requires(preun):	chkconfig initscripts
+Requires(post): systemd-sysv
 
 %description -n chunkd
 Single-node data storage daemon for cloud computing.
@@ -83,14 +80,13 @@ rm -rf gendoc && mkdir gendoc && doxygen
 rm -rf %{buildroot}
 make install DESTDIR=%{buildroot}
 
-mkdir -p %{buildroot}%{_initddir}
-install -m 755 %{SOURCE2} %{buildroot}%{_initddir}/cld
+mkdir -p %{buildroot}%{_unitdir}
+install -m 755 %{SOURCE2} %{buildroot}%{_unitdir}/
 
 mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
 install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/cld
 
-mkdir -p %{buildroot}%{_initddir}
-install -m 755 %{SOURCE4} %{buildroot}%{_initddir}/chunkd
+install -m 755 %{SOURCE4} %{buildroot}%{_unitdir}/
 
 mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
 install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/sysconfig/chunkd
@@ -102,77 +98,63 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
 %check
 make -s check
 
-%clean
-rm -rf %{buildroot}
-
 %post -p /sbin/ldconfig
 
-%post -n cld
-# must be in chkconfig on
-/sbin/chkconfig --add cld
+%triggerun -n cld -- cld < 0.8-0.4.gf9c5b967
+# Save the current service runlevel info
+# User must manually run systemd-sysv-convert --apply cld
+# to migrate them to systemd targets
+/usr/bin/systemd-sysv-convert --save cld >/dev/null 2>&1 ||:
 
-%post -n chunkd
-# must be in chkconfig on
-/sbin/chkconfig --add chunkd
+# Run these because the SysV package being removed won't do them
+/sbin/chkconfig --del cld >/dev/null 2>&1 || :
+/bin/systemctl try-restart cld.service >/dev/null 2>&1 || :
 
-%preun -n cld
-if [ "$1" = 0 ] ; then
-	/sbin/service cld stop >/dev/null 2>&1 ||:
-	/sbin/chkconfig --del cld
-fi
+%triggerun -n chunkd -- chunkd < 0.8-0.4.gf9c5b967
+# Save the current service runlevel info
+# User must manually run systemd-sysv-convert --apply chunkd
+# to migrate them to systemd targets
+/usr/bin/systemd-sysv-convert --save chunkd >/dev/null 2>&1 ||:
 
-%preun -n chunkd
-if [ "$1" = 0 ] ; then
-	/sbin/service chunkd stop >/dev/null 2>&1 ||:
-	/sbin/chkconfig --del chunkd
-fi
+# Run these because the SysV package being removed won't do them
+/sbin/chkconfig --del chunkd >/dev/null 2>&1 || :
+/bin/systemctl try-restart chunkd.service >/dev/null 2>&1 || :
 
 %postun -p /sbin/ldconfig
 
-%postun -n cld
-if [ "$1" -ge "1" ]; then
-	/sbin/service cld condrestart >/dev/null 2>&1 ||:
-fi
-
-%postun -n chunkd
-if [ "$1" -ge "1" ]; then
-	/sbin/service chunkd condrestart >/dev/null 2>&1 ||:
-fi
-
 %files
-%defattr(-,root,root,-)
 %doc AUTHORS COPYING LICENSE README NEWS doc/contributions.txt
 %{_libdir}/*.so.*
 
 %files -n cld
-%defattr(-,root,root,-)
 %{_sbindir}/cld
 %{_bindir}/cldcli
 %{_mandir}/man8/cldcli.8*
 %{_mandir}/man8/cld.8*
 %{_libdir}/cld
-%attr(0755,root,root)	%{_initddir}/cld
+%{_unitdir}/cld.service
 %config(noreplace)	%{_sysconfdir}/sysconfig/cld
 
 %files -n chunkd
-%defattr(-,root,root,-)
 %doc doc/api.txt doc/cfgfile.txt doc/chcli.cfg doc/chcli.txt
 %doc doc/concept.txt doc/logging.txt
 %{_sbindir}/chunkd
 %{_bindir}/chcli
 %{_mandir}/man8/chcli.8*
 %{_mandir}/man8/chunkd.8*
-%attr(0755,root,root)	%{_initddir}/chunkd
+%{_unitdir}/chunkd.service
 %config(noreplace)	%{_sysconfdir}/sysconfig/chunkd
 
 %files devel
-%defattr(-,root,root,-)
 %doc gendoc/html gendoc/latex/refman.pdf
 %{_libdir}/lib*.so
 %{_libdir}/pkgconfig/*
 %{_includedir}/*
 
 %changelog
+* Thu Sep 08 2011 Tom Callaway <spot at fedoraproject.org> - 0.8-0.4.gf9c5b967
+- convert to systemd
+
 * Wed Feb 09 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.8-0.3.gf9c5b967
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
 


More information about the scm-commits mailing list