thread-master/infra/start-api.sh

41 lines
1.5 KiB
Bash
Raw Normal View History

2026-06-30 07:09:44 +00:00
#!/usr/bin/env bash
# 本機 Go API含內建 go job worker
# 設定一律讀 infra/.env
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
ENV_FILE="$ROOT/infra/.env"
if [[ ! -f "$ENV_FILE" ]]; then
echo "找不到 $ENV_FILE請先cp infra/.env.example infra/.env" >&2
exit 1
fi
set -a
# shellcheck disable=SC1090
source "$ENV_FILE"
set +a
: "${HAIXUN_API_PORT:=8890}"
: "${HAIXUN_MONGO_URI:?請在 infra/.env 設定 HAIXUN_MONGO_URI}"
: "${HAIXUN_MONGO_DB:=haixun}"
: "${HAIXUN_REDIS_ADDR:=127.0.0.1:6379}"
: "${HAIXUN_REDIS_PASSWORD:?請在 infra/.env 設定 HAIXUN_REDIS_PASSWORD}"
: "${HAIXUN_JWT_ACCESS_SECRET:?請在 infra/.env 設定 HAIXUN_JWT_ACCESS_SECRET}"
: "${HAIXUN_JWT_REFRESH_SECRET:?請在 infra/.env 設定 HAIXUN_JWT_REFRESH_SECRET}"
: "${HAIXUN_WORKER_SECRET:?請在 infra/.env 設定 HAIXUN_WORKER_SECRET}"
export HAIXUN_API_PORT HAIXUN_MONGO_URI HAIXUN_MONGO_DB
export HAIXUN_REDIS_ADDR HAIXUN_REDIS_PASSWORD
export HAIXUN_JWT_ACCESS_SECRET HAIXUN_JWT_REFRESH_SECRET
export HAIXUN_SECRETS_KEY="${HAIXUN_SECRETS_KEY:-}"
export HAIXUN_WORKER_SECRET
export THREADS_APP_ID="${THREADS_APP_ID:-}"
export THREADS_APP_SECRET="${THREADS_APP_SECRET:-}"
2026-07-01 08:42:51 +00:00
export THREADS_REDIRECT_URI="${THREADS_REDIRECT_URI:-https://threads-tool.30cm.net/api/v1/threads-accounts/oauth/callback}"
export THREADS_OAUTH_SUCCESS_REDIRECT="${THREADS_OAUTH_SUCCESS_REDIRECT:-https://threads-tool.30cm.net}"
2026-06-30 07:09:44 +00:00
cd "$ROOT/backend"
2026-07-01 08:42:51 +00:00
mkdir -p bin
go build -o bin/gateway gateway.go
exec ./bin/gateway -f etc/gateway.yaml