Skip to content

Production Setup and End-User Onboarding

Purpose

Create a production OpenSESA environment and make it ready for real end users, not only developers.

OpenSESA is open source and free to use, so this production path is intended for direct organizational adoption as well as technical evaluation.

When To Use This Page

  • preparing first production go-live
  • creating a staging environment that mirrors production behavior
  • onboarding operational teams and end users onto a live deployment

Prerequisites

Requirement Minimum Why It Matters
PostgreSQL managed or self-hosted with backups system of record and recovery
Redis persistent and monitored instance cache and async broker
App runtime container or VM deployment target serves user traffic
Worker runtime Celery worker capacity executes async processing
TLS + DNS valid domain and certificates secure user access
Production .env environment-specific secrets/settings secure runtime behavior

Production Bootstrap Flow

flowchart LR
    Prep["Prepare Production Infra + Env"] --> Up["Start Deploy Stack"]
    Up --> Migrate["Run Migrations"]
    Migrate --> Static["Collect Static Assets"]
    Static --> Check["Run Runtime Checks"]
    Check --> Validate["Validate Critical User Flows"]
    Validate --> GoLive["Go Live + Operate"]

Deployment Steps

  1. Prepare production .env with strict security, host, and auth settings.
  2. Pull the target container images.
  3. Start the deployment stack.
  4. Apply database migrations.
  5. Collect static assets.
  6. Run Django checks.
  7. Validate core workflows before user rollout.

Use the detailed command runbook in Deployment.

Docker Pull for Production Updates

Before starting or updating production services, pull images explicitly so deployments use the intended version.

# set this if your deployment compose file uses a different name/path
DEPLOY_COMPOSE_FILE=docker-compose-deploy.yml

# pull all images referenced by deploy compose file
docker compose -f "$DEPLOY_COMPOSE_FILE" pull

# start services after pull
docker compose -f "$DEPLOY_COMPOSE_FILE" up -d

For controlled rollouts, pin image tags in your deploy compose file and pull those exact tags before promotion.

End-User Readiness Checklist

  • authentication works for the intended user roles
  • users can create and manage projects
  • requirements and interfaces can be authored and linked
  • verification and assurance evidence flows are usable
  • baseline and impact operations complete successfully
  • async jobs complete without queue backlog alarms

Minimum Go-Live Acceptance

  • no ERROR logs during core user journeys
  • zero pending migrations after rollout
  • static assets served correctly from the configured runtime path
  • at least one requirement-to-verification trace path confirmed in production
  • rollback approach validated for the current release window

First-Week End-User Navigation

  1. Platform Capabilities
  2. Governance and Scope
  3. Interfaces and Requirements
  4. Verification and Assurance
  5. Baseline, Impact, and Operations

Day-2 Operations

After go-live, operate with: