Skip to content
ricochet

Overview

You configure ricochet with a ricochet-config.toml file. This file sets OIDC login, the default user role, the execution backend, and item storage.

With the default ricochet systemd service, the file lives at /var/lib/ricochet/ricochet-config.toml. With the ricochet server CLI, pass the file with ricochet start --config /path/to/ricochet-config.toml.

Terminal window
home = "/var/lib/ricochet/data"
[auth]
default_role = "developer"
require_authentication = false # Set to true to require login for all access
[auth.oidc]
issuer_url = "https://auth.example.com"
client_id = "your-client-id"
client_secret = "your-client-secret"
redirect_url = "http://localhost:6188/oauth/callback"

ricochet needs persistent storage for its database, deployments, and encryption keys. This location is called RICOCHET_HOME.

  • Directorycontent/ deployment bundles
    • …
  • .ricochet.json encryption keys
  • .ricochet.pub public rsa key
  • ricochet.sqlite3 ricochet’s database

By default, RICOCHET_HOME is the current working directory. To change it, set the top-level home key in ricochet-config.toml, such as home = "/path/to/ricochet/home". You can also set it with an environment variable. For the systemd service, the default is /var/lib/ricochet/data.

Or set the RICOCHET_HOME environment variable to the home path you want.

ricochet uses hybrid encryption to keep environment variables and credentials safe. It stores the keys at RICOCHET_HOME/.ricochet.json and RICOCHET_HOME/.ricochet.pub. To read or write the keys in another place, set the secrets field in ricochet-config.toml. This helps most with the Kubernetes backend. See Encryption keys for details.

Environment variables override TOML settings. Use the RICOCHET_ prefix, and use double underscores (__) for nested keys. For example, these variables set values in [auth] and [auth.oidc]:

Terminal window
RICOCHET_AUTH__OIDC__CLIENT_SECRET=secret-value
RICOCHET_AUTH__DEFAULT_ROLE=consumer
RICOCHET_AUTH__REQUIRE_AUTHENTICATION=false

ricochet applies config values in this order:

  1. Environment variables win over ricochet-config.toml
  2. ricochet-config.toml wins over default values