Environment Variables

The Genvid MILE SDK uses many environment variables for its configuration. Some of the key variables are defined below.


The name of the resource group to be used for Azure.


Contains the name of Azure Storage Account to use. If not set, a storage account will be created automatically. Defaults to bastion_id-First_8_characters_of_tenantID.


A variable pointing to the binaries directory (named bin) under GENVID_SDK_FOLDER.

Deprecated since version 1.40.0: Use GENVID_SDK_FOLDER/bin` or GENVID_TOOLBOX_FOLDER/bin.


The Consul client address, not including the protocol. Our applications and SDK will respect it if present.


A variable used by the script to communicate the current directory location. It is likely to be deprecated in the near future.

Deprecated since version 1.39.0: Variable is too unpredicatable and dangerous. Use os.getcwd() instead.


The Docker host machine name. When set, it allows the genvid.toolbox.DockerTool to connect to the Docker host using docker-machine. If not set, the default client will be used instead.


The port used for binding the bastion-api service. Default to 8092. See also GENVID_DEFAULT_IP, GENVID_BASTION_URL.

New in version 1.12.0.

Deprecated since version 1.45.0: The variable is superceded with proper configuration of Traefik instead. See Traefik Configuration for more details.


Folder containing the configuration loaded on the bastion during installation.

Defaults to GENVID_TOOLBOX_FOLDER/bastion-services/config.

New in version 1.31.0.


ID of the currently running bastion, present in all rendering tasks of the Bastion API and Cluster API.


Tasks that are launched by the bastion are not automatically relaunched if the bastion ID is changed to avoid spurious restart.

New in version 1.33.0.


Folder where the bastion init configuration is found. See setup_jobs() for more details.

New in version 1.29.0.


Folder containing the job template definition loaded on the bastion during installation.

Defaults to GENVID_TOOLBOX_FOLDER/bastion-services/templates.

New in version 1.31.0.


The static directory of the Bastion-API that contains the API schemas.

New in version 1.20.0.


A variable used by the script to communicate with the bastion-api. The system will use Consul discovery by default.

New in version 1.11.0.

Changed in version 1.45.0: The API is now exposed under Traefik, and should include the proper prefix (/bastion). For example, if previously, the URL was http://mybastion.example.com:8192, it should be now http://mybastion.example.com/bastion:8081/bastion.


This URL must point to a method returning your external IP address. It is mostly used to set the default trusted_cidr in the local Bastion, to give access to the remote servers. The default value is set according to CHECKIP_URL.

New in version 1.19.0.


ID of the cluster that will be used by default by the toolbox applications. It is also present for any template rendering of the Cluster API.

New in version 1.21.0.

Changed in version 1.33.0: Standardized its usage on the Cluster API too.


Overrides the default IP of for binding the services locally. The usage of this variable is explained in the Setting the Local IP section.


Set the timeout in seconds of the Docker API used by DockerTool. Default to 120 seconds.

New in version 1.34.0.


The named profile that should be used. If this environment variable is defined, the specified profile must exist in one of the paths defined by GENVID_PROFILES_PATH.

New in version 1.20.0.


The profile currently loaded or the empty string if no profile is in use.

New in version 1.20.0.


An os.pathsep separated list of paths which defines in which order and where we search for a named profile. The paths may point to either regular files or directories.

New in version 1.20.0.


This variable points to the SDK install directory.

New in version 1.39.0.


The path with the default settings-schema loaded for this SDK. This value is only used by the genvid-sdk setup command.

New in version 1.41.0.


This variable contains the current SDK version installed under GENVID_SDK_FOLDER.

New in version 1.39.0.


This variable indicates the location of the data directory for the Bastion supervision services.


The timeout used by genvid-bastion for launching the supervisor services.


This variable is used inside the local Nomad templates (under bastion-services/templates) to allocate a fixed port for each service. The service uses a port allocated dynamically by nomad if not set.


The sandbox path where the sources for the template is copied when calling POST /template_renderer.

New in version 1.33.0.


Internal variable for Bastion API and Cluster API that configure the rendering time behaviour of consul-template internally. Default to 2 seconds.


This variable points to the Toolbox installation directory.

New in version 1.39.0.


The default log format of the scripts. It follows the format options of the logging.Formatter.


The default logging level of the scripts.


The version of the installed toolbox.


The folder where Vault can find its policies. See genvid.toolbox.VaultTool.vault_load_policies().


The folder where Vault can find its roles. See genvid.toolbox.VaultTool.vault_load_roles().


If set to 1, the Python toolbox will show the full stack trace for exceptions instead of the default compact output.


A variable to the user home directory. Usually points to USERPROFILE on Windows.


This variable is set by the sample scripts to the value of their current directory. Used mostly to set the location of binaries in the local environment.


A variable pointing to the current Python executable in the Toolbox.


This variable is now deprecated and will be set to the same value as GENVID_SDK_FOLDER if not already set. Otherwise, it will be ignored.

Deprecated since version 1.39.0: Use GENVID_SDK_FOLDER instead.


The address to the Vault service.


The keys used to unseal Vault.


The token used to connect to Vault.


The path of the file where the Vault token is saved.


The path of the file where the Vault keys are saved.