Add CI workflow and project runbook documentation
This commit is contained in:
57
README.md
Normal file
57
README.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# No Hype AI
|
||||
|
||||
Django 5.2 + Wagtail 7 blog engine for No Hype AI.
|
||||
|
||||
## Environment Variables
|
||||
|
||||
Required:
|
||||
- `SECRET_KEY`
|
||||
- `DATABASE_URL`
|
||||
- `ALLOWED_HOSTS`
|
||||
- `DEBUG`
|
||||
- `WAGTAIL_SITE_NAME`
|
||||
|
||||
Also used:
|
||||
- `WAGTAILADMIN_BASE_URL`
|
||||
- `CONSENT_POLICY_VERSION`
|
||||
- `EMAIL_BACKEND`
|
||||
- `EMAIL_HOST`
|
||||
- `EMAIL_PORT`
|
||||
- `EMAIL_USE_TLS`
|
||||
- `EMAIL_HOST_USER`
|
||||
- `EMAIL_HOST_PASSWORD`
|
||||
- `DEFAULT_FROM_EMAIL`
|
||||
- `NEWSLETTER_PROVIDER`
|
||||
|
||||
## Containerized Development
|
||||
|
||||
```bash
|
||||
docker compose build
|
||||
docker compose run --rm web python manage.py migrate
|
||||
docker compose up
|
||||
```
|
||||
|
||||
App is exposed on `http://localhost:8035`.
|
||||
|
||||
## Test/Lint/Typecheck (Docker)
|
||||
|
||||
```bash
|
||||
docker compose run --rm web pytest
|
||||
docker compose run --rm web ruff check .
|
||||
docker compose run --rm web mypy apps config
|
||||
```
|
||||
|
||||
## Deploy Runbook
|
||||
|
||||
```bash
|
||||
git pull origin main
|
||||
pip install -r requirements/production.txt
|
||||
python manage.py migrate --run-syncdb
|
||||
python manage.py collectstatic --noinput
|
||||
sudo systemctl reload gunicorn
|
||||
```
|
||||
|
||||
## Backups
|
||||
|
||||
- PostgreSQL dump daily: `pg_dump | gzip > backup-$(date +%Y%m%d).sql.gz`
|
||||
- `MEDIA_ROOT` rsynced offsite daily
|
||||
Reference in New Issue
Block a user