Add a "check-config" command that detects incompatible/wrong configuration
This resolves #72 (closed).
- Add the CLI subcommand named
check-config
- Add tests for running it against a valid config and configs that are invalid in two different ways.
- Add a
utils::init_cli_logging
function that sets up stderr-based logging for CLI tools. - Disable unknown fields on structs responsible for parsing the configuration file.
However, anti-goals: I'd like to avoid doing "validate the world" type things like DNS name resolution (nginx does this, for ex) in this process - build system sandboxes don't necessarily have network access, so would be unable to use the configtest command.
Edited by Andreas Fuchs