How do I initialise the checkout environment?
Run once per fresh checkout to generate the .env file, NATS TLS
certificates, and IAM RSA signing key. See CMake setup for preset names.
Question
How do I initialise the checkout environment on a fresh clone?
Answer
Environment setup is owned by the compass Provision pillar:
PGPASSWORD=<pg-superuser-password> \ ./projects/ores.compass/compass.sh env init --preset linux-clang-debug-make -y
This generates .env at the repo root (reusing existing secrets, adding
only missing variables), the NATS TLS certificates under
build/keys/nats/, the IAM RSA signing key, the NATS server config, and
the JetStream store directory — then prints the next steps (create the
database, start NATS, set up SQL connections, start services).
For the full command set — env init flags (--with-diff, logging
toggles), env diff, env list (masked variable listing), and
env version [new] (record an env-format version) — see the detailed recipe
How do I manage the checkout environment with compass?.
Script
projects/ores.compass/compass.sh env init → src/env_init.py (replaced
the former build/scripts/init-environment.sh).
Tested by
Manual, once per fresh checkout.
See also
- How do I manage the checkout environment with compass? — the full
compass envcommand set. - CMake setup — preset menu and output directory layout.
- How do I set up a development environment? — full bootstrap including package installation and database initialisation.
- How do I configure the project? — once-per-checkout configure step.