Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Configuration files

Configuration options can be specified in a number of different ways. These take precedence in the following order

  1. Java System properties – set using the -D propertyName=value on the java command line / tomcat launch configuration

  2. webapps/<phixflow>/WEB-INF/classes/local.properties – optional java properties file

  3. webapps/<phixflow>/WEB-INF/classes/phixflow.properties – optional java properties file

  4. Environment variables – using the environment form of the property name as described below

  5. webapps/<phixflow>/WEB-INF/classes/context/server.properties – this contains the default values and should not be modified.

Keystore Files

Optionally, secrets such as database passwords can be kept encrypted in external secret files. Refer to XXX for instructions on how to configure this before proceeding with the installation.

Environment form of property names

As operating systems have stricter rules around valid characters in environment variable names, and prefer them to be in upper case, when using environment variables the property name should be converted as follows:

  • Replace dots (.) with underscores (_).

  • Remove any dashes (-).

  • Convert to uppercase.

For instance “db.url” would be looked up as “DB_URL” when resolved from environment variables.

Guidelines and advice for configuration

  • The context/server.properties file should never be changed. This is replaced on upgrade.

  • For a multi instance environment (e.g. DEV, QA and Prod) it is recommended that a common phixflow.properties file is used on all the instances, containing configuration settings that are identical on all environments. The local.properties file is then used for local overrides such as database url and passwords.

  • For single instance environments it is recommended to follow the same structure as with multi instance environments, but alternatively just one of either the phixflow.properties or local.properties files can be used to have all the configuration in a single file.

  • Only properties that have differing values from the default settings in the server.properties should be configured. This makes it easier to review and manage the configuration and ensures that fixes and improvements to the default settings will be applied automatically.

  • In docker environments it may be beneficial to use environment variables rather than settings in the local.properties file. Theis allows the same container image to be started as multiple instances with different configurations.

  • No labels