36 lines
1.1 KiB
Bash
36 lines
1.1 KiB
Bash
#!/bin/sh
|
|
set -eu
|
|
|
|
APP_NAME="dbussmsforward"
|
|
ROOT_DIR="${ROOT_DIR:-/}"
|
|
APP_DIR="${ROOT_DIR%/}/opt/dbussmsforward"
|
|
CONFIG_DIR="${ROOT_DIR%/}/etc/dbussmsforward"
|
|
INIT_SCRIPT="${ROOT_DIR%/}/etc/init.d/${APP_NAME}"
|
|
CONFIG_FILE="$CONFIG_DIR/appsettings.json"
|
|
ENV_REPORT="$CONFIG_DIR/install-env-check.json"
|
|
SKIP_SERVICE_ENABLE="${SKIP_SERVICE_ENABLE:-0}"
|
|
|
|
mkdir -p "$APP_DIR" "$CONFIG_DIR" "$(dirname "$INIT_SCRIPT")"
|
|
cp -R src wwwroot pyproject.toml README.md "$APP_DIR/"
|
|
if [ ! -f "$CONFIG_FILE" ]; then
|
|
cp deploy/common/appsettings.deploy.json "$CONFIG_FILE"
|
|
fi
|
|
cp deploy/openwrt/dbussmsforward.init "$INIT_SCRIPT"
|
|
chmod +x "$INIT_SCRIPT"
|
|
|
|
if ! PYTHONPATH="$APP_DIR/src" python3 -m dbussmsforward.cli env-check --config "$CONFIG_FILE" --format json > "$ENV_REPORT"; then
|
|
echo "Environment check failed. Report saved to $ENV_REPORT" >&2
|
|
cat "$ENV_REPORT" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ "$SKIP_SERVICE_ENABLE" != "1" ]; then
|
|
"$INIT_SCRIPT" enable
|
|
fi
|
|
|
|
echo "Installed to $APP_DIR"
|
|
echo "Config: $CONFIG_FILE"
|
|
echo "Env check report: $ENV_REPORT"
|
|
echo "Start with: $INIT_SCRIPT start"
|
|
echo "Logs with: logread -e ${APP_NAME}"
|