tweaks required to get this to build... ruby now needs ruby to install ruby
[discourse_docker.git] / image / base / boot
1 #!/bin/bash
2
3 # we use this to boot up cause runit will not handle TERM and will not exit when done
4
5 shutdown() {
6 echo Shutting Down
7 /etc/runit/3
8 ls /etc/service | SHELL=/bin/sh parallel sv force-stop {}
9 kill -HUP $RUNSVDIR
10 wait $RUNSVDIR
11
12 # give stuff a bit of time to finish
13 sleep 0.1
14
15 ORPHANS=`ps -eo pid | grep -v PID | tr -d ' ' | grep -v '^1$'`
16 SHELL=/bin/bash parallel 'timeout 5 /bin/bash -c "kill {} && wait {}" || kill -9 {}' ::: $ORPHANS 2> /dev/null
17 exit
18 }
19
20 /etc/runit/1
21 /etc/runit/2&
22 RUNSVDIR=$!
23 echo "Started runsvdir, PID is $RUNSVDIR"
24 trap shutdown SIGTERM SIGHUP
25 wait $RUNSVDIR
26
27 shutdown