Skip to main content

Variables

You can use variables to:

  • Provide configuration property values after the application is built.
  • Edit property values and see the results without the need to rebuild the application every time you make a change.
Warning:

The following rules apply:

  • Don't use variables to manage environment variables.

    For details, see Environment variables.

  • Don't store confidential properties as variables.

    To use a secure method, create a secret.

  • Variables are updated when you deploy all or selected applications.

To change application properties in real-time without restarting the application server, use runtime properties. For details, see Runtime properties.

Placeholder values

InsuranceSuite properties are stored as placeholder values in configuration files. With the Variables app, you can use variables to provide and edit external properties for these configuration files.

To identify the affected configuration files, use NAMESPACE prefixes.

At the start of an application, the values in these placeholders are updated with the values set in the Variables app.

Create placeholders in configuration files

A placeholder must meet the following criteria:

  • Contains only letters, digits, and underscores (_).
  • Isn't an empty string.
  • Doesn't start with a digit.

Placeholders must be in the following format:

${NAMESPACE_VARIABLENAME:defaultValue}

Where:

  • NAMESPACE

    The prefix identifying the affected configuration file. The Variables app supports externalizing properties using the following prefixes:

    • CONFIG — identifies config.xml (except for the registry node, which isn't supported)
    • DATABASE — identifies database-config.xml
    • SUITE — identifies suite-config.xml
    • SCHEDULER — identifies scheduler-config.xml
    • WORKQUEUE — identifies work-queue.xml
    • MESSAGING — identifies messaging-config.xml
    • SOLR — identifies solr.xml
    • ISO — identifies ISO.properties
    • METRO — identifies Metro.properties
    • PLUGIN — identifies *.gwp (plugin registry definition files)
    • PUBLISHEDAPIS — identifies published-apis.​yaml
  • VARIABLENAME

    Descriptive name of the variable for which you are providing the placeholder.

  • defaultValue

    Default value of the property, used when there is no value provided from a variable. Default values are also used in TeamCity for testing.

    Important:

    If you don't provide a default value and there is no value passed from a variable, the placeholder isn't updated. This might cause a failure during a server startup.

The code below is an example of a placeholder for the MinPasswordLength property in the config.xml file:

<param name="MinPasswordLength" value="${CONFIG_MINPASSWORDLENGTH:5}"/>
Note:

Don't use the env parameter in configuration files to specify variable values for different planets.

Okta variables

Note:

Whenever you update application credentials, you must deploy the affected apps.

The Variables app uses Okta variables to authorize communication between InsuranceSuite applications and other services. To obtain the Okta variables, the deployed InsuranceSuite applications must have the integration feature flag ISIntegrationEnabled set to all or all propertyServiceDisabled. During the very first deployment in a star system, the Variables app sends requests to Okta to register the InsuranceSuite applications. In return, Okta provides values for the following variables:

  • OKTA_SCOPE - a list of scopes to access the InsuranceSuite applications.
  • OKTA_CLIENT_ID - an ID that Okta uses for authorization.
  • OKTA_CLIENT_SECRET - a secret used for authorization.
  • OKTA_CLIENT_SECRET_ID - ID of the secret used for authentication.
  • OKTA_AUTH_SERVER_URL - a URL address to which the Variables app sends the OKTA_CLIENT_ID and the OKTA_CLIENT_SECRET to obtain a token for authorization.

The next deployments use the same variables.

Note:

You can't change Okta variables in the Variables app.

Check Okta variables

To check the Okta variables:

  1. Select a star system.

  2. From Apps, select Planets or select it from your pinned apps.

  3. Select a planet with InsuranceSuite apps deployed.

  4. From Applications and add-ons, select InsuranceSuite.

  5. Go to Variables and search for variables with the key starting with OKTA.

    Variables tab with Okta variables highlighted.

Environment variables

In the Variables app, some environment variables have predefined values that you can't change or remove. If you use such variables, your provided values won't be applied and will be overridden by the Variables app. To avoid this situation, don't use variables with the following names:

  • POD_NAME
  • POD_IP
  • DEPLOYMENT_ID
  • GW_TENANT
  • GW_PROPERTY_SERVICE_DISABLED
  • OKTA_CLIENT_ID
  • OKTA_AUTH_SERVER_URL
  • OKTA_SCOPE
  • OKTA_APP_NAME
  • OKTA_CLIENT_SECRET
  • OKTA_CLIENT_SECRET_ID
  • TZ
  • DATABASE_JDBC_URL
  • CONFIG_FREE_TEXT_SEARCH_ENABLED
  • SOLR_SOLRSERVER_HOST
  • MESSAGING_SOLR_DESTINATION_DISABLED
  • PLUGIN_RUNTIME_PROPERTY_CONFIG_LOCATION
  • PLUGIN_SOLR_MESSAGE_TRANSPORT_PLUGIN_DISABLED
  • PLUGIN_SOLR_SEARCH_PLUGIN_DISABLED
  • PLUGIN_S3_BUCKET_NAME
  • PLUGIN_INBOUND_S3_INPUT_PREFIX
  • PLUGIN_INBOUND_S3_ARCHIVE_PREFIX
  • PLUGIN_INBOUND_S3_FAILED_PREFIX
  • PLUGIN_OUTBOUND_S3_OUTPUT_PREFIX
  • PLUGIN_ARCHIVING_S3_PREFIX
  • PLUGIN_INTERNAL_S3_PREFIX
  • PLUGIN_AWS_SECRET_NAMES
  • PLUGIN_AWS_SECRET_TAGS
  • PLUGIN_AWS_REGION
  • DD_ENTITY_ID
  • DD_ENV
  • DD_SERVICE
  • DD_VERSION
  • DD_HTTP_CLIENT_TAG_QUERY_STRING
  • DD_HTTP_SERVER_TAG_QUERY_STRING
  • DD_LOGS_INJECTION
  • DD_TRACE_CLASSES_EXCLUDE
  • DD_SERVICE_MAPPING
  • DD_PROFILING_ENABLED
  • DD_TAGS
  • DD_TRACE_ANALYTICS_ENABLED
  • DD_INTEGRATION_THROWABLES_ENABLED
  • DD_TRACE_PARTIAL_FLUSH_ENABLED
  • DD_TRACE_PARTIAL_FLUSH_MIN_SPANS
  • DD_DOGSTATSD_NON_LOCAL_TRAFFIC
  • DD_AGENT_HOST
  • APM_OPS_SEND
  • APM_TENANT_SEND
  • DISABLE_HEALTHCHECK
  • CATALINA_OPTS
  • INTERNAL_CM_PRODUCT_URL
  • PUBLIC_CM_PRODUCT_URL
  • INTERNAL_BC_PRODUCT_URL
  • PUBLIC_BC_PRODUCT_URL
  • INTERNAL_CC_PRODUCT_URL
  • PUBLIC_CC_PRODUCT_URL
  • INTERNAL_PC_PRODUCT_URL
  • PUBLIC_PC_PRODUCT_URL
  • CONFIG_CM_PRODUCT_URL
  • CONFIG_BC_PRODUCT_URL
  • CONFIG_CC_PRODUCT_URL
  • CONFIG_PC_PRODUCT_URL
  • SUITE_CM_PRODUCT_URL
  • SUITE_BC_PRODUCT_URL
  • SUITE_CC_PRODUCT_URL
  • SUITE_PC_PRODUCT_URL