Creating Environment List Files (env.list)
  • 19 May 2023
  • 5 Minutes to read
  • Dark
    Light

Creating Environment List Files (env.list)

  • Dark
    Light

Article Summary

Feature Details
Introduced in Version8.00
Modified in Version8.12

Overview

Containers are configured with an environment list, i.e., env.list file. Environment lists are populated with variables mirroring settings found in a VM's settings.xml to configure a container's database connection, HTTPS, etc. By adding/configuring specific variables, containers possess the same functionalities as a VM.


Required Environment Variables

The following table lists the base minimum required environment variables for all containers. The DECISIONS_PORTALBASEURL is only required for Azure containers. The DECISIONS_FILESTORAGELOCATION variable is only required for containers before v8.5. View more Azure Environment Variables on the Deploying Containers on Azure article.

Environment VariableFunction
DECISIONS_DATABASECONNECTSTRINGConfigures the container's connection to its database.
DECISIONS_DATABASETYPEConfigures what type of database the container uses.
DECISIONS_FILESTORAGELOCATION

Configures location data volumes are mapped to allow containers to preserve persistent data.

Since containers are Linux-based, paths for the file storage will be case-sensitive.


DECISIONS_PORTALBASEURLConfigures the URL of the container consisting of the domain name and its port.
Note:
To configure the properties specified in Settings.xml to the Environment Variable List of the containers, refer article Configuring Settings.xml to Environment Variable.

Example Docker Environment List

Open a text editor like Notepad or Notepad++. Copy the template with the appropriate variables for the container's database, review the reference table, then replace the brackets and their values with the necessary values.

Save the file as a .list file extension e.g. "containerenv.list".

---MSSQL CONTAINER ONLY---
DECISIONS_DATABASECONNECTSTRING=Data Source=;Initial Catalog=;Integrated Security=false;User ID=[SAUSERNAME];Password=[SAPASSWORD];

---POSTGRES CONTAINER ONLY---
DECISIONS_DATABASECONNECTSTRING=Host=[IPv4];Database=[CONTAINERDATABASE];Port=5432;Integrated Security=False;Username=postgres;Password=[ADMINPASSWORD];

---ADD AFTER THE DATABASE CONNECTION VARIABLE---
DECISIONS_FILESTORAGELOCATION=/FileStorage
DECISIONS_PORTALBASEURL=http://localhost:<port> 
DECISIONS_DATABASETYPE=[MSSQL OR POSTGRES]
LANG=[LANGUAGE.TZ]
LANGUAGE=[LANGUAGES]
LC_ALL=[LANGUAGE.TZ]
TZ=[TIMEZONE]
Environment VariableFunctionExample
User ID=[SAUSERNAME]Enter the System administrator's name, aka SA account, in MSSQL.ExampleAccountName
Password=[SAPASSWORD]Enter the password for the MSSQL SA account referenced in the User ID variable.examplepassword
DECISIONS_DATABASECONNECTSTRING=
Host=[IPv4]
Enter the IPv4 address of the machine hosting the Postgres container. xxx.xx.xxx.x
Database=[CONTAINERDATABASE]Enter the desired name of the container's database.
Users may enter a preexisting database or create a new one during container creation by entering a new database name.
New databases increase deployment time considerably.
ExamplePostgresContainer
Password=[ADMINPASSWORD]Enter the admin password for PG 4 Admin.examplepassword
DECISIONS_PORTALBASEURL=
http://localhost:<port>  
The URL used to access the Decisions portal for the container outside the host machine. If the domain name is linked directly to the container, it can be used instead of localhost. For the port number, this will be the internal port on the container that must be mapped to an external port. When defining the port value, it is recommended to use either port 80 or 8080 for the environment.
http://:xxx.xx.xxx.x:8088
DECISIONS_DATABASETYPE=
[MSSQL OR POSTGRES]
Enter either MSSQL or POSTGRES, depending on the container's database.POSTGRES
LANG=[LANGUAGE.TZ]Enter the setting for all categories not directly set by LC_ALLen_US.UTF-8
LANGUAGE=[LANGUAGES]Enter the supported language(s) for the container's messages.en_US:en:fr
LC_ALL=[LANGUAGE.TZ]Enter the settings to override LANG and LANGUAGE settingsen_US.UTF-8
TZ=[TIMEZONE]Enter the timezone the container operates within. By default, this is in UTC.US/Eastern, Asia/Kolkata, America/New_York

The following example depicts an env.list for Postgres container creation on Docker.



Customizing the Environment File

Additional environment variables may populate an env.list to configure optional functionalities such as HTTPS. 

Add the following optional environment variables after the connection anywhere in the env.list. 

Between the variable name and its value, enter an equals (=) sign e.g. "DECISIONS_SERVERTYPE=Repository".

Server Type Variable

To change the container's server type to, for example, a Repository server, enter the following variable into the env.list:

Environment VariableFunctionExample
DECISIONS_SERVERTYPEDetermines the container's server type.

Without this variable, containers install as a standard Application server.
Repository containers: Repository
MT Control containers: Hosted
MT Tenant containers: Tenant

Refer to MT Tenant Variables for all other necessary variables for this container.


MT Tenant Variables

To create an MT Tenant container, enter the following variables into the env.list:

Environment VariableFunctionExample
DECISIONS_CONTROLINSTANCEURLPrompts for the URL of the multi-tenant control instance.http://xxx.xx.xxx.x:8080
DECISIONS_SERVERTYPEDetermines the container's server type.

