]> git.pld-linux.org Git - packages/lxd.git/blame - lxd.init
- lxc stderr to /dev/null
[packages/lxd.git] / lxd.init
CommitLineData
da7971c6 1#!/bin/sh
2#
3# Container hypervisor and a new user experience for LXC
4#
5# chkconfig: 345 20 80
6#
7# processname: lxd
8# pidfile: /var/run/lxd.pid
9#
10
11# Source function library
12. /etc/rc.d/init.d/functions
13
14# Get network config
15. /etc/sysconfig/network
16
17# Check that networking is up.
18if is_yes "${NETWORKING}"; then
19 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
20 msg_network_down "lxd"
21 exit 1
22 fi
23else
24 exit 0
25fi
26
27# Get service config - may override defaults
28[ -f /etc/sysconfig/lxd ] && . /etc/sysconfig/lxd
29OPTIONS="$OPTIONS --group lxd --logfile /var/log/lxd/lxd.log"
30
31pidfile="/var/run/lxd.pid"
32
33start() {
34 if status --pidfile $pidfile lxd lxd >/dev/null; then
35 msg_already_running "lxd"
36 return
37 fi
38
39 msg_starting "lxd"
40 daemon --fork --waitforname lxd /usr/sbin/lxd daemon $OPTIONS
41
42 # lxd does not write pidfile, so create one
43 show "Checking lxd daemon status"
44 busy
45 pid=""
46 ntry=0
47 while [ -z "$pid" -a $ntry -lt 5 ]; do
48 [ -z "$pid" ] && sleep 1
4d00c171 49 pid=$(lxc info 2>/dev/null | awk '/serverpid:/{print $2}')
08700db1 50 [ -n "$pid" ] && echo $pid > $pidfile
c309177a 51 ntry=$(($ntry+1))
da7971c6 52 done
53
54 if [ -n "$pid" ]; then
a89a534c
ER
55 touch /var/lock/subsys/lxd
56 ok
57 RETVAL=0
da7971c6 58 else
a89a534c
ER
59 fail
60 RETVAL=1
da7971c6 61 fi
62}
63
64stop() {
65 if [ ! -f /var/lock/subsys/lxd ]; then
66 msg_not_running "lxd"
67 return
68 fi
69
70 # Stop daemons.
71 msg_stopping "lxd"
72 /usr/sbin/lxd shutdown
a89a534c 73 busy
da7971c6 74 sleep 1
75 if status --pidfile $pidfile lxd lxd >/dev/null; then
76 killproc --pidfile $pidfile lxd
77 else
78 ok
a89a534c 79 fi
da7971c6 80 rm -f /var/lock/subsys/lxd
81}
82
83condrestart() {
84 if [ ! -f /var/lock/subsys/lxd ]; then
85 msg_not_running "lxd"
86 RETVAL=$1
87 return
88 fi
89
90 stop
91 start
92}
93
94RETVAL=0
95# See how we were called.
96case "$1" in
97 start)
98 start
99 ;;
100 stop)
101 stop
102 ;;
103 restart)
104 stop
105 start
106 ;;
107 try-restart)
108 condrestart 0
109 ;;
110 force-reload)
111 condrestart 7
112 ;;
113 status)
114 status --pidfile $pidfile lxd lxd
115 RETVAL=$?
116 ;;
117 *)
118 msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}"
119 exit 3
120esac
121
122exit $RETVAL
This page took 0.128804 seconds and 4 git commands to generate.