How do I start the ORE Studio services?

Table of Contents

Requires .env and built binaries (see How do I set up a development environment?). Start order: NATS server → controller; the controller spawns all other services (IAM, domain services, HTTP, Wt, compute wrappers) in dependency order.

Question

How do I start all ORE Studio backend services for a local checkout?

Answer

  1. Ensure the environment is initialised and the project is built (see How do I initialise the checkout environment? and How do I build the system?).
  2. Start services:

    ./projects/ores.compass/compass.sh services start
    

    The preset defaults to ORES_PRESET from .env. Override with --preset:

    ./projects/ores.compass/compass.sh services start --preset linux-clang-debug-make
    

    Change log verbosity with --log-level (default: trace):

    ./projects/ores.compass/compass.sh services start --log-level info
    

    The script blocks until the controller logs All services started, then exits.

Check status

./projects/ores.compass/compass.sh services status

Stop all services

./projects/ores.compass/compass.sh services stop

Logs

Logs land in build/output/<preset>/publish/log/. Each service writes its own <name>.log file; the NATS server writes nats-server.log.

Prerequisites checklist

  • .env exists (run compass env init if not — see How do I initialise the checkout environment?).
  • Database initialised (compass db recreate -y).
  • Project built (cmake --build --preset <preset>).
  • nats-server on PATH or in /usr/sbin.

Script

compass services start — starts NATS then the controller; blocks until all services are up. compass services stop — stops all services cleanly. compass services status — shows running/stopped state per service.

Tested by

Manual, each development session. No CI path — CI uses pre-configured runners.

See also

Emacs 29.1 (Org mode 9.6.6)