How do I initialise the checkout environment?

Table of Contents

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 initsrc/env_init.py (replaced the former build/scripts/init-environment.sh).

Tested by

Manual, once per fresh checkout.

See also

Emacs 29.1 (Org mode 9.6.6)