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

verify_paths() {
  declare desc="verifies storage paths"
  local -r passed_path=$1
  if [[ "$passed_path" == /* ]]; then
    echo "$passed_path" | grep -qe '^/.*\:/' || dokku_log_fail "Storage path must be two valid paths divided by colon."
  else
    echo "$passed_path" | grep -qe '^[a-zA-Z0-9]\{1\}[a-zA-Z0-9_.-]\+\:\/' || dokku_log_fail "Volume name must be two characters or more. Volume name must not contain invalid characters. Storage path must be two valid paths divided by colon."
  fi

}

check_if_path_exists() {
  declare desc="checks if path exists"
  local -r passed_path=$1
  local -r phase_file_path=$2
  [[ -r "$phase_file_path" ]] && grep -qe "^-v $passed_path" "$phase_file_path"
}

get_bind_mounts() {
  declare desc="strips docker options and prints mounts"
  local -r phase_file_path=$1
  if [[ -r "$phase_file_path" ]]; then
    sed -e '/^-v/!d' -e 's/^-v //' <"$phase_file_path"
  fi
}
