CloudDeploy Configurations
CloudOps Configuration Sets
Overview
CloudOps uses .env
files for managing environment variables passed to the Elastic Path application Docker containers. For example, configuration settings includes Java memory settings and database connection properties.
All .env
files can be found in the CloudDeploy repository in the folder cloud-deploy-aws/Config/cloudops-env-files/
.
When deploying Elastic Path Commerce, Jenkins jobs uploads the contents of an .env
file to a Consul config store using the prefix deploy/ep/config/v1/envs/{cloudformation-stack-name}/{dot-env-file-name}/
. The Elastic Path application Docker containers download environment variable values from the prefix in the config store.
Most environment variables are consumed in the Elastic Path-specific Tomcat setenv.sh
file that sets Elastic Path Commerce settings through JVM (Java Virtual Machine) system properties.
In the event that some optional CloudOps environment variables are left blank, Elastic Path Commerce will provide JVM system properties with default settings.
Customizing Configuration Sets
Single Instance Environment
To customize the values:
Check out the CloudDeploy code.
Update the file
cloud-deploy-aws/Config/cloudops-env-files/single-instance-mysql-container.env
Commit and push your code.
In the Jenkins job
DeploySingleInstance
, set the Jenkins parameterCLOUDDEPLOY_BRANCH
to the CloudDeploy branch containing the custom configuration
Authoring Environment
To customize the values:
Check out the CloudDeploy code.
Update the file
cloud-deploy-aws/Config/cloudops-env-files/author.env
.To use your own configuration file based on
author.env
such asexample_new_author.env
, update the Jenkins parameterAUTHOR_EP_CLOUDOPS_ENVNAME
with this new filename.Commit and push your code.
In the Jenkins job
DeployAuthorAndLive
, set the parameterCLOUDDEPLOY_BRANCH
to point to the CloudDeploy Git branch name that contains the custom configuration file
Note: To use custom values for both
author.env
andlive.env
the changes must be in the same CloudDeploy branch.
Live Environment
To customize the values:
Check out the CloudDeploy code.
Update the file
cloud-deploy-aws/Config/cloudops-env-files/live.env
.To use your own configuration file based on
live.env
such asexample_new_live.env
, update the Jenkins parameterLIVE_EP_CLOUDOPS_ENVNAME
with this new filename.Commit and push your code.
In the Jenkins job
DeployAuthorAndLive
, set the parameterCLOUDDEPLOY_BRANCH
to point to the CloudDeploy Git branch name that contains the custom configuration file
Note: To use custom values for both
author.env
andlive.env
the changes must be in the same CloudDeploy branch.
Unsupported Configuration Sets
By default, the .env
files that CloudOps uses are:
author.env
live.env
single-instance-mysql-container.env
The cloudops-env-files/
directory also contains additional unsupported .env
files:
single-instance-aurora-rds.env
single-instance-mysql-rds.env
single-instance-mssql-rds.env
single-instance-oracle-rds.env
These files are used within Elastic Path for testing Elastic Path Commerce database compatibility. These files are included as examples, but are unsupported.