By default, containers install as a standard Application server.
Tenant
DECISIONS_INSTANCEAUTHENTICATIONKEYPrompts for the instance Authorization Key.[15 random characters (a-Z, 0-9)]
DECISIONS_INSTANCENAMEPrompts for the name of the container's instance.Instance1


Clustering Variables

The following optional environment variables are required to set up a clustered environment.

Environment VariableFunctionExample
DECISIONS_CLUSTERING_TURNONCLUSTERINGToggles whether the containers support clustering.True
DECISIONS_CLUSTERING_REDISBASEURLPrompts for the Redis URL of the Redis container.localhost:6379
DECISIONS_CAN_BE_JOB_SERVERToggles whether the server can be a job server. Ensure to mark it True when running the servers in clustering. For more information, refer to Setting the Primary Job Server for a Cluster.True


Recommended Optional AWS Variables

The following optional environment variables are recommended for an AWS container.

Environment VariableFunctionExample
DECISIONS_LOG_AWS_REGIONRequired for Cloudwatch logging. Enter the address of the Cloudwatch region.aws-region: "us-east--1"


Recommended Optional Azure Variables

The following optional environment variables are recommended for an Azure container.

Environment VariableFunctionExample
DECISIONS_LOG_AZURE_WORKSPACE_IDRequired for log analytics. Enter the Workspace ID of the Log Analytics workspace.--
DECISIONS_LOG_AZURE_AUTHENTICATION_IDRequired for log analytics. Enter the Authentication ID of the Log Analytics workspace.--


Licensing Variables

Refer to the Self-Service Licensing article for further information on licensing.

The container must have an internet connection for licensing.

Environment VariableFunctionExample
DECISIONS_LICENSECOMPANYIDEnter the license ID for the container's instance.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DECISIONS_LICENSECOMPANYNAMEEnter the company name attached to the license's ID.Decisions
DECISIONS_LICENSECONTACTEMAILEnter a contact email for the provided license example@email.com
DECISIONS_ENVIRONMENTNAMEEnter the name of the container to license. This can be specified during container creation or afterward. TestingEnvironment
DECISIONS_LICENSETYPEEnter the license type of the container.
This will likely be either 'Enterprise Production' or 'EnterpriseNonProduction'
EnterpriseProduction


HTTPS Variables

Enter the following environment variables after the licensing variables in the env.list.

Ensure the HTTPS port i.e. port 443 is open and that the correct certificate is saved onto the machine.

Local install must manually edit the container's URL in-browser by adding "https://" before the domain name and ":433" after the domain name e.g. "http//:localhost:443".

The browser may display a warning against this redirect. If prompted, select the Advanced button then select Proceed to continue.

Environment VariableFunctionExample
DECISIONS_HTTPSCERTIFICATEPATHEnter file path where the container's certificate resides. This searches C:\Docker by default. Enter the certificate name at the end./cert/decisions.pfx
DECISIONS_ENABLEHTTPSToggles enabling HTTPS on the container. True
DECISIONS_HTTPSCERTIFICATEPASSWORD
Use this variable if the SSL certificate is password protected
<Certificate Password>
DECISIONS_ENABLEHTTPTOHTTPSREDIRECTION
This setting will redirect the connection from HTTP to HTTPS
True


SSO Variable

To enable SSO for a container, enter the following variable into the env.list:

Environment VariableFunctionExample
DECISIONS_ENABLESINGLESIGNONToggles single sign-on (SSO) for the container.
True


SMTP Variables

Refer to the Email and SMTP in Decisions article for further information.

Besides the bypass variable, each variable's value depends on the SMTP email provider. Gmail, Office365, and Outlook are supported.

Enter their respective values in the variables.

Environment VariableFunctionExample
DECISIONS_MAIL_BYPASSSMTPSERVERToggles if sent mail respects SMTP settings.

It is best to keep this as False or a validation error will occur.
False
DECISIONS_MAIL_SMTPSERVER_
SERVERADDRESS
Enter the domain name of the SMTP service.smtp-relay.gmail.com
DECISIONS_MAIL_SMTPSERVER_
PORT
Enter the port number of the SMTP server.587
DECISIONS_MAIL_SMTPSERVER_
REQUIREAUTHETICATION
Toggles if authentication is necessary to log in to the SMTP server.example@email.com
DECISIONS_MAIL_SMTPSERVER_
USERNAME
Enter the username of the SMTP server.exampleaccount
DECISIONS_MAIL_SMTPSERVER_
PASSWORD
Enter the password for the specified user.password123
DECISIONS_MAIL_SMTPSERVER_
USESSL
Toggles secure socket layer (SSL) encryption on SMTP mail.False

Integration Settings Variables

The following optional variables allow a user to configure Integration settings within the portal.

For more information, refer to Integration Settings and How to Set Up and Use JWT.

Environment VariableFunctionExample
DECISIONS_INTEGRATION_USEASYMMETRICKEY
Enables the container to use the Public Key for JSON Web Token (JWT).True
DECISIONS_INTEGRATION_JWTSECRETKEY
Enter the Secret Key for the JSON Web Token (JWT)--
DECISIONS_INTEGRATION_JWTPUBLICKEY
Enter the Public Key for the JSON Web Token (JWT)--




Feature Changes

DescriptionVersionDateDeveloper Task
Added Environment Variable for "Can Be Job Server"
8.12Pending Release
[DT-037901]
Added Environment Varibales for "Integration Settings Variables"8.12Pending Release[DT-037672]

Was this article helpful?