1. Deployment of custom applications via the Custom App Platform

This document is intended to enable you to deploy your own application using the FirstSpirit Custom App Platform.

The following information is currently required to enable you to initiate the deployment of your own applications:

  • customer specific data

  • deployment specific information

  • environment variables

Currently, the development and release of own applications within the Custom App Platform is in the ramp-up phase. For this reason, some customer-specific data have to be communicated via the Technical Support. In the foreseeable future you as a customer will be provided directly with a website where you can manage your apps and services without the e-Spirit Technical Support as an intermediary.

2. Customer Specific Data

The basic information needed to set up a deployment is some customer specific details.

These are:

  • customer name

  • e-mail address

  • name of the application

The customer name is of course known in the context of the respective event. An important piece of information that must be communicated to us before a deployment is set up is an e-mail address to which mails can be sent regarding the deployment. The name of the repository is initially specified by us and consists of the type and name of the application and the customer name.

3. Deployment Specific Information

The standard for a deployment via the Custom App Platform is a setup with three stages: a DEV, a QA and a PROD stage. The DEV stage is based on the develop branch of the corresponding repository, the QA stage on the qa branch and the PROD stage on the master branch. A push on the respective branch automatically triggers an update of the assigned stage.

The essential information needed in this context is the type of deployment.

Currently there are three possibilities.

Static Content via NPM

For the distribution of static content based on an npm-project. Prerequisite is that a dist-folder exists in the generation and that the generation is executed with npm run build.

Node Server

Application that is residing in a node environment. It is important that the application is started with npm run start.

FSXA PWA

A progressive web app based on the FSXA PWA which can serve as a basis for the development of your own application. In this scenario, unlike the previous ones, there are six stages in total. These are a release and an edit version of the DEV, QA and PROD stages. The relation of the stages to the branches is exactly as described above, i.e. both DEV stages are based on the develop branch of the repository etc.

4. Environment Variables

There are two types of environment variables for deployments via the e-Spirit Custom App Platform. Both are registered and evaluated as key-value pairs.

ParameterName : ParameterValue
Global Environmet Variables

These environment variables are used for all stages. This allows you to set customer and application specific parameters that affect the entire deployment. An example would be an authorization token for a third-party application that is relevant for all stages.

Environment Variables for specific Stages

These environment variables are isolated and always refer to a specific stage. This allows you to make individual adjustments that only affect the DEV, QA, or PROD environment. Examples would be a distinction between preview and live data or a certain stage-specific CaaS collection.

5. Technical Overview

The following graphic shows a rough overview of the technical architecture of the Custom App Platform.
For each new deployment, at first the repository including all required branches is created in Bitbucket. The customer project in Bitbucket, in which the repository is created, already exists at this point. This is initially set up for all cloud customers after signing the contract. Afterwards, an internal service, the BambooSpec Service, will create and launch a Bamboo plan for each required stage of the deployment. During this run, the the plan creates the respective applications and namespaces, which make up the stage. This happens in the Rancher customer project. Like the project in Bitbucket, the rancher project already exists at this point.
The deployment is now set up. Each push to the develop, qa or master branch now triggers an update of the corresponding stage.

Architecture CAP
Figure 1. Architecture of the Custom App Platform

6. Summary: Setting up the Deployment

Finally, in summary, if you are a cloud customer and would like to develop an application using the Custom App Platform, please submit the following information to us via our Technical Support:

  • contact e-mail

  • list of users who need access to the repository

  • type of application

  • name of the application

  • global and stage-specific environment variables

Once we receive this information, we will take the necessary steps to set up the deployment. We will send you the link to the repository and the URLs for the stages as soon as possible. This will allow you to start developing right away.

7. Help

The Technical Support of the e-Spirit AG provides expert technical support covering any topic related to the FirstSpiritâ„¢ product. You can get and find more help concerning relevant topics in our community.

8. Disclaimer

This document is provided for information purposes only. e-Spirit may change the contents hereof without notice. This document is not warranted to be error-free, nor subject to any other warranties or conditions, whether expressed orally or implied in law, including implied warranties and conditions of merchantability or fitness for a particular purpose. e-Spirit specifically disclaims any liability with respect to this document and no contractual obligations are formed either directly or indirectly by this document. The technologies, functionality, services, and processes described herein are subject to change without notice.