chore: initial snapshot of tubco people portal

This commit is contained in:
Md Bayazid Bostame
2026-03-19 10:22:20 +01:00
commit 9fe3c2ea82
81 changed files with 8698 additions and 0 deletions

40
README.md Normal file
View File

@@ -0,0 +1,40 @@
# Onboarding/Offboarding v2 (Step 1 Scaffold)
This is a new dockerized web app scaffold next to your current automation.
## Services
- `web`: Django app (`http://localhost:8000`)
- `worker`: Celery async tasks
- `db`: PostgreSQL
- `redis`: task broker
- `mailhog`: local email inbox (`http://localhost:8025`)
## Quick start
1. Copy env file:
- `cp .env.example .env`
2. Fill `.env` values (reuse your current credentials privately).
3. Start services:
- `docker compose up --build`
4. Open app:
- `http://localhost:8000/onboarding/new/`
5. Open test mailbox:
- `http://localhost:8025`
## Current implemented scope
- Onboarding form with labels mapped from your CSV schema.
- Stores requests in PostgreSQL.
- Generates a personalized PDF (simple first version).
- Sends notification email via Celery.
- Optional Nextcloud upload hook (toggle with `NEXTCLOUD_ENABLED=1`).
## Staging E2E verification
Run a real workflow verification (onboarding + offboarding), including PDF checks and optional email/Nextcloud evidence:
- Default (auto MailHog detection, Nextcloud check enabled if configured):
- `docker compose exec -T web python manage.py run_staging_e2e_check`
- With cleanup (removes generated E2E DB rows/PDFs after run):
- `docker compose exec -T web python manage.py run_staging_e2e_check --cleanup`
- Force MailHog verification mode:
- `docker compose exec -T web python manage.py run_staging_e2e_check --email-check mailhog --mailhog-api-url http://mailhog:8025/api/v2/messages`
- Skip Nextcloud existence checks:
- `docker compose exec -T web python manage.py run_staging_e2e_check --skip-nextcloud`