Repository :
http://git.fedorahosted.org/cgit/copr.git
On branch : master
---------------------------------------------------------------
commit 7b3ab905954f3f041fdbffa5eb459abb4d51ba75
Author: Miroslav Suchý <msuchy(a)redhat.com>
Date: Fri Nov 6 14:24:24 2015 +0100
create copr-backend-service script to handle all copr services
---------------------------------------------------------------
backend/copr-backend-service | 101 ++++++++++++++++++++++++++++++++++++++++++
backend/copr-backend.spec | 2 +
2 files changed, 103 insertions(+), 0 deletions(-)
diff --git a/backend/copr-backend-service b/backend/copr-backend-service
new file mode 100755
index 0000000..d0f80dd
--- /dev/null
+++ b/backend/copr-backend-service
@@ -0,0 +1,101 @@
+#!/bin/sh
+
+if [ $EUID -ne 0 ]; then
+ echo -e "This script must be run as root!\n"
+ exit 1
+fi
+
+
+
+copr_target_services() {
+ echo copr-backend copr-backend-vmm copr-backend-log copr-backend-jobgrab
+}
+
+turn_on() {
+ echo "Enabling Copr backend services..."
+ copr_target_services | xargs systemctl enable --quiet
+ echo "Done"
+ return 0
+}
+
+turn_off() {
+ echo "Disabling Copr backend services..."
+ copr_target_services | xargs systemctl disable --quiet
+ echo "Done"
+ return 0
+}
+
+list() {
+ echo "Listing Copr backend services..."
+ systemctl list-unit-files --type=service | grep -F
"$(copr_target_services)"
+ echo "Done"
+ return 0
+}
+
+start() {
+ echo "Starting Copr backend services..."
+ systemctl start $(copr_target_services)
+ echo "Done."
+ return 0
+}
+
+stop() {
+ echo "Shutting down Copr backend services..."
+ copr_target_services | xargs systemctl stop
+ echo "Done."
+ return 0
+}
+
+status() {
+ copr_target_services | xargs systemctl status -n0
+ return $?
+}
+
+if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
+
+while true ; do
+ case "$1" in
+ --)
+ shift
+ break
+ ;;
+ start|stop|enable|disable|list|status|restart|reload)
+ break
+ ;;
+ *)
+ echo "Internal error [$1]!" >&2
+ exit 1
+ ;;
+ esac
+ shift
+done
+
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ enable)
+ turn_on
+ ;;
+ disable)
+ turn_off
+ ;;
+ list)
+ list
+ ;;
+ status)
+ status
+ ;;
+ restart|reload)
+ stop
+ start
+ ;;
+ *)
+ echo "Usage: $(basename $0)
{start|stop|status|reload|restart|enable|disable}"
+ exit 1
+ ;;
+esac
+exit $?
diff --git a/backend/copr-backend.spec b/backend/copr-backend.spec
index 8abb276..af4ee0d 100644
--- a/backend/copr-backend.spec
+++ b/backend/copr-backend.spec
@@ -142,6 +142,7 @@ install -d %{buildroot}%{_sysconfdir}/cron.daily
install -d %{buildroot}%{_sysconfdir}/sudoers.d
install -d %{buildroot}%{_bindir}/
+cp -a copr-backend-service %{buildroot}/%{_sbindir}/
cp -a backend/* %{buildroot}%{_datadir}/copr/backend
cp -a run/* %{buildroot}%{_bindir}/
cp -a conf/copr-be.conf.example %{buildroot}%{_sysconfdir}/copr/copr-be.conf
@@ -228,6 +229,7 @@ useradd -r -g copr -G lighttpd -s /bin/bash -c "COPR user"
copr
%{_unitdir}/*.service
%{_tmpfilesdir}/copr-backend.conf
%{_bindir}/*
+%{_sbindir}/*
%config(noreplace) %{_sysconfdir}/cron.daily/copr-backend
%{_datadir}/logstash/patterns/lighttpd.pattern