#!/bin/sh
# Shared by the fnOS lifecycle and connection service. This file is sourced.
# Test overrides always use a separate data/config tree.
PACKAGE=nastunnel
APP_ROOT="/var/apps/${PACKAGE}"
if [ -n "${NASTUNNEL_INSTALL_DIR:-}" ]; then
    INSTALL_DIR="$NASTUNNEL_INSTALL_DIR"
    VAR_DIR="${NASTUNNEL_VAR_DIR:-${INSTALL_DIR}/var}"
    CONFIG_FILE="${NASTUNNEL_CONFIG_FILE:-${INSTALL_DIR}/conf/config.json}"
else
    INSTALL_DIR="${APP_ROOT}/target"
    VAR_DIR="${APP_ROOT}/var"
    CONFIG_FILE="${APP_ROOT}/etc/config.json"
    for app_directory in "$INSTALL_DIR" "$VAR_DIR" "${APP_ROOT}/etc"; do
        [ -d "$app_directory" ] || {
            echo "应用存储空间未挂载或路径无效: $app_directory" >&2
            exit 1
        }
    done
fi
for app_path in "$INSTALL_DIR" "$VAR_DIR" "$CONFIG_FILE"; do
    case "$app_path" in
        /*) ;;
        *) echo "应用目录必须为绝对路径" >&2; exit 1 ;;
    esac
done
SCRIPT_DIR="${INSTALL_DIR}/scripts"
SCRIPT_PATH="${SCRIPT_DIR}/service"
NPC_BIN="${INSTALL_DIR}/bin/npc"
export NASTUNNEL_INSTALL_DIR="$INSTALL_DIR"
export NASTUNNEL_VAR_DIR="$VAR_DIR"
export NASTUNNEL_CONFIG_FILE="$CONFIG_FILE"
export NASTUNNEL_SERVICE_SCRIPT="$SCRIPT_PATH"
umask 077
mkdir -p "$VAR_DIR" "$(dirname "$CONFIG_FILE")" || exit 1
