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

proxy_ports_cmd() {
  declare desc="list proxy port mappings for an app"
  local cmd="proxy:ports"
  local APP="$2"; verify_app_name "$APP"
  local PROXY_PORT_MAP="$(config_get "$APP" DOKKU_PROXY_PORT_MAP || true)"

  if [[ -n "$PROXY_PORT_MAP" ]]; then
    dokku_log_info1_quiet "Port mappings for $APP"
    dokku_col_log_info1_quiet "scheme" "host port" "container port"
    local port_map
    for port_map in $PROXY_PORT_MAP; do
      dokku_col_log_msg "$(cut -d ':' -f1 <<< "$port_map")" "$(cut -d ':' -f2 <<< "$port_map")" "$(cut -d ':' -f3 <<< "$port_map")"
    done
  else
    dokku_log_fail "No port mappings configured for app ($APP)"
  fi
}

proxy_ports_cmd "$@"
