2017-01-23 06:33:45 +00:00
|
|
|
#!/bin/sh
|
2017-01-20 02:17:56 +00:00
|
|
|
|
2017-01-23 06:33:45 +00:00
|
|
|
# When we get killed, kill all our children
|
2017-01-20 02:17:56 +00:00
|
|
|
trap "exit" INT TERM
|
|
|
|
trap "kill 0" EXIT
|
2017-01-23 06:33:45 +00:00
|
|
|
|
|
|
|
# Source in util.sh so we can have our nice tools
|
|
|
|
. $(cd $(dirname $0); pwd)/util.sh
|
|
|
|
|
|
|
|
# Immediately run auto_enable_configs so that nginx is in a runnable state
|
|
|
|
auto_enable_configs
|
|
|
|
|
|
|
|
# Start up nginx, save PID so we can reload config inside of run_certbot.sh
|
|
|
|
nginx -g "daemon off;" &
|
|
|
|
export NGINX_PID=$!
|
|
|
|
|
|
|
|
# Next, run certbot to request all the ssl certs we can find
|
|
|
|
/scripts/run_certbot.sh
|
|
|
|
|
2017-06-20 18:27:05 +00:00
|
|
|
# Lastly, run startup scripts
|
|
|
|
for f in /scripts/startup/*.sh; do
|
2017-07-24 04:50:04 +00:00
|
|
|
if [[ -x "$f" ]]; then
|
|
|
|
echo "Running startup script $f"
|
|
|
|
$f
|
|
|
|
fi
|
2017-06-20 18:27:05 +00:00
|
|
|
done
|
2017-07-24 04:50:04 +00:00
|
|
|
echo "Done with startup"
|
2017-06-20 18:27:05 +00:00
|
|
|
|
2018-05-02 06:03:42 +00:00
|
|
|
# Instead of trying to run `cron` or something like that, just leep and run `certbot`.
|
|
|
|
while [ true ]; do
|
|
|
|
# Sleep for 1 week
|
|
|
|
sleep 604800 &
|
|
|
|
SLEEP_PID=$!
|
|
|
|
|
|
|
|
# re-run certbot
|
|
|
|
/scripts/run_certbot.sh
|
|
|
|
|
|
|
|
# Wait on sleep so that when we get ctrl-c'ed it kills everything due to our trap
|
|
|
|
wait "$SLEEP_PID"
|
|
|
|
done
|