# Deployment Framework configuration variables

This page describes [configuration variables](../datasource/datasource-configuration-syntax.md#configuration-variables) used by the Deployment Framework and Caplin Platform blades.

## Overriding configuration variable defaults

To override configuration variable defaults, use one of the approaches below:

* For variables that define host locations (see [Variables defining host locations](#variables-defining-host-locations)), use the [`dfw hosts`](cdf-the-deployment-framework-command-utility-dfw.md#hosts) command.
* For variables that define the location of a Java virtual machine, use the [`dfw java`](cdf-the-deployment-framework-command-utility-dfw.md#java) and [`dfw java32`](cdf-the-deployment-framework-command-utility-dfw.md#java) comamands.
* For all other variables, define your own value in the Deployment Framework file `global_config/environment.conf`:

  **Example: defining the HTTPS_PASSWORD_FILE_REQUIRED variable**

  ```
  define HTTPS_PASSWORD_FILE_REQUIRED "NO"
  ```

For more information on configuration variable syntax, see [Configuration variables](../datasource/datasource-configuration-syntax.md#configuration-variables) in the [DataSource configuration syntax](../datasource/datasource-configuration-syntax.md) reference.

## Variables defining dependency paths

Configuration variables describing the location external dependencies.

* **JVM_LOCATION**\
Used to set the [`jvm-location`](../datasource/datasource-java-jvm-configuration.md#jvm-location) configuration item. The default value of this variable is set internally by the Deployment Framework based on the value of the `JAVA_HOME` environment variable. See the [`./dfw java`](cdf-the-deployment-framework-command-utility-dfw.md#java) command and [Configure a DataSource application’s JVM](../datasource/datasource-configure-a-datasource-applications-jvm.md).

* **JVM_LOCATION32**\
The location and name of the 32-bit JVM (Java Virtual Machine) in Linux environments, for use by 32 bit C-Based Adapter blades. See the [`./dfw java32`](cdf-the-deployment-framework-command-utility-dfw.md#java32) command and [Configure a DataSource application’s JVM](../datasource/datasource-configure-a-datasource-applications-jvm.md).
* **SSLCERT_PATH**\
Path to the directory containing the SSL certificate file, SSL key file, and password file. To configure the names of these three files, see the following configuration items: [`https-certificate`](../liberator/liberator-https-configuration.md#https-certificate), [`https-privatekey`](../liberator/liberator-https-configuration.md#https-privatekey), and [`https-passwordfile`](../liberator/liberator-https-configuration.md#https-passwordfile).

## Variables defining two-leg deployments

Configuration variables used in two-leg deployments, as defined in the file `environment.conf`.

For more information on configuring a two-leg deployment, see [Setting up failover](cdf-set-up-server-failover-capability.md).

* **FAILOVER**\
Set to `ENABLED` in a two-leg deployment. Default: `DISABLED`.
* **LOAD_BALANCING**\
Set to `ENABLED` to load-balance requests across the primary and secondary legs in a two-leg deployment. Set to `DISABLED` to serve all requests from the primary leg and use the secondary leg only in the event of failure of the primary leg. Default: `ENABLED`.
* **THIS_LEG**\
The leg number for this deployment leg. Set to `1` on leg one, and set to `2` on leg two. Default: `1`.
* **OTHER_LEG**\
The leg number for the other deployment leg. Set to `2` on leg one, and set to `1` on leg two. Default: `2`.
* **NODE**\
Set to `PRIMARY` on leg one. Set to `SECONDARY` on leg two. Default: `PRIMARY`.
* **LIBERATOR_CLUSTER_NODE_INDEX**\
Sets [`cluster-index`](../liberator/liberator-clustering-configuration.md#cluster-index) for this leg’s Liberator. For more information, see [Setting up a cluster of Liberators](../liberator/liberator-set-up-a-cluster-of-liberators.md).
* **TRANSFORMER_CLUSTER_NODE_INDEX**\
Sets [`cluster-index`](../transformer/transformer-clustering-configuration.md#cluster-index) for this leg’s Transformer. For more information, see [Setting up a cluster of Transformers](../transformer/transformer-set-up-a-cluster-of-transformers.md).

## Variables defining host locations

Configuration variables defining the primary and secondary locations of Liberator and Transformer servers.

These variables are set in the files `global-config/hosts.conf` and `global-config/hosts-defns.conf`. Do not edit these files directly; use the [`dfw hosts`](cdf-the-deployment-framework-command-utility-dfw.md#hosts) command instead.

* **LIBERATOR$\{THIS_LEG}_HOST**\
Sets [cluster-addr](../liberator/liberator-clustering-configuration.md#cluster-addr) for this leg’s Liberator.
* **LIBERATOR$\{OTHER_LEG}_HOST**\
Sets [cluster-addr](../liberator/liberator-clustering-configuration.md#cluster-addr) for the other leg’s Liberator.
* **TRANSFORMER$\{THIS_LEG}_HOST**\
Sets [cluster-addr](../transformer/transformer-clustering-configuration.md#cluster-addr) for this leg’s Transformer.
* **TRANSFORMER$\{OTHER_LEG}_HOST**\
Sets [cluster-addr](../transformer/transformer-clustering-configuration.md#cluster-addr) for the other leg’s Transformer.

## Variables used in Liberator configuration files

Configuration variables used in the configuration files of Liberator blades, as defined in the file `environment-defaults.conf`.

To override the values of these variables, define new values in the file `environment.conf`.

* **ADMINUSER**\
Sets the username for the status page of this leg’s Liberator. See [Liberator status web page](../liberator/liberator-liberator-status-web-page.md).
* **ADMINPASS**\
Sets the password for the status page of this leg’s Liberator. See [Liberator status web page](../liberator/liberator-liberator-status-web-page.md).

* **DIRECTSSL_PASSWORD_FILE_REQUIRED**\
Controls whether Liberator’s DirectSSLConnection blade sets a value for the [directssl-passwordfile](../liberator/liberator-direct-connections-configuration.md#directssl-passwordfile) configuration item.

  <a name="directssl-password-file-required"></a>Takes one of two values:

  * `**YES**` (the default): Liberator’s DirectSSLConnection blade sets a value for the [directssl-passwordfile](../liberator/liberator-direct-connections-configuration.md#directssl-passwordfile) configuration item.
  * `**NO**`: Liberator’s DirectSSLConnection blade does _not_ set a value for the [directssl-passwordfile](../liberator/liberator-direct-connections-configuration.md#directssl-passwordfile) configuration item. If [directssl-passwordfile](../liberator/liberator-direct-connections-configuration.md#directssl-passwordfile) is not set elsewhere in Liberator’s configuration, then Liberator treats the TLS key specified by [direcctssl-privatekey](../liberator/liberator-direct-connections-configuration.md#directssl-privatekey) as unencrypted and you do not need to deploy a password file.

  **Since**: Liberator 7.1.9

* **HTTPS_PASSWORD_FILE_REQUIRED**\
Controls whether Liberator’s HTTPS blade sets a value for the [https-passwordfile](../liberator/liberator-https-configuration.md#https-passwordfile) configuration item.

  <a name="https-password-file-required"></a>Takes one of two values:

  * `**YES**` (the default): Liberator’s HTTPS blade sets a value for the [https-passwordfile](../liberator/liberator-https-configuration.md#https-passwordfile) configuration item.
  * `**NO**`: Liberator’s HTTPS blade does _not_ set a value for the [https-passwordfile](../liberator/liberator-https-configuration.md#https-passwordfile) configuration item. If [https-passwordfile](../liberator/liberator-https-configuration.md#https-passwordfile) is not set elsewhere in Liberator’s configuration, then Liberator treats the TLS key specified by [https-privatekey](../liberator/liberator-https-configuration.md#https-privatekey) as unencrypted and you do not need to deploy a password file.

  **Since**: Liberator 7.1.9
* **LIBERATOR$\{THIS_LEG}_BURST_MAX**\
Sets [burst-max](../liberator/liberator-bursting-configuration.md#burst-max) for this leg’s Liberator. Default: `0.1`.
* **LIBERATOR$\{THIS_LEG}_BURST_MIN**\
Sets [burst-min](../liberator/liberator-bursting-configuration.md#burst-min) for this leg’s Liberator. Default `0.01`.
* **LIBERATOR$\{THIS_LEG}_DATASRCPORT**\
Sets [datasrc-port](../datasource/datasource-datasource-peers-configuration-part-2.md#datasrc-port) for this leg’s Liberator. Default: `${THIS_LEG}5001`.
* **LIBERATOR$\{OTHER_LEG}_DATASRCPORT**\
Sets [datasrc-port](../datasource/datasource-datasource-peers-configuration-part-2.md#datasrc-port) for the other leg’s Liberator. Default: `${OTHER_LEG}5001`.
* **LIBERATOR$\{THIS_LEG}_DATASRC_INTERFACE**\
Sets [datasrc-interface](../datasource/datasource-datasource-peers-configuration-part-2.md#datasrc-interface) for this leg’s Liberator. Default: `""`.
* **LIBERATOR$\{OTHER_LEG}_DATASRC_INTERFACE**\
Sets [datasrc-interface](../datasource/datasource-datasource-peers-configuration-part-2.md#datasrc-interface)  for the other leg’s Liberator. Default: `""`.
* **LIBERATOR$\{THIS_LEG}_DIRECTINTERFACE**\
Sets [direct-interface](../liberator/liberator-direct-connections-configuration.md#direct-interface) for this leg’s Liberator. Default: `""`.
* **LIBERATOR$\{THIS_LEG}_DIRECTPORT**\
Sets [direct-port](../liberator/liberator-direct-connections-configuration.md#direct-port) for this leg’s Liberator. Default: `${THIS_LEG}4001`.
* **LIBERATOR$\{THIS_LEG}_HTTPINTERFACE**\
Sets [`http-interface`](../liberator/liberator-http-configuration-part-1.md#http-interface) and [`https-interface`](../liberator/liberator-https-configuration.md#https-interface) for this leg’s Liberator. Default: `""`.
* **LIBERATOR$\{THIS_LEG}_HTTPPORT**\
Sets [http-port](../liberator/liberator-http-configuration-part-1.md#http-port) for this leg’s Liberator. Default: `${THIS_LEG}8080`.
* **LIBERATOR$\{THIS_LEG}_HTTPSPORT**\
Sets [https-port](../liberator/liberator-https-configuration.md#https-port) for this leg’s Liberator. Default: `${THIS_LEG}8081`.
* **LIBERATOR$\{THIS_LEG}_HTTP_SERVERNAME**\
Sets [http-server-name](../liberator/liberator-http-configuration-part-1.md#http-server-name) for this leg’s Liberator. Default: `unknown`.
* **LIBERATOR$\{THIS_LEG}_RTTP_HOSTNAME**\
Sets [rttp-hostname](../liberator/liberator-rttp-configuration.md#rttp-hostname) for this leg’s Liberator. Default: `unknown`.
* **LIBERATOR$\{THIS_LEG}_RTTP_SERVERNAME**\
Sets [rttp-server-name](../liberator/liberator-rttp-configuration.md#rttp-server-name) for this leg’s Liberator. Default: `unknown`.
* **LIBERATOR$\{THIS_LEG}_THREADS_NUM**\
Sets [threads-num](../liberator/liberator-tuning-configuration.md#threads-num) for this leg’s Liberator. Default: `1`.
* **LIBERATOR$\{THIS_LEG}_JMX_RMI_REGISTRY_PORT**\
Sets [rmi-registry-port](../datasource/datasource-datasource-monitoring-configuration-part-1.md#rmi-registry-port) for this leg’s Liberator. Default: `${THIS_LEG}1001`.
* **LIBERATOR$\{OTHER_LEG}_JMX_RMI_REGISTRY_PORT**\
Sets [rmi-registry-port](../datasource/datasource-datasource-monitoring-configuration-part-1.md#rmi-registry-port) for the other leg’s Liberator. Default: `${OTHER_LEG}1001`.
* **LIBERATOR$\{THIS_LEG}_JMX_RMI_CLIENT_PORT**\
Sets the RMI client port for this leg’s Liberator. Default: `${THIS_LEG}2001`.
* **LIBERATOR$\{OTHER_LEG}_JMX_RMI_CLIENT_PORT**\
Sets the RMI client port for the other leg’s Liberator. Default: `${OTHER_LEG}2001`.
* **LIBERATOR$\{THIS_LEG}_JMX_RMI_SERVER_HOSTNAME**\
Sets the RMI server hostname for this leg’s Liberator. Default: `NOT_DEFINED`.
* **LIBERATOR$\{OTHER_LEG}_JMX_RMI_SERVER_HOSTNAME**\
Sets the RMI server hostname for the other leg’s Liberator. Default: `NOT_DEFINED`.
* **LIBERATOR_MONUSER**\
Sets the [user](../datasource/datasource-datasource-monitoring-configuration-part-1.md#user) option of the [add-monuser](../datasource/datasource-datasource-monitoring-configuration-part-1.md#add-monuser) for this leg’s Liberator.
* **LIBERATOR_MONPASS**\
Sets the [pass](../datasource/datasource-datasource-monitoring-configuration-part-1.md#pass) option of the [add-monuser](../datasource/datasource-datasource-monitoring-configuration-part-1.md#add-monuser) for this leg’s Liberator.
* **LIBERATOR$\{THIS_LEG}_CLUSTER_PORT**\
Sets [cluster-port](../liberator/liberator-clustering-configuration.md#cluster-port) for this leg’s Liberator. Default: `${THIS_LEG}6002`.
* **LIBERATOR$\{OTHER_LEG}_CLUSTER_PORT**\
Sets [cluster-port](../liberator/liberator-clustering-configuration.md#cluster-port) for the other leg’s Liberator. Default: `${OTHER_LEG}6002`.
* **LIBERATOR_CLUSTER_HEARTBEAT_TIME**\
Sets [cluster-heartbeat-time](../liberator/liberator-clustering-configuration.md#cluster-heartbeat-time) for this leg’s Liberator. Default: `5`.

## Variables used in Transformer configuration files

Configuration variables used in the configuration files of Transformer blades, as defined in the file `environment-defaults.conf`.

To override the values of these variables, define new values in the file `environment.conf`.
* **TRANSFORMER$\{THIS_LEG}_DATASRCPORT**\
Sets [datasrc-port](../datasource/datasource-datasource-peers-configuration-part-2.md#datasrc-port) for this leg’s Transformer. Default: `${THIS_LEG}5002`.
* **TRANSFORMER$\{OTHER_LEG}_DATASRCPORT**\
Sets [datasrc-port](../datasource/datasource-datasource-peers-configuration-part-2.md#datasrc-port) for the other leg’s Transformer. Default: `${OTHER_LEG}5002`
* **TRANSFORMER$\{THIS_LEG}_JMX_RMI_REGISTRY_PORT**\
Sets [rmi-registry-port](../datasource/datasource-datasource-monitoring-configuration-part-1.md#rmi-registry-port) for this leg’s Transformer. Default: `${THIS_LEG}1002`.
* **TRANSFORMER$\{OTHER_LEG}_JMX_RMI_REGISTRY_PORT**\
Sets [rmi-registry-port](../datasource/datasource-datasource-monitoring-configuration-part-1.md#rmi-registry-port) for the other leg’s Tranformer. Default: `${OTHER_LEG}1002`.
* **TRANSFORMER$\{THIS_LEG}_JMX_RMI_CLIENT_PORT**\
Sets the RMI client port for this leg’s Transformer. Default: `${THIS_LEG}2002`.
* **TRANSFORMER$\{OTHER_LEG}_JMX_RMI_CLIENT_PORT**\
Sets the RMI client port for the other leg’s Transformer. Default: `${OTHER_LEG}2002`
* **TRANSFORMER$\{THIS_LEG}_JMX_RMI_SERVER_HOSTNAME**\
Sets the RMI server hostname for this leg’s Transformer. Required to allow remote JMX clients to connect. Default: `NOT_DEFINED`.
* **TRANSFORMER$\{THIS_LEG}_JMX_RMI_SERVER_HOSTNAME**\
Sets the RMI server hostname for the other leg’s Transformer. Required to allow remote JMX clients to connect. Default: `NOT_DEFINED`.
* **TRANSFORMER_MONUSER**\
Sets the [user](../datasource/datasource-datasource-monitoring-configuration-part-1.md#user) option of [add-monuser](../datasource/datasource-datasource-monitoring-configuration-part-1.md#add-monuser) for this leg’s Transformer.
* **TRANSFORMER_MONPASS**\
Sets the [`pass`](../datasource/datasource-datasource-monitoring-configuration-part-1.md#pass) option of [`add-monuser`](../datasource/datasource-datasource-monitoring-configuration-part-1.md#add-monuser) for this leg’s Transformer.
* **TRANSFORMER$\{THIS_LEG}_CLUSTER_PORT**\
Sets [cluster-port](../transformer/transformer-clustering-configuration.md#cluster-port) for this leg’s Transformer. Default: `${THIS_LEG}6001`.
* **TRANSFORMER$\{OTHER_LEG}_CLUSTER_PORT**\
Sets [cluster-port](../transformer/transformer-clustering-configuration.md#cluster-port) for the other leg’s Transformer. Default: `${OTHER_LEG}6001`.
* **TRANSFORMER_CLUSTER_HEARTBEAT_TIME**\
Sets [heartbeat-time](../transformer/transformer-clustering-configuration.md#heartbeat-time) for this leg’s Transformer. Default: `5`.
