Mark deployment complete in TODO
This commit is contained in:
32
TODO.md
32
TODO.md
@@ -14,16 +14,28 @@
|
||||
Note: app must reload `owners.rds` after refresh — either restart container or
|
||||
make app reactive to file changes
|
||||
|
||||
## Features
|
||||
|
||||
- [ ] Add RentCast active listings tab
|
||||
- Pull active listings via RentCast API (see veniceProp/sarco for prior work)
|
||||
- Spatially filter to St. Andrews subdivision boundaries (`data/plats/plats.shp`)
|
||||
- Display on map + table (similar to Owners tab)
|
||||
- Store API key as environment variable, not in code
|
||||
- Consider caching results (API has rate limits)
|
||||
|
||||
## Performance
|
||||
|
||||
- [ ] Optimize CI build time: create a pre-built base image with R packages
|
||||
already installed so renv restore is skipped on redeploy. Cold builds
|
||||
currently take ~10 minutes due to geo stack (sf, gdal) compilation.
|
||||
|
||||
## Deployment
|
||||
|
||||
Everything must be scripted from within the project folder. No manual steps
|
||||
on the server outside of what the workflow handles.
|
||||
- [x] Create Dockerfile, docker-compose.yml, .gitea/workflows/deploy.yaml
|
||||
- [x] Push to Gitea — act_runner deploys on push to main
|
||||
- [x] App live at apps.robwiederstein.org/stAndrews/
|
||||
|
||||
- [ ] Create Dockerfile (follow veniceProp pattern — `rocker/shiny:4.5.2`)
|
||||
- [ ] Create docker-compose.yml (bind to `127.0.0.1:<port>:3838`)
|
||||
- [ ] Create `.gitea/workflows/deploy.yaml` that:
|
||||
- Builds the Docker image
|
||||
- Runs `docker compose up -d`
|
||||
- SSHes into analytics VM and idempotently adds route to gateway Caddyfile
|
||||
- Restarts the gateway container
|
||||
- [ ] Push to Gitea — act_runner handles all future deploys automatically
|
||||
Notes:
|
||||
- Gateway route is hardcoded in ~/docker/gateway/Caddyfile (import pattern failed)
|
||||
- Volume mounts: only ./data and ./www — app code baked into image to avoid renv conflict
|
||||
- act_runner registered at user level, not repo level
|
||||
|
||||
Reference in New Issue
Block a user