Blog

Support for Development, Testing, Staging and Production Environments

by on September 1, 2019

This article applies to version 3 of Backendless. The versioning feature in the latest version can be achieved by cloning your application to create replicas for development and staging.

As an application is progressing through its lifecycle, there are different teams involved in interacting with the app and its backend. These teams include developers, testers, security auditors, system administrators, and ultimately customers and the users of the app.

Traditionally, an application goes through the stages of development, testing, staging, and production. Each stage has its own group of users. It is important that each stage has its backend with all the data, security policies, and business processes in an isolated environment from other stages’ environments. Backendless provides support for multiple app environments through a feature called Versioning.

When an app is created, the initial version is called v1. Technically, it is the development stage and if you plan to run multiple environments, it might make sense to rename it to “development”.

  1. Login to Backendless Console, select your app and click the Manage icon.
  2. Click the Versioning menu.
  3. Type in development in the Version URL Prefix text field and press Enter:

The version name always corresponds to the URL prefix. As a result, when it is changed, it must be reflected in the API calls. The version name is used in the endpoint URL for the REST clients and in the app initialization call for all other client types.

To create additional environments, such as testing or staging:

  1. Using the same screen shown above, click the Add New Version button.
  2. Type in the name of the version (Version URL Prefix) and click the Save button.
  3. A version is created and can be used immediately:

Using this approach, you can create as many environments as you need for your app. The version/environment name provides all the required isolation between the data, users, security policies, messages, and geolocation data.

Leave a Reply