Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Jérome Perrin
gitlab-ce
Commits
87f4e1f1
Commit
87f4e1f1
authored
Jul 08, 2013
by
Dmitriy Zaporozhets
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
init.d script for unicorn
parent
66d6c809
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
138 additions
and
0 deletions
+138
-0
lib/support/init.d/gitlab_unicorn
lib/support/init.d/gitlab_unicorn
+138
-0
No files found.
lib/support/init.d/gitlab_unicorn
0 → 100644
View file @
87f4e1f1
#! /bin/bash
# GITLAB
# Maintainer: @randx
# App Version: 6.0
### BEGIN INIT INFO
# Provides: gitlab
# Required-Start: $local_fs $remote_fs $network $syslog redis-server
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: GitLab git repository management
# Description: GitLab git repository management
### END INIT INFO
APP_ROOT
=
"/home/git/gitlab"
APP_USER
=
"git"
DAEMON_OPTS
=
"-C
$APP_ROOT
/config/unicorn.rb -E production"
PID_PATH
=
"
$APP_ROOT
/tmp/pids"
SOCKET_PATH
=
"
$APP_ROOT
/tmp/sockets"
WEB_SERVER_PID
=
"
$PID_PATH
/unicorn.pid"
SIDEKIQ_PID
=
"
$PID_PATH
/sidekiq.pid"
STOP_SIDEKIQ
=
"RAILS_ENV=production bundle exec rake sidekiq:stop"
START_SIDEKIQ
=
"RAILS_ENV=production bundle exec rake sidekiq:start"
NAME
=
"gitlab"
DESC
=
"GitLab service"
check_pid
(){
if
[
-f
$WEB_SERVER_PID
]
;
then
PID
=
`
cat
$WEB_SERVER_PID
`
SPID
=
`
cat
$SIDEKIQ_PID
`
STATUS
=
`
ps aux |
grep
$PID
|
grep
-v
grep
|
wc
-l
`
else
STATUS
=
0
PID
=
0
fi
}
execute
()
{
sudo
-u
$APP_USER
-H
bash
-l
-c
"
$1
"
}
start
()
{
cd
$APP_ROOT
check_pid
if
[
"
$PID
"
-ne
0
-a
"
$STATUS
"
-ne
0
]
;
then
# Program is running, exit with error code 1.
echo
"Error!
$DESC
$NAME
is currently running!"
exit
1
else
if
[
`
whoami
`
=
root
]
;
then
execute
"rm -f
$SOCKET_PATH
/gitlab.socket"
execute
"RAILS_ENV=production bundle exec unicorn_rails
$DAEMON_OPTS
> /dev/null 2>&1 &"
execute
"mkdir -p
$PID_PATH
&&
$START_SIDEKIQ
> /dev/null 2>&1 &"
echo
"
$DESC
started"
fi
fi
}
stop
()
{
cd
$APP_ROOT
check_pid
if
[
"
$PID
"
-ne
0
-a
"
$STATUS
"
-ne
0
]
;
then
## Program is running, stop it.
kill
-QUIT
`
cat
$WEB_SERVER_PID
`
execute
"mkdir -p
$PID_PATH
&&
$STOP_SIDEKIQ
> /dev/null 2>&1 &"
rm
"
$WEB_SERVER_PID
"
>>
/dev/null
echo
"
$DESC
stopped"
else
## Program is not running, exit with error.
echo
"Error!
$DESC
not started!"
exit
1
fi
}
restart
()
{
cd
$APP_ROOT
check_pid
if
[
"
$PID
"
-ne
0
-a
"
$STATUS
"
-ne
0
]
;
then
echo
"Restarting
$DESC
..."
kill
-USR2
`
cat
$WEB_SERVER_PID
`
execute
"mkdir -p
$PID_PATH
&&
$STOP_SIDEKIQ
> /dev/null 2>&1 &"
if
[
`
whoami
`
=
root
]
;
then
execute
"mkdir -p
$PID_PATH
&&
$START_SIDEKIQ
> /dev/null 2>&1 &"
fi
echo
"
$DESC
restarted."
else
echo
"Error,
$NAME
not running!"
exit
1
fi
}
status
()
{
cd
$APP_ROOT
check_pid
if
[
"
$PID
"
-ne
0
-a
"
$STATUS
"
-ne
0
]
;
then
echo
"
$DESC
/ Puma with PID
$PID
is running."
echo
"
$DESC
/ Sidekiq with PID
$SPID
is running."
else
echo
"
$DESC
is not running."
exit
1
fi
}
## Check to see if we are running as root first.
## Found at http://www.cyberciti.biz/tips/shell-root-user-check-script.html
if
[
"
$(
id
-u
)
"
!=
"0"
]
;
then
echo
"This script must be run as root"
exit
1
fi
case
"
$1
"
in
start
)
start
;;
stop
)
stop
;;
restart
)
restart
;;
reload|force-reload
)
echo
-n
"Reloading
$NAME
configuration: "
kill
-HUP
`
cat
$PID
`
echo
"done."
;;
status
)
status
;;
*
)
echo
"Usage: sudo service gitlab {start|stop|restart|reload}"
>
&2
exit
1
;;
esac
exit
0
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment