Client Onboarding¶
Step-by-step guide for deploying CampusCore to a new university.
The operator path is scripts/onboard-client.sh - run it with no arguments for the full interactive journey, or drive it section by section (in Claude Code, invoke /onboard_client).
Every section probes ground truth first, so rerunning after an interruption resumes safely.
The docs below remain the reference for what each stage does, the manual fallback commands, and the client-facing conversation.
What's Already Set Up¶
The following infrastructure is shared across all clients and has already been provisioned. You do not need to repeat these steps.
| What | Where | Reference |
|---|---|---|
| Admin AWS account (OIDC role, S3 permissions, Route53) | AWS account 774222656146 |
Admin Account Setup |
Repo-level secrets and variables (ADMIN_AWS_ROLE_ARN, CAMPUSCORE_HOSTED_ZONE_ID, superuser credentials) |
GitHub repo settings | Repo & Pipeline Setup |
Steps¶
| Step | Guide | Time | What You Do | Script sections |
|---|---|---|---|---|
| 01 | Prerequisites | - | Sit with client, collect all credentials and branding info | (interview - no section) |
| 02 | Pipeline Setup | ~15 min | Create TF state bucket, GitHub Environment, secrets, variables | pipeline, secrets, optionally sentry/slack (their values only reach the container via a deploy) |
| 03 | Deployment | ~45 min | Client deploys IAM role, we trigger first deployment | deploy-role, deploy, verify |
| 04 | Post-Deployment | ~45 min | Setup wizard, SSO, connectors, scraping, verification | - |
Reference¶
| Doc | Description |
|---|---|
| GitHub Environment Variables | Complete list of all secrets and variables per environment |