[coda] Resolves: bz 771490

Neil Horman nhorman at fedoraproject.org
Fri Jan 6 20:45:43 UTC 2012


commit 8fcfaf13780566b795cb1d496459e73be9531e8e
Author: Neil Horman <nhorman at tuxdriver.com>
Date:   Fri Jan 6 15:45:27 2012 -0500

    Resolves: bz 771490

 auth2-master.service       |   10 ++++
 auth2-slave.service        |   10 ++++
 auth2.init                 |   95 --------------------------------
 coda-client.init           |   89 ------------------------------
 coda-client.service        |   12 ++++
 coda-update-master.service |   10 ++++
 coda-update-slave.service  |   10 ++++
 coda.spec                  |   55 ++++++++-----------
 codasrv.init               |   96 --------------------------------
 codasrv.service            |   11 ++++
 update.init                |  130 --------------------------------------------
 11 files changed, 87 insertions(+), 441 deletions(-)
---
diff --git a/auth2-master.service b/auth2-master.service
new file mode 100644
index 0000000..bd5a930
--- /dev/null
+++ b/auth2-master.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Coda Master Authentication Server (SCM)
+
+[Service]
+Type=forking
+PIDFile=/vice/auth2/master.pid
+ExecStart=/usr/sbin/auth2
+
+[Install]
+WantedBy=multi-user.target
diff --git a/auth2-slave.service b/auth2-slave.service
new file mode 100644
index 0000000..17f27ab
--- /dev/null
+++ b/auth2-slave.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Coda Slave Authentication Server
+
+[Service]
+Type=forking
+PIDFile=/vice/auth2/slave.pid
+ExecStart=/usr/sbin/auth2 -chk
+
+[Install]
+WantedBy=multi-user.target
diff --git a/coda-client.service b/coda-client.service
new file mode 100644
index 0000000..7a4ae5a
--- /dev/null
+++ b/coda-client.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Coda Cache Manager
+
+[Service]
+Type=forking
+PIDFile=/run/coda-client.pid
+ExecStartPre=/usr/sbin/vutil --swaplogs
+ExecStart=/usr/sbin/venus
+ExecStopPost=/bin/umount /coda
+
+[Install]
+WantedBy=multi-user.target
diff --git a/coda-update-master.service b/coda-update-master.service
new file mode 100644
index 0000000..252947e
--- /dev/null
+++ b/coda-update-master.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Coda Update Master Server
+
+[Service]
+Type=forking
+PIDFile=/vice/misc/updatesrv.pid
+ExecStart=/usr/sbin/updatesrv
+
+[Install]
+WantedBy=multi-user.target
diff --git a/coda-update-slave.service b/coda-update-slave.service
new file mode 100644
index 0000000..cb1f2c8
--- /dev/null
+++ b/coda-update-slave.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Coda Update Slave Server
+
+[Service]
+Type=forking
+PIDFile=/vice/misc/updateclnt.pid
+ExecStart=/usr/sbin/updateclnt
+
+[Install]
+WantedBy=multi-user.target
diff --git a/coda.spec b/coda.spec
index 17cbcf3..7ec01fc 100644
--- a/coda.spec
+++ b/coda.spec
@@ -1,15 +1,17 @@
 Name:           coda
 Version:        6.9.5
-Release:       	6%{?dist}
+Release:       	7%{?dist}
 Summary:        Coda distributed file system
 Group:          System Environment/Daemons
 License:        GPLv2
 URL:            http://www.coda.cs.cmu.edu/
 Source0:        ftp://ftp.coda.cs.cmu.edu/pub/coda/src/%{name}-%{version}.tar.gz
-Source1:        coda-client.init
-Source2:        codasrv.init
-Source3:        auth2.init
-Source4:        update.init
+Source1:        coda-client.service
+Source2:        codasrv.service
+Source3:        auth2-master.service
+Source4:        coda-update-master.service
+Source5:	auth2-slave.service
+Source6:	coda-update-slave.service
 Patch0:         coda-6.9.4-rc2-no-default-krb.patch
 Patch1:		coda-6.9.5-venus-coda-client-convert.patch
 Patch2:		coda-6.9.5-vcodacon-configure.patch
@@ -19,7 +21,7 @@ BuildRequires:  rpc2-devel
 BuildRequires:  rvm-devel
 BuildRequires:  rvm-tools compat-readline5-devel
 BuildRequires:  fltk-devel fltk-fluid flex bison python perl krb5-devel
