Elastic Path Commerce supports defining different application configuration values for each deployed environment. Configuration is either stored in the Commerce database or provided via configuration files.
Configuration values stored in the Commerce database can be defined using Import/Export XML files and include:
Files based configuration includes:
Defining Environment Configurations
Review the environment directories and the configuration files.
extensions/database/ext-data/src/main/resources/environments directory contains application configuration directories for each of your deployed environments, e.g.
prod-live. These are called environment directories.
Default Environment Directory
environments/default directory contains files that are used in all environments, unless they are overwritten by files with the same name in a specific environment directory.
Data Population Configuration Files
The following files in the root of an environment directory are used to provide environment-specific configuration to the Data Population Tool.
|Defines the data to be processed by the Data Population Tool for the current environment.||Dev team|
|Supplies property overrides for non-secret placeholders defined in Liquibase and Import/Export files.||Dev team|
|Supplies property overrides for secret placeholders defined in Liquibase and Import/Export files.||Dev team (non-prod) / Ops team (prod)|
Application Configuration Files
files/conf/ subdirectory in an environment folder contains application configuration files. The files are accessible at runtime in the
Development teams are free to add any required files or directories to
Secrets can be stored in either the
secure-filtering.properties file if they are used by the Data Population Tool, or in the
files/conf/secure directory if they are accessed by application code at runtime.
The recommended best practices are:
- The development team manages non-secret configuration for all environments.
- The development team manages secrets in non-production environments only.
- The operations team manages production secrets in an encrypted Git repository with the following file structure. See Injecting Commerce Configuration at Runtime.
prod-author files conf secure author-certificate-1.p12 author-certificate-2.p12 secure-filtering-properties prod-live files conf secure live-certificate-1.p12 live-certificate-2.p12 secure-filtering-properties