#!/bin/sh
set -e

. /usr/share/debconf/confmodule

case "$1" in
  install)
    db_get "dokku/web_config"
    if [ "$RET" = "true" ]; then
      INIT_CONF="/etc/init/dokku-installer.conf"
      NGINX_CONF="/etc/nginx/conf.d/dokku-installer.conf"

      rm -f $INIT_CONF
      touch $INIT_CONF
      echo 'start on runlevel [2345]' >> $INIT_CONF
      echo 'exec /usr/local/share/dokku/contrib/dokku-installer.rb selfdestruct' >> $INIT_CONF

      rm -f $NGINX_CONF
      touch $NGINX_CONF

      {
        echo 'upstream dokku-installer { server 127.0.0.1:2000; }'
        echo 'server {'
        echo '  listen      80;'
        echo '  location    / {'
        echo '    proxy_pass  http://dokku-installer;'
        echo '  }'
        echo '}'
      } >> $NGINX_CONF

      rm -f /etc/nginx/sites-enabled/*
      service nginx reload
      exit 0
    fi

    if [ -z "${DEBCONF_RECONFIGURE}" ]; then
      db_get "dokku/key_file"
      if [ ! -f "$RET" ]; then
          echo "Error: keyfile '$RET' not found."
          echo "       you can enter a new keyfile path when you restart the installation."
          db_reset "dokku/key_file"
          exit 1
      fi
    fi
    ;;

  upgrade)
    ;;

  abort-upgrade)
    ;;

  *)
    echo "preinst called with unknown argument \`$1'" >&2
    exit 1
    ;;
esac

exit 0
