Best practice in regards to creating environment specific constants

Hello, we are using Appian 18.4. We have constants that are environment specific; for example, assume we have constant WSDL_FILE.

 

- DEV: wsdldevurl.com

- QA: wsdlqaurl.com

- prod: wsdlprodurl.com

Currently, if we refresh data from production into DEV and QA, the constant values are getting updated with the production value. Is there any way we can avoid this? 

Is it a correct understanding that we can add constants values in the custom.properties file by following this pattern:

  • In DEV, the custom.properties file would have a line as constantuuid=wsdldevurl.com
  • In QA, the custom.properties file would have a line as constantuuid=wsdlqaurl.com
  • In production, the custom.properties file would have a line as constantuuid=wsdlprodurl.com

If this is the case, is there any documentation about this? If not, what are my options?

  Discussion posts and replies are publicly visible

Parents Reply
  • Good question Kevin. When we refresh from production to DEV, we are not exporting from production and importing back to DEV. I realize that if we were to do that, the environment specific functionality in constants (and other objects) would work just fine. We are basically taking a snapshot of the KDBs from production and moving them into DEV. We are copying kdbs from a nightly backup and copying into DEV, along with a matching database backup and copy of data from accdocs1, accdocs2 etc. Because we are copying the kdbs and not importing the applications, the environment specific process doesn't work for us. I hope this makes sense.
Children
No Data