Skip to content

Application Lifecycle in DevOps Cockpit

This chapter explains the end to end journey of an application within DevOps Cockpit.

The following terms are used to explain the Application Lifecycle and are used throughout the documentation.

Terminology Description
Deployment Deployment is where you bring (deploy) your application to your hosting environment. An application must always be hosted either within the Cloud Foundry or your own environment (self-hosted), before starting the Application Lifecycle.
Registration Insights Hub becomes aware of the details of your app when you register it with Insights Hub. After you register an app within Insights Hub, the app becomes accessible using the specific URL scheme.
- For example, if your app is running at a URL https://turbinemonitor.io, and you register your app with Insights Hub in the environment dade1 with the name monitor, then after registration, the users in environment dade1 can access this app with the URL https://dade1-monitor-dade1.eu1.mindsphere.io. Thereafter, you can assign application roles to users and they will be able to see and use this app starting from the Launchpad.
Assignment Assignment describes the first step in the process of making an app available for productive usage. After the development and testing of the app is completed, the Developer Admin can set the app to "Ready for Production" state. As soon as it is set to "Ready for Production", it will be auto-assigned to your Production Environment. It is also possible to assign an app to the Production Environment of a different Insights Hub customer. This allows you to split responsibilities between a party that only develops and someone who takes over operation duties in production.
Provisioning Provisioning an app to an Environment means that the application can then be used within this environment. Application roles can be assigned to users in this environment and the app also gains access to data stored.
- For example, you have created an application, and it's current state is "In Production". You can then choose to give ("provision") this application to several other companies who are using Insights Hub.
Application State The Application State is designed to give you a quick overview about the current state of a specific application within the lifecycle.

Application States

The following "Application States" are used to describe the steps of the application lifecycle. These states enable easy understanding about your applications within your environment.

Application State Description
"In Development" - The Application Object is created.
- All relevant details are configured.
"Development Complete" - The development and testing of this application is completed.
- All binaries needed for productive usage are uploaded (Only if you use the Insights Hub hosting Environment).
- Waiting for approval of a Developer Admin.
"Production Ready" - The application is now ready for productive use.
- Deployment of the Application to the productive Cloud Foundry Org can now be executed.
"In Production" - You can use your application within your own production environment.
- You can provision your application to others.
"Archive" - This application has reached its end of life and can no longer be used.

Application Lifecycle Workflow

In addition to understanding the application states and the specific steps that occur within each state, we want to bring the associated activities of the application lifecycle workflow together.

We also want to help you understand how everything fits together.

The following flow diagram contains information about:

  • Actions in association to respective roles which can perform these actions.
  • Environments and related technical interactions that apply within the different steps.
  • Mandatory and optional steps that can be taken.

This following chart illustrates, how different environments (development, test and production), user roles (developer, developer admin and operator admin) and user actions (these are your interactions with DevOps Cockpit) are related to technical interactions (Application State, Registration, Deployment, Provisioning and Assignment) throughout the Application Lifecycle.

application-lifecycle-overview

In the following diagram, the complete Application Lifecycle and respective actions are illustrated. Additionally, you can see how roles and the actions that are performed in these roles occur within the Lifecycle.

application-interaction

The following table defines as well as explains the outcomes of specific user interactions.

User Interaction Step User Interaction Explanation User Interface Application State
user-interaction-a Develop your application The integration of Full Code and Low Code Applications (Created with Mendix) is supported. Certain SDK's, Web Components, Learning Paths and other important help in the following links will get you going faster:
- For more information about resources, see Resources.
- For more information about Mendix Learning Path, see Learning Paths.
- For more information about How Tos-developer documentation, see How Tos.
In Development
user-interaction-b Deploy app Before you can actually create an application object in DevOps Cockpit, your app has to be hosted and reachable. You can either use the Cloud Foundry or also host the application in your own environment.
Note:
If you choose to self-host your application, it has to meet certain criteria. For more information about self-hosted application, see Self-Hosted Application.
While using Cloud Foundry, you ensure that your app is deployed to your Cloud Foundry development Org. Indicated by number 1.
flow-interaction-1
For more information about Cloud Foundry, see Running a Cloud Foundry-Hosted Application.
In Development
user-interaction-c Create App in DevOps Cockpit Create a new application object in DevOps Cockpit. Within this step, you can perform all kinds of configurations, create new roles and configure certain authentication options which you can use in your code. create-app-in-devops In Development
user-interaction-d Register app in Development Environment After a successful creation of your application object, you can go ahead and register your application in your Development Environment.
- For example, if your app is running at a URL https://turbinemonitor.io, and you register your app with Insights Hub in the environment dade1 with the name monitor, then after registration, the users in environment dade1 can access this app with the URL https://dade1-monitor-dade1.eu1.mindsphere.io. From that moment on, you are able to assign application roles to users and they will be able to see and use this app starting from the Launchpad.
flow-interaction-2
register-app-in-dev-env In Development
user-interaction-e Provision to Test Once registered, you have the possibility to directly provision your application to your Test Environments which allows you to use and test them there.
flow-interaction-3
provision-to-test In Development
user-interaction-f Prepare Release If you are using Cloud Foundry, you are required to upload the binaries from your application. Insights Hub is going to perform certain virus checks before the app can be deployed to your production hosting environment.
Once the upload is successful, your application state will change to "Development completed"
prepare-for-release In Development
user-interaction-g Set to "Ready for Production" This user action leads to an automatic assignment of your application to your Production Environment. After this action is successful, the state of this application will then be set to "Production Ready".
flow-interaction-4
set-to-ready-production Development complete
user-interaction-h Assign to external Operator Insights Hub supports a scenario where you can act as a development party, while an external account is taking over production operations for you. The user interaction "Assign to external Operator" allows you to give someone else your app to take over production operations.
flow-interaction-4-external
assign-to-operator Production Ready
user-interaction-i Deploy App (Prod) You can utilize Cloud Foundry to deploy your application to the Cloud Foundry production Org.
flow-interaction-5
For more information about Cloud Foundry, see Running a Cloud Foundry-Hosted Application.
Production Ready
user-interaction-j Register App The final step which leads to the application is available in your Production Environment and to Register the app on your Production Environment.
flow-interaction-6
register-app-on-prod In Production
user-interaction-k Provision to Customer As the application has reached the "In Production" state, you are able to provision it to other Insights Hub subscribers.
flow-interaction-7
provision-to-cust-flow In Production
user-interaction-l Archive If an application is reached to its end of life, then set to "Archive" state. The application is deregistered and deprovisioned from all the environments. Archive

Last update: January 22, 2024