161ef94b4f
Sirius CI/CD Pipeline / Merge API Manifest (push) Blocked by required conditions
Sirius CI/CD Pipeline / Build API (${{ matrix.platform }}) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Build UI (${{ matrix.platform }}) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Merge UI Manifest (push) Blocked by required conditions
Sirius CI/CD Pipeline / Build Engine (${{ matrix.platform }}) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Merge Engine Manifest (push) Blocked by required conditions
Sirius CI/CD Pipeline / Build Infra (${{ matrix.service }}, ${{ matrix.platform }}) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Merge Infra Manifest (sirius-postgres) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Merge Infra Manifest (sirius-rabbitmq) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Merge Infra Manifest (sirius-valkey) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Integration Test (push) Blocked by required conditions
Sirius CI/CD Pipeline / Public Stack Contract (push) Blocked by required conditions
Sirius CI/CD Pipeline / Dispatch Demo Deployment (sirius-demo branch) (push) Blocked by required conditions
Sirius CI/CD Pipeline / Dispatch Demo Canary (main branch) (push) Blocked by required conditions
Check engine pin consistency / Dockerfile / CI pin consistency (push) Successful in 8s
Sirius CI/CD Pipeline / Detect Changes (push) Successful in 23s
Sirius CI/CD Pipeline / Guard Registry Namespace (push) Waiting to run
Validate Docker Configuration / Validate Docker Compose Configuration (push) Successful in 47s
Sirius Installer
sirius-installer is the first-run setup utility for Sirius startup and secrets configuration.
What it does
- Reads template values from
.env.production.example - Merges with existing
.envvalues (idempotent by default) - Generates missing required secrets:
SIRIUS_API_KEYPOSTGRES_PASSWORDNEXTAUTH_SECRETINITIAL_ADMIN_PASSWORD
- Builds
DATABASE_URLfromPOSTGRES_*values (with proper URL-encoding)- Automatically refreshed whenever
POSTGRES_PASSWORDis generated - Preserved as-is if you set it manually and the password is unchanged
- Automatically refreshed whenever
- Supports interactive and non-interactive modes
- Supports
--forceregeneration and secret-safe output flags
Recommended usage from repository root
Use the installer Compose entrypoint (preferred):
docker compose -f docker-compose.installer.yaml run --rm sirius-installer
Local usage
cd installer
go run ./cmd/sirius-installer --template ../.env.production.example --output ../.env
Docker usage
docker compose -f docker-compose.installer.yaml run --rm sirius-installer
Non-interactive usage
docker compose -f docker-compose.installer.yaml run --rm sirius-installer \
--non-interactive \
--no-print-secrets
Useful flags
--force: regenerate required secrets even if they already exist--non-interactive: never prompt; suitable for CI/user-data--no-print-secrets: suppress secret values in installer output