#! /usr/bin/env bash

set -eu

dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"

cd "$dir"

case $ORDERLY_ACTION in
  RUN)
    exec ./web-server/target/debug/web-server > ./logs/web-logs.pipe 2>&1
  ;;
  WAIT_STARTED)
    n=0
    while test "$n" -lt "100"
    do
      sleep 1
      if curl -s http://127.0.0.1:8000 > /dev/null
      then
        exit 0
      fi
      n=$((n + 1))
    done
    exit 1
  ;;
  CHECK)
    echo "checking index is up."
    curl -s http://127.0.0.1:8000 > /dev/null
  ;;
  SHUTDOWN)
    kill -SIGTERM "$ORDERLY_RUN_PID"
  ;;
  CLEANUP)
    true
  ;;
  *)
    echo "unknown action: $ORDERLY_ACTION"
    exit 1
  ;;
esac
