4 Commits

Author SHA1 Message Date
jhodgkin 016256cd2f Add registry-based prod promotion, separate from auto dev deploy
Deploy to Dev / Deploy & Smoke Test (push) Successful in 20s
Deploy to Prod / Deploy & Smoke Test (prod) (push) Failing after 30s
Dev keeps auto-deploying on every push to main, same as before, but now
also publishes each build to git.jerodrigged.com's container registry
tagged by short commit SHA (best-effort - never blocks the dev deploy
if REGISTRY_TOKEN isn't set yet).

Prod deploys only on an intentional `git push origin main:prod`, and
only ever pulls a pre-built SHA-tagged image - it never rebuilds from
source. This guarantees prod runs the exact artifact dev already
validated, and makes promoting an untested commit fail loudly (pull of
a nonexistent tag) instead of silently rebuilding something new.

Needs new secrets before the prod path works: PROD_SSH_KEY, PROD_HOST,
PROD_USER, REGISTRY_USER, REGISTRY_TOKEN. PROD_SSH_KEY/PROD_HOST/
REGISTRY_USER are already set; PROD_USER and REGISTRY_TOKEN still need
Jerod's input.
2026-07-20 04:47:49 +00:00
jhodgkin f5a2b1ab4f Use git reset --hard in deploy to handle working tree drift
Deploy to Dev / Deploy & Smoke Test (push) Successful in 32s
git pull fails if untracked files would be overwritten. Switching to
git fetch + reset --hard keeps the dev LXC in sync unconditionally.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 22:55:03 -06:00
jhodgkin 9209fbdcfc Add trunk-based dev deployment with smoke tests
Deploy to Dev / Deploy & Smoke Test (push) Failing after 17s
- Gitea Action: push to main → SSH deploy to CT114 (lisilou-dev, 192.168.1.192)
  git pull → docker compose build → up -d → health wait → smoke tests
- scripts/smoke-test.sh: 6 curl assertions covering site load, nginx health,
  API health, config serving, booking POST, and nginx routing sanity
- Replaces the non-functional registry-based deploy workflow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-07 22:50:30 -06:00
jhodgkin 4420dd51ac Initial commit: LisiLou Photography Portfolio
Features:
- Immich integration with automatic album image carousel
- Dynamic configuration via JSON files
- Nginx proxy for Immich API access
- Docker deployment ready
- Gitea Actions CI/CD workflow

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 10:35:55 -07:00