Commit Graph

8 Commits

Author SHA1 Message Date
Scott Idem
65e0477761 refactor(build): replace staging/cp env hack with vite --mode per-environment
- Rename .env.staging → .env.dev (and .default template)
- Add .env.test.default for the test tier (test-api.oneskyit.com)
- build:staging → build:dev/test/prod using vite --mode <name>
- deploy:staging → deploy:dev; add deploy:test
- Dockerfile: ARG BUILD_MODE=dev; explicit .env.runtime copy per mode
- .dockerignore: rewritten (deduped); allow .env.dev/.env.test/.env.prod
- .gitignore: track .env.dev.default and .env.test.default
- Remove dead PUBLIC_AE_* imports from ae_stores.ts (ACCOUNT_ID, EVENT_ID,
  NO_ACCOUNT_ID_TOKEN, SPONSORSHIP_CFG_ID); sponsorship_cfg_id defaults to null
- Strip dead vars from .env.prod.default template (AE_CFG_ID, AE_APP_NODE_PORT,
  ACCOUNT_ID, EVENT_ID, SPONSORSHIP_CFG_ID, NO_ACCOUNT_ID_TOKEN)
- GUIDE__Development.md: build:staging → build:dev

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 16:07:31 -04:00
Scott Idem
ca91afbd9d chore: Optimized Dockerfile and .dockerignore for faster deployments. 2026-03-11 12:36:34 -04:00
Scott Idem
5eb3374ac0 chore: upgrade node:21-alpine to node:22-alpine (Active LTS)
Node 21 was a non-LTS release, EOL June 2024. Node 22 is the current
Active LTS, supported through April 2027.
2026-03-10 18:58:23 -04:00
Scott Idem
ec00f75df6 fix: revert BuildKit cache mounts (BuildKit not default on this host) 2026-03-10 17:10:19 -04:00
Scott Idem
5e0cc73084 perf: add BuildKit npm cache mounts, add compose:down script
- RUN --mount=type=cache,target=/root/.npm for both npm install steps
  Persists npm cache across builds so unchanged deps aren't re-downloaded
- deploy:staging now targets ae_app only (skip api/nginx rebuild)
- compose:down includes --profile database to remove mariadb/pma containers
  and cleanly release ae_dev_net (fixes 'Resource is still in use' warning)
2026-03-10 16:56:41 -04:00
Scott Idem
2c0eba4130 DevOps: add svelte-kit sync step to Dockerfile before build
Fixes a build warning about missing .svelte-kit/tsconfig.json that
appears when building inside Docker. Running npx svelte-kit sync
pre-generates the required SvelteKit scaffolding before the main
build step.

Also update README title to reflect Svelte v5 and trim a trailing
whitespace in the environment handling section.
2026-03-10 14:20:40 -04:00
Scott Idem
d4f63138ad [DevOps] Add /health endpoint and Docker HEALTHCHECK
- src/routes/health/+server.ts: lightweight health endpoint returning 200 OK
- Dockerfile: HEALTHCHECK hitting /health every 30s, 5s timeout, 10s start period
  Enables Docker/Nginx zero-downtime routing and auto-recovery.
2026-03-10 11:29:02 -04:00
Scott Idem
9b285d7fec feat: implement automated Docker deployment and update README
- Replaced manual rsync/npm_deploy workflow with multi-stage Docker builds.
- Added Dockerfile and .dockerignore for staging and production environments.
- Added 'deploy:staging' and 'deploy:prod' scripts to package.json.
- Updated README.md with new deployment instructions.
2026-03-09 22:17:54 -04:00