#!/usr/bin/env bash
set -eo pipefail
[[ $DOKKU_TRACE ]] && set -x
source "$PLUGIN_AVAILABLE_PATH/ps/functions"

trigger-ps-procfile-extract() {
  declare desc="ps procfile-extract plugin trigger"
  declare trigger="procfile-extract"
  declare desc="extract procfile from a specified docker image"
  declare APP="$1" IMAGE="$2" FORCE_EXTRACT="$3" PROCFILE_PATH="$4"

  if [[ -z "$PROCFILE_PATH" ]]; then
    PROCFILE_PATH="$DOKKU_LIB_ROOT/data/ps/$APP/Procfile.extracted"
    mkdir -p "${DOKKU_LIB_ROOT}/data/ps/${APP}"
    chown -R "${DOKKU_SYSTEM_USER}:${DOKKU_SYSTEM_GROUP}" "${DOKKU_LIB_ROOT}/data/ps/${APP}"
  fi

  if [[ "$FORCE_EXTRACT" == "true" ]]; then
    plugn trigger procfile-remove "$APP" "$PROCFILE_PATH"
  fi

  fn-procfile-extract "$IMAGE" "$PROCFILE_PATH"
}

trigger-ps-procfile-extract "$@"
