config_env_missing

Diagnostic `nanook::config::env_missing`

Summary

environment variable `{0}` referenced from config is not set

Help

export the variable, or use ${{{0}:default}} to provide a fallback

Details

When this fires

A ${VAR} reference in nanook.toml was processed by the substitution pass in crates/nanook-core/src/config/subst.rs and the variable wasn't set in the process environment. The placeholder also didn't supply a :default fallback, so there was nothing to fall back to. The diagnostic underlines the placeholder in the source file and tells you which variable was missing. Hits during nanook check and nanook run.

What to check

Export the variable in the systemd EnvironmentFile (or wherever nanook launches), or give the placeholder a :default fallback.

# bad: blows up if HOST isn't exported
url = "https://${HOST}/api"
# good: falls back to localhost
url = "https://${HOST:localhost}/api"