Configuration

gallia.toml

All gallia settings stem from the commandline interface. The documentation for all available settings per subcommand is available via -h/--help. Frequently used settings can be put in a configfile which is called gallia.toml. Settings from the config file set the default of the respective commandline option. The config can always be overwritten by manually setting the relevant cli option.

The configuration file gallia.toml is written in TOML. Inheritence is not supported; the first file is loaded. The gallia.toml file is loaded from these locations (in this particular order):

  • path specified in the env variable GALLIA_CONFIG; see Environment Variables.

  • current directory

  • current Git root (if the current directory is a Git repository)

  • $XDG_CONFIG_HOME/gallia/gallia.toml

  • ~/.config/gallia/gallia.toml

Only some cli options are exposed to the config file. The available config settings can be obtained from gallia --template. The output of --template is maintained to be up to date and is intended as a starting point.

Hooks

gallia supports hooks for preparation or cleanup/postprocessing tasks. Alternatively, they can be useful for e.g. sending notifications about the exit_code via e.g. matrix or ntfy.sh. Hooks are shell scripts which are executed before (= pre-hook) or after (= post-hook) the main() method. These scripts can be specified via --pre-hook or --post-hook or via gallia.toml as well.

The hook scripts have these environment variables set; some are optional and hook scripts are encouraged to check their presence before accessing them:

GALLIA_HOOK

Either pre or post.

GALLIA_ARTIFACTS_DIR

Path to the artifactsdir for the current testrun.

GALLIA_EXIT_CODE (post)

Is set to the exit_code which gallia will use after the hook terminates. For instance GALLIA_EXIT_CODE different from zero means that the current testrun failed.

GALLIA_META (post)

Contains the JSON encoded content of META.json.

GALLIA_INVOCATION

The content os sys.argv, in other words the raw invocation of gallia.

GALLIA_GROUP (optional)

Usually the first part of the command on the cli. For instance, for gallia scan uds identifiers GALLIA_GROUP is scan.

GALLIA_SUBGROUP (optional)

Usually the second part of the command on the cli. For instance, for gallia scan uds identifiers GALLIA_GROUP is uds.

GALLIA_COMMAND (optional)

Usually the last part of the command on the cli. For instance, for gallia scan uds identifiers GALLIA_COMMAND is identifiers.