Managing App Deployment Regions
Regional Deployments
OCP applications can be deployed in multiple regions. Today, the platform is built in North America and the EU, with plans for additional regional deployments worldwide.
Managing app deployments happens in the app.yml
file under availability
.
Below is an example of the META section from an app.yml
file.
meta:
app_id: klaviyo_collect
display_name: Klaviyo Collect
version: 0.1.0
vendor: zaius
summary: Collect Data From Klaviyo
support_url: https://www.optimizely.com
contact_email: [email protected]
categories:
- Marketing
availability:
- us
Availability can be implemented by following these example options:
##This deploys to the US only:
availability:
- us
##This deploys to the EU only:
availability:
- eu
##This deploys to both US and EU:
availability:
- us
- eu
##This deploys the app to all current available and future deployment regions:
availability:
- all
Handling environmental differences between regions in the .env file:
What is the difference between using -all
and specifing deployment regions with -us
and eu
?
Automatic Deployment
If your app is tagged with -all
, we will automatically deploy your app to new regions as they become available.
Tagging your app with explicit deployment regions prevents this action and ensures your app is only deployed to the regions you have specified.
Specific Region Requirements
Your app may require specific configuration for different regions.
If you use the -all
availability tag, you can only configure a single .env
file for your app to be used in each region.
If you use the specific region tags, you can then specify a specific .env
file for use with your apps in each region. For example in a -us
and -eu
deployment model, you will have a .env.us
and a .env.eu
file.
Common Region-Specific Use Cases
.env
files commonly hold secret data for use by an app at startup, such as API keys for data exchange. It is common that different applications running in different regions require a different set of API keys by region.
Specifying your respective .env
files for each given region is done by modifying the .env
file extension in your apps to env.us
or .env.eu
. When we publish your app for the different regional availabilities, we will ensure we get the right configuration from each one of the respective .env
files.
Updated about 1 month ago