Files
Spendlight/scripts/deploy.sh
Chris Olson c3cf0f3eb8 Milestones 0 and 1: foundation and money in (20261007.10)
Foundation: single arm64 container (Hono + SQLite via Drizzle, React + Vite),
local sign-in with long-lived sessions and passkeys, roles (read-only, full
access, admin), nightly and pre-upgrade backups, light and dark themes,
date-based version numbers, and the ideas lightbulb behind IDEAS_ENABLED.

Money in: accounts with balances, CSV import with bank detection, a column
mapping pop-up for unknown layouts, duplicate checks, transfer pairing and
undo; one-tap review with learned rules; activity with search, splits, tags,
notes and cash entries. Statement files are blocked from commits by a
pre-commit hook; tests use synthetic fixtures only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 19:52:07 -04:00

19 lines
592 B
Bash
Executable File

#!/usr/bin/env bash
# Build a new version and (re)start Spendlight with it.
set -euo pipefail
cd "$(dirname "$0")/.."
if [ ! -f .env ]; then
cp .env.example .env
echo "Created .env from .env.example; review it, then run this again if needed."
fi
# Read the folder settings so the bind mounts exist and belong to this user
# (otherwise Docker creates them as root and the app can't write).
set -a; . ./.env; set +a
mkdir -p "${DATA_PATH:-./data}" "${BACKUP_PATH:-./backups}"
scripts/build.sh
docker compose up -d
echo "Spendlight $(cat VERSION) is starting on port ${HOST_PORT:-8095}."