# Lodge website Static site `www.thelonglakelodge.com` (apex → 301 → www). Source at `~/code/git/code.fritzlab.net/websites/thelonglakelodge.com`. Published via `action/site-publish@v1`: push to `main` → `aws s3 sync --delete` to Garage bucket `thelonglakelodge.com`, ArgoCD reconciles Traefik Ingress + cert. ## Welcome packet PDF (`/welcome`) URL `https://www.thelonglakelodge.com/welcome/` → meta-refresh + JS `location.replace()` → `welcome.pdf` (browser's native PDF viewer renders the file). Unlisted (`noindex,nofollow`), not in nav. The PDF lives in Garage S3 **only**, NOT in git: - S3 key: `s3://thelonglakelodge.com/welcome/welcome.pdf` - Public URL: `https://www.thelonglakelodge.com/welcome/welcome.pdf` - Preserved across site-publish runs via `excludes:` in `site.yaml` (the `--exclude` flag was added to `action/site-publish` for this case). ### Update the packet One command — change is live immediately, no git/CI involved: ```sh aws --profile sjc001 s3 cp /path/to/new.pdf \ s3://thelonglakelodge.com/welcome/welcome.pdf \ --content-type application/pdf ``` The `sjc001` aws-cli profile is documented in fritzlab `garage.md`.