author | Tero Marttila <terom@paivola.fi> |
Mon, 09 Mar 2015 21:17:06 +0200 | |
changeset 736 | 75938aa0390b |
parent 730 | 2073e2e20895 |
permissions | -rw-r--r-- |
633 | 1 |
SERVICE_NOOP= |
2 |
SERVICE_TYPE= |
|
3 |
||
730
2073e2e20895
lib/pvl/service: use full /usr/sbin/service path, since debian does not have sbin on user $PATH
Tero Marttila <terom@paivola.fi>
parents:
711
diff
changeset
|
4 |
SERVICE_SBIN=/usr/sbin/service |
2073e2e20895
lib/pvl/service: use full /usr/sbin/service path, since debian does not have sbin on user $PATH
Tero Marttila <terom@paivola.fi>
parents:
711
diff
changeset
|
5 |
|
633 | 6 |
function service_opt { |
7 |
local opt=$1 |
|
8 |
local optarg="$2" |
|
9 |
||
10 |
case $opt in |
|
11 |
n) SERVICE=0 ;; |
|
12 |
*) return 1 |
|
13 |
esac |
|
14 |
} |
|
15 |
||
16 |
function service_init { |
|
17 |
if [ -e /bin/systemctl ]; then |
|
18 |
SERVICE_TYPE=systemd |
|
19 |
||
20 |
elif [ -e /sbin/initctl ]; then |
|
21 |
SERVICE_TYPE=upstart |
|
22 |
||
23 |
else |
|
24 |
SERVICE_TYPE=service |
|
25 |
fi |
|
26 |
} |
|
27 |
||
28 |
function service_status { |
|
29 |
local service=$1 |
|
710
09c6676a90a1
lib/pvl/service: cmd_sudo restart; workaround more upstart braindamage with service ... status
Tero Marttila <tero.marttila@aalto.fi>
parents:
649
diff
changeset
|
30 |
|
09c6676a90a1
lib/pvl/service: cmd_sudo restart; workaround more upstart braindamage with service ... status
Tero Marttila <tero.marttila@aalto.fi>
parents:
649
diff
changeset
|
31 |
# native upstart services don't exit with any status, but sysvinit compatibility ones do |
09c6676a90a1
lib/pvl/service: cmd_sudo restart; workaround more upstart braindamage with service ... status
Tero Marttila <tero.marttila@aalto.fi>
parents:
649
diff
changeset
|
32 |
if [ $SERVICE_TYPE = upstart -a -e /etc/init/$service.conf ]; then |
730
2073e2e20895
lib/pvl/service: use full /usr/sbin/service path, since debian does not have sbin on user $PATH
Tero Marttila <terom@paivola.fi>
parents:
711
diff
changeset
|
33 |
cmd_test $SERVICE_SBIN $service status | grep -q start |
633 | 34 |
else |
730
2073e2e20895
lib/pvl/service: use full /usr/sbin/service path, since debian does not have sbin on user $PATH
Tero Marttila <terom@paivola.fi>
parents:
711
diff
changeset
|
35 |
cmd_test $SERVICE_SBIN $service status > /dev/null |
633 | 36 |
fi |
37 |
} |
|
38 |
||
39 |
function service_restart { |
|
40 |
local service=$1 |
|
710
09c6676a90a1
lib/pvl/service: cmd_sudo restart; workaround more upstart braindamage with service ... status
Tero Marttila <tero.marttila@aalto.fi>
parents:
649
diff
changeset
|
41 |
|
730
2073e2e20895
lib/pvl/service: use full /usr/sbin/service path, since debian does not have sbin on user $PATH
Tero Marttila <terom@paivola.fi>
parents:
711
diff
changeset
|
42 |
cmd_sudo $SERVICE_SBIN $service restart |
633 | 43 |
} |
711
36b87b9e6af4
lib/pvl/service: service_reload
Tero Marttila <tero.marttila@aalto.fi>
parents:
710
diff
changeset
|
44 |
|
36b87b9e6af4
lib/pvl/service: service_reload
Tero Marttila <tero.marttila@aalto.fi>
parents:
710
diff
changeset
|
45 |
function service_reload { |
36b87b9e6af4
lib/pvl/service: service_reload
Tero Marttila <tero.marttila@aalto.fi>
parents:
710
diff
changeset
|
46 |
local service=$1 |
36b87b9e6af4
lib/pvl/service: service_reload
Tero Marttila <tero.marttila@aalto.fi>
parents:
710
diff
changeset
|
47 |
|
730
2073e2e20895
lib/pvl/service: use full /usr/sbin/service path, since debian does not have sbin on user $PATH
Tero Marttila <terom@paivola.fi>
parents:
711
diff
changeset
|
48 |
cmd_sudo $SERVICE_SBIN $service reload |
711
36b87b9e6af4
lib/pvl/service: service_reload
Tero Marttila <tero.marttila@aalto.fi>
parents:
710
diff
changeset
|
49 |
} |