396bb058ade39da7725844a4e1ed1a0727ac96c3
TUBCO Onboarding & Offboarding Portal
This is the standalone dockerized web application for the TUBCO onboarding and offboarding workflow.
Services
web: Django app (http://localhost:8000)worker: Celery async tasksdb: PostgreSQLredis: task brokermailhog: local email inbox (http://localhost:8025)
Quick start
- Copy env file:
cp .env.example .env
- Fill
.envvalues (reuse your current credentials privately). - Start services:
docker compose up --build
- Open app:
http://localhost:8000/onboarding/new/
- 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
Description
Languages
Python
56%
HTML
28.1%
CSS
12%
JavaScript
2.6%
Shell
1.2%