[packages/gitlab-ce] add gitlab-sidekiq, gitlab-unicorn initscripts
glen
glen at pld-linux.org
Sun May 15 09:46:35 CEST 2016
commit 7db376f0105848254636b1fe4b4db42cccb6cd91
Author: Elan Ruusamäe <glen at delfi.ee>
Date: Fri May 13 21:31:55 2016 +0300
add gitlab-sidekiq, gitlab-unicorn initscripts
from https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/init/sysvinit/centos@7ff25bb
gitlab-ce.spec | 30 +++++++------
gitlab-sidekiq.init | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++
gitlab-unicorn.init | 121 +++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 261 insertions(+), 12 deletions(-)
---
diff --git a/gitlab-ce.spec b/gitlab-ce.spec
index 4ff17d3..cdecc8a 100644
--- a/gitlab-ce.spec
+++ b/gitlab-ce.spec
@@ -17,7 +17,7 @@
Summary: A Web interface to create projects and repositories, manage access and do code reviews
Name: gitlab-ce
Version: 8.7.5
-Release: 0.12
+Release: 0.13
License: MIT
Group: Applications/WWW
# md5 deliberately omitted until this package is useful
@@ -26,10 +26,12 @@ Patch0: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/3774.patch
URL: https://www.gitlab.com/gitlab-ce/
Source1: gitlab.target
Source2: gitlab-sidekiq.service
-Source3: gitlab-unicorn.service
-Source4: gitlab.logrotate
-Source5: gitlab.tmpfiles.d
-Source6: gitlab-apache-conf
+Source3: gitlab-sidekiq.init
+Source4: gitlab-unicorn.service
+Source5: gitlab-unicorn.init
+Source6: gitlab.logrotate
+Source7: gitlab.tmpfiles.d
+Source8: gitlab-apache-conf
BuildRequires: cmake
BuildRequires: gmp-devel
BuildRequires: libgit2-devel
@@ -150,15 +152,17 @@ for f in gitlab.yml unicorn.rb database.yml; do
done
install -d $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir}} \
- $RPM_BUILD_ROOT/etc/{logrotate.d,httpd/webapps.d}
+ $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,httpd/webapps.d}
-# Install systemd service files
-cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdunitdir}/gitlab.target
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}/gitlab-sidekiq.service
-cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/gitlab-unicorn.service
-cp -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/gitlab.conf
-cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/gitlab.logrotate
-cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/httpd/webapps.d/gitlab.conf
+install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/gitlab-sidekiq
+cp -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/gitlab-unicorn.service
+install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/gitlab-unicorn
+
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdunitdir}/gitlab.target
+cp -p %{SOURCE7} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/gitlab.conf
+cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/gitlab.logrotate
+cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/httpd/webapps.d/gitlab.conf
%clean
rm -rf "$RPM_BUILD_ROOT"
@@ -202,6 +206,8 @@ fi
%config(noreplace) %{_sysconfdir}/gitlab/unicorn.rb
%config(noreplace) %{_sysconfdir}/httpd/webapps.d/gitlab.conf
/etc/logrotate.d/gitlab.logrotate
+%attr(754,root,root) /etc/rc.d/init.d/gitlab-sidekiq
+%attr(754,root,root) /etc/rc.d/init.d/gitlab-unicorn
%{systemdunitdir}/gitlab-sidekiq.service
%{systemdunitdir}/gitlab-unicorn.service
%{systemdunitdir}/gitlab.target
diff --git a/gitlab-sidekiq.init b/gitlab-sidekiq.init
new file mode 100755
index 0000000..9b06a4c
--- /dev/null
+++ b/gitlab-sidekiq.init
@@ -0,0 +1,122 @@
+#!/bin/sh
+#
+# gitlab-sidekiq GitLab Sidekiq Worker
+#
+# chkconfig: 345 82 18
+# description: Runs GitLab Sidekiq Worker
+# processname: sidekiq
+
+# Related (kudos @4sak3n0ne):
+# https://github.com/gitlabhq/gitlabhq/issues/1049#issuecomment-8386882
+# https://gist.github.com/3062860
+
+# Source function library
+. /etc/rc.d/init.d/functions
+
+# Get network config
+. /etc/sysconfig/network
+
+# Check that networking is up.
+if is_yes "${NETWORKING}"; then
+ if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
+ msg_network_down "GitLab Sidekiq"
+ exit 1
+ fi
+else
+ exit 0
+fi
+
+### Environment variables
+RAILS_ENV="production"
+
+# The username and path to the gitlab source
+USER=git
+APP_PATH=/var/lib/gitlab
+
+# The PID and LOCK files used by unicorn and sidekiq
+pidfile=$APP_PATH/tmp/pids/sidekiq.pid
+lockfile=/var/lock/subsys/gitlab-sidekiq
+
+# Get service config - may override defaults
+[ -f /etc/sysconfig/gitlab-sidekiq ] && . /etc/sysconfig/gitlab-sidekiq
+
+start() {
+ # Check if the service is already running?
+ if [ -f $lockfile ]; then
+ msg_already_running "GitLab Sidekiq"
+ return
+ fi
+
+ msg_starting "GitLab Sidekiq"
+ daemon --pidfile $pidfile --user $USER --chdir "$APP_PATH" \
+ bundle exec \
+ "sidekiq -q post_receive,mailer,system_hook,project_web_hook,gitlab_shell,common,default -e $RAILS_ENV -P pids/sidekiq.pid -d -L log/sidekiq.log >> log/sidekiq.log 2>&1"
+ RETVAL=$?
+ [ $RETVAL -eq 0 ] && touch $lockfile
+}
+
+stop() {
+ if [ ! -f $lockfile ]; then
+ msg_not_running "GitLab Sidekiq"
+ return
+ fi
+
+ # Stop daemons.
+ msg_stopping "GitLab Sidekiq"
+ killproc --pidfile $pidfile sidekiq
+ rm -f $lockfile
+}
+
+reload() {
+ if [ ! -f $lockfile ]; then
+ msg_not_running "GitLab Sidekiq"
+ RETVAL=7
+ return
+ fi
+
+ msg_reloading "GitLab Sidekiq"
+ killproc <procname> -HUP
+ killproc --pidfile $pidfile <procname> -HUP
+ RETVAL=$?
+}
+
+condrestart() {
+ if [ ! -f $lockfile ]; then
+ msg_not_running "GitLab Sidekiq"
+ RETVAL=$1
+ return
+ fi
+
+ stop
+ start
+}
+
+RETVAL=0
+# See how we were called.
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ restart)
+ stop
+ start
+ ;;
+ try-restart)
+ condrestart 0
+ ;;
+ force-reload)
+ condrestart 7
+ ;;
+ status)
+ status --pidfile $pidfile gitlab-sidekiq
+ RETVAL=$?
+ ;;
+ *)
+ msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}"
+ exit 3
+esac
+
+exit $RETVAL
diff --git a/gitlab-unicorn.init b/gitlab-unicorn.init
new file mode 100755
index 0000000..192f7ee
--- /dev/null
+++ b/gitlab-unicorn.init
@@ -0,0 +1,121 @@
+#!/bin/sh
+#
+# gitlab-unicorn gitlab-unicorn short service description
+#
+# chkconfig: 345 82 18
+# description: Runs unicorn
+# processname: sidekiq
+#
+# Related (kudos @4sak3n0ne):
+# https://github.com/gitlabhq/gitlabhq/issues/1049#issuecomment-8386882
+# https://gist.github.com/3062860
+
+# Source function library
+. /etc/rc.d/init.d/functions
+
+# Get network config
+. /etc/sysconfig/network
+
+# Check that networking is up.
+if is_yes "${NETWORKING}"; then
+ if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
+ msg_network_down "GitLab Unicorn"
+ exit 1
+ fi
+else
+ exit 0
+fi
+
+### Environment variables
+RAILS_ENV="production"
+
+# The username and path to the gitlab source
+USER=git
+APP_PATH=/var/lib/gitlab
+
+# The PID and LOCK files used by unicorn and sidekiq
+pidfile=$APP_PATH/tmp/pids/unicorn.pid
+lockfile=/var/lock/subsys/gitlab-unicorn
+
+# Get service config - may override defaults
+[ -f /etc/sysconfig/gitlab-unicorn ] && . /etc/sysconfig/gitlab-unicorn
+
+start() {
+ # Check if the service is already running?
+ if [ -f $lockfile ]; then
+ msg_already_running "GitLab Unicorn"
+ return
+ fi
+
+ msg_starting "GitLab Unicorn"
+ daemon --pidfile $pidfile --user $USER --chdir "$APP_PATH" \
+ "env RAILS_ENV=$RAILS_ENV bin/web start"
+ RETVAL=$?
+ [ $RETVAL -eq 0 ] && touch $lockfile
+}
+
+stop() {
+ if [ ! -f $lockfile ]; then
+ msg_not_running "GitLab Unicorn"
+ return
+ fi
+
+ # Stop daemons.
+ msg_stopping "GitLab Unicorn"
+ killproc --pidfile $pidfile unicorn
+ rm -f $lockfile
+}
+
+reload() {
+ if [ ! -f $lockfile ]; then
+ msg_not_running "GitLab Unicorn"
+ RETVAL=7
+ return
+ fi
+
+ msg_reloading "GitLab Unicorn"
+ killproc <procname> -HUP
+ killproc --pidfile $pidfile <procname> -HUP
+ RETVAL=$?
+}
+
+condrestart() {
+ if [ ! -f $lockfile ]; then
+ msg_not_running "GitLab Unicorn"
+ RETVAL=$1
+ return
+ fi
+
+ stop
+ start
+}
+
+RETVAL=0
+# See how we were called.
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ restart)
+ stop
+ start
+ ;;
+ try-restart)
+ condrestart 0
+ ;;
+ force-reload)
+ condrestart 7
+ ;;
+ status)
+ status --pidfile $pidfile unicorn
+ RETVAL=$?
+ ;;
+ *)
+ msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}"
+ exit 3
+esac
+
+exit $RETVAL
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/gitlab-ce.git/commitdiff/9003de5f4175fc6cc092100255916a8747a742ca
More information about the pld-cvs-commit
mailing list