-BuildRequires:  e2fsprogs-devel
+BuildRequires:  e2fsprogs-devel systemd-units
 Requires:       krb5-libs compat-readline5
 
 
@@ -122,11 +124,13 @@ rm -rf $RPM_BUILD_ROOT
 make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
 
 # init scripts
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d
-install -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/coda-client
-install -p -m 755 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/codasrv
-install -p -m 755 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/auth2
-install -p -m 755 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/update
+mkdir -p $RPM_BUILD_ROOT%{_unitdir}/
+install -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_unitdir}/
+install -p -m 755 %{SOURCE2} $RPM_BUILD_ROOT%{_unitdir}/
+install -p -m 755 %{SOURCE3} $RPM_BUILD_ROOT%{_unitdir}/
+install -p -m 755 %{SOURCE4} $RPM_BUILD_ROOT%{_unitdir}/
+install -p -m 755 %{SOURCE5} $RPM_BUILD_ROOT%{_unitdir}/
+install -p -m 755 %{SOURCE6} $RPM_BUILD_ROOT%{_unitdir}/
 
 # rename venus-setup to coda-client-setup
 mv $RPM_BUILD_ROOT%{_sbindir}/venus-setup $RPM_BUILD_ROOT%{_sbindir}/coda-client-setup
@@ -159,24 +163,8 @@ if [ ! -e /coda ]; then
     mkdir /coda
     touch /coda/NOT_REALLY_CODA
 fi
-/sbin/chkconfig --add coda-client
 
-%preun client
-if [ $1 = 0 ]; then
-   /sbin/chkconfig --del coda-client
-fi
-
-%post server
-/sbin/chkconfig --add update
-/sbin/chkconfig --add auth2
-/sbin/chkconfig --add codasrv
 
-%preun server
-if [ $1 = 0 ]; then
-   /sbin/chkconfig --del update
-   /sbin/chkconfig --del auth2
-   /sbin/chkconfig --del codasrv
-fi
 
 %files client
 %defattr(-,root,root,-)
@@ -185,7 +173,7 @@ fi
 %ghost %config(noreplace) %{_sysconfdir}/coda/venus.conf
 %config(noreplace) %{_sysconfdir}/coda/venus.conf.ex
 %config(noreplace) %{_sysconfdir}/coda/realms
-%{_sysconfdir}/rc.d/init.d/coda-client
+%{_unitdir}/coda-client.service
 %{_sbindir}/asrlauncher
 %{_sbindir}/codaconfedit
 %{_sbindir}/venus
@@ -239,9 +227,11 @@ fi
 %dir %{_sysconfdir}/coda
 %ghost %config(noreplace) %{_sysconfdir}/coda/server.conf
 %config(noreplace) %{_sysconfdir}/coda/server.conf.ex
-%{_sysconfdir}/rc.d/init.d/codasrv
-%{_sysconfdir}/rc.d/init.d/auth2
-%{_sysconfdir}/rc.d/init.d/update
+%{_unitdir}/codasrv.service
+%{_unitdir}/auth2-master.service
+%{_unitdir}/auth2-slave.service
+%{_unitdir}/coda-update-master.service
+%{_unitdir}/coda-update-slave.service
 %{_sbindir}/auth2
 %{_sbindir}/bldvldb.sh
 %{_sbindir}/coda-server-logrotate
@@ -326,6 +316,9 @@ fi
 
 
 %changelog
+* Fri Jan 06 2012 Neil Horman <nhorman at redhat.com> - 6.9.5-6
+- Converted sysv init script to systemd scripts (bz 771490)
+
 * Sun Jun 12 2011 Ralf Corsépius <corsepiu at fedoraproject.org> - 6.9.5-6
 - Extend coda-6.9.5-vcodacon-configure.patch to reflect fltk headers having
   changed (Fix FTBS).
diff --git a/codasrv.service b/codasrv.service
new file mode 100644
index 0000000..76ea863
--- /dev/null
+++ b/codasrv.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Coda File Server
+ConditionPathExists=|/vice/srv/CRASH
+
+[Service]
+Type=forking
+PIDFile=/vice/srv/pid
+ExecStart=/usr/sbin/startserver
+
+[Install]
+WantedBy=multi-user.target


More information about the scm-commits mailing list