Hosting

Custom-built Management Dashboard extensions and cloud functions can be hosted by Emporix. Use the central management space to set up, deploy, and monitor the external components.

Custom Management Dashboard extensions and cloud functions extend the Emporix platform with tailored logic and integrations. To deploy and run these solutions, you need a reliable hosting environment — Emporix provides exactly that with its built-in, scalable hosting functionality.

The Hosting view of the Management Dashboard provides a single touchpoint to manage anything related to the hosting of extensions and cloud functions. Instead of running your own cloud infrastructure, use this view to create a hosting project, define how the extension / cloud function is exposed, deploy new versions, and monitor usage and activity. Everything is handled within the Emporix environment, based on a standardized, secure hosting model.

Create a project

When you want to host any resource on the Emporix side, first you need to initialize a project as a one-time action.

1

Set up a project

Go to the Administration -> Hosting to start your project configuration. Choose the Initialize project action.

Hosting project initialization
Initialize a hosting project

The initialization takes a few minutes to complete. When the process is done, the project gets assigned with a unique Project ID. You can now start adding custom extensions and cloud functions to be hosted by Emporix.

Hosting initialized
Initialized empty hosting project

Managing extensions hosting

Extensions are custom add-ons that extend the Emporix Management Dashboard with new modules or perspectives. Use the Hosting view to deploy, manage, and monitor your extensions directly within the Emporix environment.

Prerequisites

Ensure your extension is built in a format compatible with the Emporix Management Dashboard. Extensions must follow the MD extension template that is based on the module federation concept to be accepted by the hosting environment. For more information, refer to the MD Module Template repository.

Host an extension

Follow these steps to host a custom extension.

1

Start a new extension hosting

In the Administration -> Hosting view, choose the New extension hosting.

2

Configure the hosting details

Provide the hosting details:

  • Hosting ID - Provide a unique identifier of the hosting, the ID becomes a part of the hosting URL.

  • Extension registration - Choose where to place the extension - it can be available either as an extension (module) or as a perspective in the Management Dashboard.

  • Display names - Enter the localized names for the extension to display in the UI.

  • Path URL - (For perspectives only) Define the URL path where the extension is available at; it starts with the /.

Extension hosting configuration
Extension hosting configuration

When done, choose Create to save the configuration.

3

Go to the hosting details

Open the card with the details of the created hosting.

Extension hosting details
Extension hosting details

The details view allows you to monitor the extensions usage metrics as well as to check the build details and upload new versions. The first time you come here, the view is empty.

Extension hosting details view
Extension hosting details view
4

Deploy the extension

Choose the New deployment to upload the extension. You have a few options for adding the extension:

  • GitHub - Deploy from a repository.

    • Provide the URL, token and relevant branch.

  • Upload - Attach and upload an archive with the extension.

    • Select zip or tar.gz from your device.

Confirm the extension upload with the Deploy action.

5

Build an extension

After the upload, the system triggers the extension build process. You can monitor the progress of the build steps.

If there is any technical obstacle, the build fails.

Extension deployment failed
Extension deployment failed

When everything is correct, the build ends successfully.

Successful extension deployment
Successful extension deployment

You can see the details such as the Deployment ID and timeline.

The successful build pushes the extension to the release state — you see that the version appears under the Releases section labelled as Current and Finalized.

Extension release
Extension release

The release results in pushing the extension to the Management Dashboard Extensions module or Perspectives — depending on your initial setup. You can start using the hosted extension straightaway.

Deployment lifecycle

To update your custom extension with new logic or provide technical fixes, deploy a new version.

Go to the selected extension hosting details and choose the New deployment. Then, upload the updated file either from a GitHub repository or directly from your device.

Each time you deploy a new version of an extension, a build is triggered. All the builds are visible in the Build History. Build details include deployment ID, build ID, status, and timeline.

Monitor extensions metrics

The Hosting view allows you to control the usage related to hosting extensions. The usage is a basis for the hosting costs calculation. You get insights into the following data:

  • Storage usage - Total storage volume (in MB) currently used by your hosted extensions.

  • Network bandwidth - Total data transfer volume (in MB) related to network usage.

Extensions metrics
Extensions metrics

Managing cloud functions hosting

Cloud functions are serverless pieces of custom logic that can be triggered by events, APIs, or other platform processes. Use the Hosting view to deploy, manage, and monitor your cloud functions directly within the Emporix environment.

Prerequisites

Prepare a cloud function that contains the business logic corresponding to your needs. To see the example of a cloud function structure, refer to the Extension and Cloud Function Hosting.

Host a cloud function

Follow these steps to host a custom cloud function.

1

Start a new cloud function hosting

In the Administration -> Hosting view, choose the New cloud function hosting.

2

Configure the hosting details

Enter the cloud function name and selectone of the available runtime environments.

3

Open the hosting details

Open the card with the created cloud function details. The view is empty when you enter it for the first time, but it allows you to monitor the cloud function hosting and upload the custom code.

Cloud function hosting details
Cloud function hosting details
4

(Optional) Set variables

You can define custom environment variables that are used in the cloud function to decode credentials data. Choose the Environment variables and provide key-value pairs.

Cloud function environment variables
Setting environment variables for a cloud function
5

Deploy a cloud function

Choose the New deployment option to add the cloud function code. You have a few options for adding the cloud function:

  • GitHub - Deploy from a repository.

    • Provide the URL, access token and relevant branch.

  • Upload - Attach and upload an archive with the cloud function.

    • Select zip or tar.gz from your device.

Confirm the cloud function upload with the Deploy option.

6

Build a cloud function

After the upload, the system triggers the cloud function build process. You can monitor the progress of the build steps in real-time. The successful build ends after a few minutes.

Successful cloud function deployment
Successful cloud function deployment

You can see the details such as the Deployment ID and timeline of the steps.

To add a new version of the cloud function, follow the same steps and deploy a new file. The build history shows all previous deployment details.

The successful build prepares the cloud function to be exposed in the Partner Library or used within custom integrations through an API.

Deployment lifecycle

To update your custom cloud function with new logic or provide technical fixes, deploy a new version.

Go to the selected hosting details and choose the New deployment, then upload the updated file either from a GitHub repository or directly from your device.

Each time you deploy a new version of a cloud function, a build is triggered. All the builds are visible in the Build History. Build details include deployment ID, build ID, status, and timeline.

Monitor cloud function resources usage

Overall hosting costs for cloud functions are calculated based on the usage metrics below. In the Hosting view, you see the following charts:

  • Requests - Number of requests triggered by the cloud function.

  • Request latency - Average latency time (in milliseconds).

Cloud function metrics
Cloud function metrics

Logs

The hosting details of a particular cloud function show the full logs of how and when it is being invoked in the system. You can monitor the operations with the cloud function and see their outcomes.

Cloud function logs
Cloud function logs

Last updated

Was this helpful?