Extensibility ​
Overview ​
With Busola's extensibility feature, you can create a dedicated user interface (UI) page for your CustomResourceDefinition (CRD). It enables you to add navigation nodes, on cluster or namespace level, and to configure your UI display, for example, a resource list page, and details pages. You can also create and edit forms. To create a UI component, you need a ConfigMap.
You can also leverage Busola's custom extension feature to design entirely custom user interfaces tailored to your specific needs.
Create a ConfigMap for Your UI ​
To create a ConfigMap with your CRD's UI configuration, you can either use the Extensions feature or do it manually.
TIP
For more information about extensibility in Busola, see the extensibility folder in the Busola repository.
Create a CRD ConfigMap Using the Extensions Feature ​
NOTE
Using the Extensions feature, you can't change the namespace where the UI component is created or edit the ConfigMap's name. If you want to create the ConfigMap in a different namespace, create the ConfigMap manually.
In Kyma dashboard, in the cluster view, choose Configuration > Extensions and click Create.
Complete the following fields:
- Resource - choose your module's resource from the list of resources existing in the cluster
- Name - enter the UI component name displayed in the Kyma dashboard navigation
- Category - enter the UI component category displayed in the Kyma dashboard navigation
The CustomResourceDefinition (CRD) of the chosen resource predefines the details that appear in the following sections:
- Form Fields - defines fields visible in the edit and create pages.
- List Columns - defines columns visible on the UI component's entry page, also known as the list page. The Name and Created columns are added by default.
- Details Summary - defines fields visible in the body of the details page of specific CRs. You can access the details page by clicking on a specific resource on the list page.
You can delete those parameters that you find irrelevant to your use case.
NOTE
Not all of the predefined CRD parameters are used during the ConfigMap creation.
Click Create.
Create a CRD ConfigMap Manually ​
In Kyma dashboard, choose a namespace.
Go to Configuration > Config Maps and click Create.
Enter the ConfigMap's Name.
In the Labels section, enter two labels:
busola.io/extensionas the key andresourceas the valuebusola.io/extension-versionas the key and'0.5'as the value
Under Data, add the following required fields for your module's UI configuration:
yamlgeneral: resource: kind: version: group: name: category: scope: urlPath:Click Create.
TIP
To see an example configuration of the Busola extensibility feature, check the Pizza example.