#!/usr/bin/env bash

# pre-build checks
_check_rate() (
  _package=$(grep -Pom1 '^pkgname = \K\S+$' .SRCINFO || true)

  _rate=$((3600 * ${1:-18})) # hours
  _date_build=$(
    LC_ALL=C pacman -Si "chaotic-aur/$_package" 2> /dev/null \
      | grep -Pom1 '^Build Date\s+:\s+\K\S.*\S$'
  ) || true

  _epoch_build=$(\date '+%s' -d "${_date_build:-1970-01-01}")
  _epoch_now=$(\date '+%s')
  _epoch_diff=$((_epoch_now - _epoch_build))

  if [[ "$_epoch_diff" -lt "$_rate" ]]; then
    echo "Heavy package.  Skipping build."
    echo "> Last built $((_epoch_diff / 3600)) hours ago."
    return $CI_CODE_SKIP
  fi
)
_check_rate 24 || return $?
