bronto auth login writes the region, and
bronto config set writes everything else. This page covers what is stored where, and
which value wins when several sources disagree.
Precedence
Each setting comes from the first of these sources that has a value:
The API key is resolved separately:
--api-key, then BRONTO_API_KEY, then the keychain.
It’s never read from a file (see Authentication).
See what’s in effect
bronto config list shows every resolved value and where it came from (flag, env,
project, user, default, or keychain). The API key is masked.
BRONTO_* environment variables.
bronto config get <key> prints one value. It fails with config_unknown_key if the key
has no value from any source.
Change a setting
bronto config set <key> <value> writes to the user config file, in the active profile’s
section:
--profile <name> to write to a profile other than the active one.
Most commands refuse a profile that has neither a section in the user config file nor a
stored key, and exit with profile_not_found (exit 4), so a typo such as --profile p2x
doesn’t quietly fall back to the default region. bronto auth login, bronto config
commands, and any command given a key through --api-key or BRONTO_API_KEY accept a new
profile name.
config set only accepts the keys in the table below, and checks the value before
writing it: a typo such as timout, timeout abc or region EU fails with an exit code
of 2 and leaves the file unchanged. If the file already holds an invalid value (for
example from a hand edit), other commands fail with config_invalid_timeout,
config_invalid_max_retries or config_invalid_region, but bronto config list, get
and set still work, so you can repair it:
config set changes only the value on that key’s line and keeps a comment at the end of
it. Other comments and keys the CLI doesn’t use stay as they are. If the file uses TOML syntax the line edit can’t handle safely, such as
inline tables, the CLI rewrites the whole file instead: every key is kept, but comments
are lost.
Settings
Two secrets are environment-only and can’t be set with
config set: BRONTO_API_KEY
and BRONTO_ASK_API_KEY. Environment variables lists
every variable the CLI reads.
The user config file
The file isbronto/config.toml inside your OS’s user config directory:
Set
BRONTO_CONFIG_DIR to use a different parent directory. The REPL history and the
fallback credentials file live in the same bronto/ directory.
The file holds a default profile name and one section per profile. Values can be strings
or plain numbers (timeout = 60), here and in a project file:
Profiles
A profile bundles settings and its own stored API key. Select one per command with--profile <name> or BRONTO_PROFILE, or change the default with bronto auth switch:
Project files
A.bronto.toml in your working directory, or in any directory above it, applies to
every command run there. It’s a flat TOML file with no profile sections. Use it to pin a
repository to its dataset:
profile, region, output, default_dataset, timeout, and
max_retries. Nothing else is read from it.
A profile in a project file switches commands to that profile’s stored key and
base_url, which may point at a different account than you expect. Each command that uses
it says so on stderr, unless you pass --quiet:
--profile and BRONTO_PROFILE take precedence over the project file.
