HomeGuidesAPI ReferenceGraphQL
Submit Documentation FeedbackJoin Developer CommunityOptimizely GitHubOptimizely NuGetLog In

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.


Did this page help you?