Configuring uenv¶
Uenv is designed to work out of the box, with zero configuration for most users. There is support for limited per-user configuration via a configuration file, which will be expanded as we add features that make it easier for groups and communities to manage their own environments.
User configuration¶
Uenv is configured using a text configuration file.
The location of the configuration file follows the XDG base directory specification, with the location defined as follows:
- If the
XDG_CONFIG_HOMEenvironment variable is set, use$XDG_CONFIG_HOME/uenv/config. - Otherwise use the default location
$HOME/.config/uenv/config.
Syntax¶
The configuration file uses a simple key = value syntax, with comments starting with #:
Notes on the syntax:
- keys are case-sensitive:
colorandColorare not equivalent. - all keys are lower case
- white space is trimmed from keys and values, e.g.:
color = truewill be parsed askey='color'andvalue='true'.
Options¶
| key | description | default | values |
|---|---|---|---|
color |
Use color output | automatically chosen according to environment | true, false |
repo |
The default repo location for downloaded uenv images | $SCRATCH/.uenv-images |
An absolute path |
elasticsearch |
Elastic logging API end point | - | http://log.cscs.ch:31311/logs |
color¶
By default, uenv will generate color output according to the following:
- if
--no-coloris passed, color output is disabled - else if
coloris set in the config file, use that setting - else if the
NO_COLORenvironment variable is defined color output is disabled - else if the terminal is not TTY disable color
- else enable color output
repo¶
The default repo location for downloaded uenv images. The repo is selected according to the following process:
- if the
--repoCLI argument is given, use that setting - else if
repois set in the config file, use that setting - else use the default value of
$SCRATCH/.uenv-images
Note that the default location is system-specific, and may not match the actual SCRATCH environment variable.
elasticsearch¶
do not modify
This option is set in the system configuration file, normally installed at /etc/uenv/config.
This file is used to set system-wide defaults, and can only be modified by system engineers.
The location of the elastic logging service used to log uenv usage in SLURM jobs. This value has to be set to the specific API end point of the CSCS elastic service, otherwise no logging will be performed.
CSCS uses this information to understand uenv usage, in order to improve the quality of the uenv service.