#!/usr/bin/env bash
# Create a source deployment archive without local secrets or runtime data.
set -euo pipefail

ROOT="$(cd "$(dirname "$0")/.." && pwd)"
OUTPUT_DIR="$ROOT/releases"
OUTPUT="${1:-$OUTPUT_DIR/tankfarm-infitech-production.zip}"

mkdir -p "$OUTPUT_DIR"
rm -f "$OUTPUT"

cd "$ROOT"
zip -q -r "$OUTPUT" . \
  -x '.git/*' 'releases/*' \
  -x '*/node_modules/*' '*/.venv/*' '*/__pycache__/*' '*/.pytest_cache/*' \
  -x '*/.offline-wheels/*' '*/.offline-tarballs/*' \
  -x '*/dist/*' '*/build/*' '*/.vite/*' \
  -x '*/.env' '*/.env.local' '*/.env.production' '*/.env.development' '*/.env.test' \
  -x '*.log' '*/uploads/*' '.pids' \
  -x '*.db' '*.db-*' '*.sqlite' '*.sqlite3' \
  -x '.idea/*' '.vscode/*' '.DS_Store'

echo "$OUTPUT"
unzip -l "$OUTPUT" | tail -1
