#!/usr/bin/env bash

set -euo pipefail

ReleaseDirectory="${1:?Release directory required}"

find "$ReleaseDirectory" \
  -mindepth 1 \
  -maxdepth 1 \
  -type d \
  -empty \
  -delete

Today="$(date +%Y.%m.%d)"
CurrentTime="${CurrentTime:-$(date +%H%M%S)}"

mapfile -t Folders < <(
  find "$ReleaseDirectory" \
    -mindepth 1 \
    -maxdepth 1 \
    -type d \
    -printf '%f\n' |
  grep -E '^[0-9]{4}.[0-9]{2}.[0-9]{2}$' |
  sort
)

Soonest="${Folders[0]}"

if [[ "$Soonest" == "$Today" ]]; then
  echo "The soonest scheduled release is already today ($Today)." >&2
  exit 1
fi

if (( 10#$CurrentTime > 233000 )); then
  echo "Force releases are not permitted after 11:30 PM." >&2
  exit 1
fi