#!/bin/sh
#
### BEGIN INIT INFO
# Provides:          gfiber-loguploader
# Required-Start:    $syslog $remote_fs
# Required-Stop:     $syslog $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: GFiber loguploader client
### END INIT INFO

[ -x /usr/bin/upload-logs ] || exit 0
. /lib/lsb/init-functions

atomic_stdin() {
  rm -f "$1" "$1.new"
  cat >"$1.new"
  mv "$1.new" "$1"
}

case "$1" in
  start)
    log_daemon_msg "Starting GFiber log uploader" "upload-logs"
    if ! [ -e /etc/ssl/certs/device.pem -a \
           -e /etc/ssl/private/device.key ]; then
      echo >&2
      echo "Cert missing: /etc/ssl/certs/device.pem and /etc/ssl/private/device.key." >&2
      echo >&2
      log_end_msg 1
      exit 1
    fi
    rm -f /tmp/ssl
    ln -sf /etc/ssl/. /tmp/ssl
    uname -r | sed 's/ /-/g' | atomic_stdin /etc/version
    uname | atomic_stdin /tmp/platform
    # Our hostnames are something like hostname.cluster.whatever.com.
    # We want the hostname.cluster part to be part of the certname, but
    # sadly the name field in our certs isn't super happy about that, so
    # let's use _ instead of dot, where relevant.
    hostname -f |
      sed -e 's/\.googlefiber\.net$//' \
          -e 's/\.nyc\.corp\.google\.com$//' \
          -e 's/\./_/g' |
      atomic_stdin /tmp/serial
    cd /
    upload-logs-loop </dev/null &
    log_end_msg 0
    exit 0
    ;;
  stop)
    log_daemon_msg "Stopping GFiber log uploader" "upload-logs"
    pkill upload-logs-loop
    pkill upload-logs
    pkill -f prefix-logs
    log_end_msg 0
    exit 0
    ;;
  reload|force-reload|restart)
    $0 stop; $0 start
    ;;
  status)
    pgrep upload-logs >/dev/null
    exit $?
    ;;
  *)
    echo "Usage: $0 {start|stop|restart|reload|force-reload|status}"
    exit 1
esac
