- console.action/filter
- console.action/group
- console.action/provider
- console.action/resource-provider
- console.alert-action
- console.catalog/item-filter
- console.catalog/item-metadata
- console.catalog/item-provider
- console.catalog/item-type
- console.catalog/item-type-metadata
- console.cluster-overview/inventory-item
- console.cluster-overview/multiline-utilization-item
- console.cluster-overview/utilization-item
- console.context-provider
- console.dashboards/card
- console.dashboards/custom/overview/detail/item
- console.dashboards/overview/activity/resource
- console.dashboards/overview/health/operator
- console.dashboards/overview/health/prometheus
- console.dashboards/overview/health/resource
- console.dashboards/overview/health/url
- console.dashboards/overview/inventory/item
- console.dashboards/overview/inventory/item/group
- console.dashboards/overview/inventory/item/replacement
- console.dashboards/overview/prometheus/activity/resource
- console.dashboards/project/overview/item
- console.dashboards/tab
- console.file-upload
- console.flag
- console.flag/hookProvider
- console.flag/model
- console.global-config
- console.model-metadata
- console.navigation/href
- console.navigation/resource-cluster
- console.navigation/resource-ns
- console.navigation/section
- console.navigation/separator
- console.page/resource/details
- console.page/resource/list
- console.page/route
- console.page/route/standalone
- console.perspective
- console.project-overview/inventory-item
- console.project-overview/utilization-item
- console.pvc/alert
- console.pvc/create-prop
- console.pvc/delete
- console.pvc/status
- console.redux-reducer
- console.resource/create
- console.resource/details-item
- console.storage-class/provisioner
- console.storage-provider
- console.tab
- console.tab/horizontalNav
- console.telemetry/listener
- console.topology/adapter/build
- console.topology/adapter/network
- console.topology/adapter/pod
- console.topology/component/factory
- console.topology/create/connector
- console.topology/data/factory
- console.topology/decorator/provider
- console.topology/details/resource-alert
- console.topology/details/resource-link
- console.topology/details/tab
- console.topology/details/tab-section
- console.topology/display/filters
- console.topology/relationship/provider
- console.user-preference/group
- console.user-preference/item
- console.yaml-template
- dev-console.add/action
- dev-console.add/action-group
- dev-console.import/environment
- [DEPRECATED] console.dashboards/overview/detail/item
- [DEPRECATED] console.page/resource/tab
ActionFilter can be used to filter an action
Name | Value Type | Optional | Description |
---|---|---|---|
contextId |
string |
no | The context ID helps to narrow the scope of contributed actions to a particular area of the application. Ex - topology, helm |
filter |
CodeRef<(scope: any, action: Action) => boolean> |
no | A function which will filter actions based on some conditions. scope: The scope in which actions should be provided for. Note: hook may be required if we want to remove the ModifyCount action from a deployment with HPA |
ActionGroup contributes an action group that can also be a submenu
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | ID used to identify the action section. |
label |
string |
yes | The label to display in the UI. Required for submenus. |
submenu |
boolean |
yes | Whether this group should be displayed as submenu |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
ActionProvider contributes a hook that returns list of actions for specific context
Name | Value Type | Optional | Description |
---|---|---|---|
contextId |
string |
no | The context ID helps to narrow the scope of contributed actions to a particular area of the application. Ex - topology, helm |
provider |
CodeRef<ExtensionHook<Action[], any>> |
no | A react hook which returns actions for the given scope. If contextId = resource then the scope will always be a K8s resource object |
ResourceActionProvider contributes a hook that returns list of actions for specific resource model
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sKindVersionModel |
no | The model for which this provider provides actions for. |
provider |
CodeRef<ExtensionHook<Action[], any>> |
no | A react hook which returns actions for the given resource model |
This extension can be used to trigger a specific action when a specific Prometheus alert is observed by the Console based on its rule.name
value.
Name | Value Type | Optional | Description |
---|---|---|---|
alert |
string |
no | Alert name as defined by alert.rule.name property |
text |
string |
no | Action text |
action |
CodeRef<(alert: Alert, launchModal: LaunchModal) => void> |
no | Function to perform side effect |
This extension can be used for plugins to contribute a handler that can filter specific catalog items.
For example, the plugin can contribute a filter that filters helm charts from specific provider.
Name | Value Type | Optional | Description |
---|---|---|---|
catalogId |
string | string[] |
no | The unique identifier for the catalog this provider contributes to. |
type |
string |
no | Type ID for the catalog item type. |
filter |
CodeRef<(item: CatalogItem) => boolean> |
no | Filters items of a specific type. Value is a function that takes CatalogItem[] and returns a subset based on the filter criteria. |
This extension can be used to contribute a provider that adds extra metadata to specific catalog items.
Name | Value Type | Optional | Description |
---|---|---|---|
catalogId |
string | string[] |
no | The unique identifier for the catalog this provider contributes to. |
type |
string |
no | Type ID for the catalog item type. |
provider |
CodeRef<ExtensionHook<CatalogItemMetadataProviderFunction, CatalogExtensionHookOptions>> |
no | A hook which returns a function that will be used to provide metadata to catalog items of a specific type. |
This extension allows plugins to contribute a provider for a catalog item type. For example, a Helm Plugin can add a provider
that fetches all the Helm Charts. This extension can also be used by other plugins to add more items to a specific catalog item type.
Name | Value Type | Optional | Description |
---|---|---|---|
catalogId |
string | string[] |
no | The unique identifier for the catalog this provider contributes to. |
type |
string |
no | Type ID for the catalog item type. |
title |
string |
no | Title for the catalog item provider |
provider |
CodeRef<ExtensionHook<CatalogItem<any>[], CatalogExtensionHookOptions>> |
no | Fetch items and normalize it for the catalog. Value is a react effect hook. |
priority |
number |
yes | Priority for this provider. Defaults to 0. Higher priority providers may override catalog items provided by other providers. |
This extension allows plugins to contribute a new type of catalog item. For example, a Helm plugin can define
a new catalog item type as HelmCharts that it wants to contribute to the Developer Catalog.
Name | Value Type | Optional | Description |
---|---|---|---|
type |
string |
no | Type for the catalog item. |
title |
string |
no | Title for the catalog item. |
catalogDescription |
string | CodeRef<React.ReactNode> |
yes | Description for the type specific catalog. |
typeDescription |
string |
yes | Description for the catalog item type. |
filters |
CatalogItemAttribute[] |
yes | Custom filters specific to the catalog item. |
groupings |
CatalogItemAttribute[] |
yes | Custom groupings specific to the catalog item. |
This extension allows plugins to contribute extra metadata like custom filters or groupings for any catalog item type.
For example, a plugin can attach a custom filter for HelmCharts that can filter based on chart provider.
Name | Value Type | Optional | Description |
---|---|---|---|
type |
string |
no | Type for the catalog item. |
filters |
CatalogItemAttribute[] |
yes | Custom filters specific to the catalog item. |
groupings |
CatalogItemAttribute[] |
yes | Custom groupings specific to the catalog item. |
Adds a new inventory item into cluster overview page.
Name | Value Type | Optional | Description |
---|---|---|---|
component |
CodeRef<React.ComponentType<{}>> |
no | The component to be rendered. |
Adds a new cluster overview multiline utilization item.
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | The title of the utilization item. |
getUtilizationQueries |
CodeRef<GetMultilineQueries> |
no | Prometheus utilization query. |
humanize |
CodeRef<Humanize> |
no | Convert prometheus data to human readable form. |
TopConsumerPopovers |
CodeRef<React.ComponentType<TopConsumerPopoverProps>[]> |
yes | Shows Top consumer popover instead of plain value |
Adds a new cluster overview utilization item.
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | The title of the utilization item. |
getUtilizationQuery |
CodeRef<GetQuery> |
no | Prometheus utilization query. |
humanize |
CodeRef<Humanize> |
no | Convert prometheus data to human readable form. |
getTotalQuery |
CodeRef<GetQuery> |
yes | Prometheus total query. |
getRequestQuery |
CodeRef<GetQuery> |
yes | Prometheus request query. |
getLimitQuery |
CodeRef<GetQuery> |
yes | Prometheus limit query. |
TopConsumerPopover |
CodeRef<React.ComponentType<TopConsumerPopoverProps>> |
yes | Shows Top consumer popover instead of plain value |
Adds new React context provider to Console application root.
Name | Value Type | Optional | Description |
---|---|---|---|
provider |
CodeRef<Provider<T>> |
no | Context Provider component. |
useValueHook |
CodeRef<() => T> |
no | Hook for the Context value. |
Adds a new dashboard card.
Name | Value Type | Optional | Description |
---|---|---|---|
tab |
string |
no | The id of the dashboard tab to which the card will be added. |
position |
'LEFT' | 'RIGHT' | 'MAIN' |
no | The grid position of the card on the dashboard. |
component |
CodeRef<React.ComponentType<{}>> |
no | Dashboard card component. |
span |
OverviewCardSpan |
yes | Card's vertical span in the column. Ignored for small screens, defaults to 12. |
Adds an item to the Details card of Overview Dashboard
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | Details card title |
component |
CodeRef<React.ComponentType<{}>> |
no | The value, rendered by the OverviewDetailItem component |
valueClassName |
string |
yes | Value for a className |
isLoading |
CodeRef<() => boolean> |
yes | Function returning the loading state of the component |
error |
CodeRef<() => string> |
yes | Function returning errors to be displayed by the component |
Adds an activity to the Activity Card of Overview Dashboard where the triggering of activity is based on watching a K8s resource.
Name | Value Type | Optional | Description |
---|---|---|---|
k8sResource |
CodeRef<FirehoseResource & { isList: true; }> |
no | The utilization item to be replaced. |
component |
CodeRef<React.ComponentType<K8sActivityProps<T>>> |
no | The action component. |
isActivity |
CodeRef<(resource: T) => boolean> |
yes | Function which determines if the given resource represents the action. If not defined, every resource represents activity. |
getTimestamp |
CodeRef<(resource: T) => Date> |
yes | Timestamp for the given action, which will be used for ordering. |
Adds a health subsystem to the status card of Overview dashboard where the source of status is a K8s REST API.
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | Title of operators section in the popup. |
resources |
CodeRef<FirehoseResource[]> |
no | Kubernetes resources which will be fetched and passed to healthHandler . |
getOperatorsWithStatuses |
CodeRef<GetOperatorsWithStatuses<T>> |
yes | Resolves status for the operators. |
operatorRowLoader |
CodeRef<React.ComponentType<OperatorRowProps<T>>> |
yes | Loader for popup row component. |
viewAllLink |
string |
yes | Links to all resources page. If not provided then a list page of the first resource from resources prop is used. |
Adds a health subsystem to the status card of Overview dashboard where the source of status is Prometheus.
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | The display name of the subsystem. |
queries |
string[] |
no | The Prometheus queries |
healthHandler |
CodeRef<PrometheusHealthHandler> |
no | Resolve the subsystem's health. |
additionalResource |
CodeRef<FirehoseResource> |
yes | Additional resource which will be fetched and passed to healthHandler . |
popupComponent |
CodeRef<React.ComponentType<PrometheusHealthPopupProps>> |
yes | Loader for popup content. If defined, a health item will be represented as a link which opens popup with given content. |
popupTitle |
string |
yes | The title of the popover. |
popupClassname |
string |
yes | Optional classname for the popup top-level component. |
popupKeepOnOutsideClick |
boolean |
yes | If true, the popup will stay open when clicked outside of its boundary. Default: false |
disallowedControlPlaneTopology |
string[] |
yes | Control plane topology for which the subsystem should be hidden. |
Adds a health subsystem to the status card of Overview dashboard where the source of status is a K8s Resource.
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | The display name of the subsystem. |
resources |
CodeRef<WatchK8sResources<T>> |
no | Kubernetes resources which will be fetched and passed to healthHandler . |
healthHandler |
CodeRef<ResourceHealthHandler<T>> |
no | Resolve the subsystem's health. |
popupComponent |
CodeRef<WatchK8sResults<T>> |
yes | Loader for popup content. If defined, a health item will be represented as a link which opens popup with given content. |
popupTitle |
string |
yes | The title of the popover. |
Adds a health subsystem to the status card of Overview dashboard where the source of status is a K8s REST API.
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | The display name of the subsystem. |
url |
string |
no | The URL to fetch data from. It will be prefixed with base k8s URL. |
healthHandler |
CodeRef<URLHealthHandler<T, K8sResourceCommon | K8sResourceCommon[]>> |
no | Resolve the subsystem's health. |
additionalResource |
CodeRef<FirehoseResource> |
yes | Additional resource which will be fetched and passed to healthHandler . |
popupComponent |
CodeRef<React.ComponentType<{ healthResult?: T; healthResultError?: any; k8sResult?: FirehoseResult<R>; }>> |
yes | Loader for popup content. If defined, a health item will be represented as a link which opens popup with given content. |
popupTitle |
string |
yes | The title of the popover. |
Adds a resource tile to the overview inventory card.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
CodeRef<T> |
no | The model for resource which will be fetched. Used to get the model's label or abbr . |
mapper |
CodeRef<StatusGroupMapper<T, R>> |
yes | Function which maps various statuses to groups. |
additionalResources |
CodeRef<WatchK8sResources<R>> |
yes | Additional resources which will be fetched and passed to the mapper function. |
Adds an inventory status group.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | The id of the status group. |
icon |
CodeRef<React.ReactElement<any, string | React.JSXElementConstructor<any>>> |
no | React component representing the status group icon. |
Replaces an overview inventory card.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
CodeRef<T> |
no | The model for resource which will be fetched. Used to get the model's label or abbr . |
mapper |
CodeRef<StatusGroupMapper<T, R>> |
yes | Function which maps various statuses to groups. |
additionalResources |
CodeRef<WatchK8sResources<R>> |
yes | Additional resources which will be fetched and passed to the mapper function. |
Adds an activity to the Activity Card of Prometheus Overview Dashboard where the triggering of activity is based on watching a K8s resource.
Name | Value Type | Optional | Description |
---|---|---|---|
queries |
string[] |
no | Queries to watch |
component |
CodeRef<React.ComponentType<PrometheusActivityProps>> |
no | The action component. |
isActivity |
CodeRef<(results: PrometheusResponse[]) => boolean> |
yes | Function which determines if the given resource represents the action. If not defined, every resource represents activity. |
Adds a resource tile to the project overview inventory card.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
CodeRef<T> |
no | The model for resource which will be fetched. Used to get the model's label or abbr . |
mapper |
CodeRef<StatusGroupMapper<T, R>> |
yes | Function which maps various statuses to groups. |
additionalResources |
CodeRef<WatchK8sResources<R>> |
yes | Additional resources which will be fetched and passed to the mapper function. |
Adds a new dashboard tab, placed after the Overview tab.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique tab identifier, used as tab link href and when adding cards to this tab. |
navSection |
'home' | 'storage' |
no | NavSection to which the tab belongs to |
title |
string |
no | The title of the tab. |
This extension can be used to provide a handler for the file drop action on specific file extensions.
Name | Value Type | Optional | Description |
---|---|---|---|
fileExtensions |
string[] |
no | Supported file extensions. |
handler |
CodeRef<FileUploadHandler> |
no | Function which handles the file drop action. |
Gives full control over Console feature flags.
Name | Value Type | Optional | Description |
---|---|---|---|
handler |
CodeRef<FeatureFlagHandler> |
no | Used to set/unset arbitrary feature flags. |
Gives full control over Console feature flags with hook handlers.
Name | Value Type | Optional | Description |
---|---|---|---|
handler |
CodeRef<FeatureFlagHandler> |
no | Used to set/unset arbitrary feature flags. |
Adds new Console feature flag driven by the presence of a CRD on the cluster.
Name | Value Type | Optional | Description |
---|---|---|---|
flag |
string |
no | The name of the flag to set once the CRD is detected. |
model |
ExtensionK8sModel |
no | The model which refers to a CustomResourceDefinition . |
This extension identifies a resource used to manage the configuration of the cluster.
A link to the resource will be added to the Administration - Cluster Settings - Configuration page.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | Unique identifier for the cluster config resource instance. |
name |
string |
no | The name of the cluster config resource instance. |
model |
ExtensionK8sModel |
no | The model which refers to a cluster config resource. |
namespace |
string |
no | The namespace of the cluster config resource instance. |
Customize the display of models by overriding values retrieved and generated through API discovery.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sGroupModel |
no | The model to customize. May specify only a group, or optional version and kind. |
badge |
ModelBadge |
yes | Whether to consider this model reference as tech preview or dev preview. |
color |
string |
yes | The color to associate to this model. |
label |
string |
yes | Override the label. Requires kind be provided. |
labelPlural |
string |
yes | Override the plural label. Requires kind be provided. |
abbr |
string |
yes | Customize the abbreviation. Defaults to All uppercase chars in the kind up to 4 characters long. Requires kind be provided. |
This extension can be used to contribute a navigation item that points to a specific link in the UI.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique identifier for this item. |
name |
string |
no | The name of this item. |
href |
string |
no | The link href value. |
perspective |
string |
yes | The perspective ID to which this item belongs to. If not specified, contributes to the default perspective. |
section |
string |
yes | Navigation section to which this item belongs to. If not specified, render this item as a top level link. |
dataAttributes |
{ [key: string]: string; } |
yes | Adds data attributes to the DOM. |
startsWith |
string[] |
yes | Mark this item as active when the URL starts with one of these paths. |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
namespaced |
boolean |
yes | if true, adds /ns/active-namespace to the end |
prefixNamespaced |
boolean |
yes | if true, adds /k8s/ns/active-namespace to the begining |
This extension can be used to contribute a navigation item that points to a cluster resource details page.
The K8s model of that resource can be used to define the navigation item.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique identifier for this item. |
model |
ExtensionK8sModel |
no | The model for which this nav item links to. |
perspective |
string |
yes | The perspective ID to which this item belongs to. If not specified, contributes to the default perspective. |
section |
string |
yes | Navigation section to which this item belongs to. If not specified, render this item as a top level link. |
dataAttributes |
{ [key: string]: string; } |
yes | Adds data attributes to the DOM. |
startsWith |
string[] |
yes | Mark this item as active when the URL starts with one of these paths. |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
name |
string |
yes | Overrides the default name. If not supplied the name of the link will equal the plural value of the model. |
This extension can be used to contribute a navigation item that points to a namespaced resource details page.
The K8s model of that resource can be used to define the navigation item.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique identifier for this item. |
model |
ExtensionK8sModel |
no | The model for which this nav item links to. |
perspective |
string |
yes | The perspective ID to which this item belongs to. If not specified, contributes to the default perspective. |
section |
string |
yes | Navigation section to which this item belongs to. If not specified, render this item as a top level link. |
dataAttributes |
{ [key: string]: string; } |
yes | Adds data attributes to the DOM. |
startsWith |
string[] |
yes | Mark this item as active when the URL starts with one of these paths. |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
name |
string |
yes | Overrides the default name. If not supplied the name of the link will equal the plural value of the model. |
This extension can be used to define a new section of navigation items in the navigation tab.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique identifier for this item. |
perspective |
string |
yes | The perspective ID to which this item belongs to. If not specified, contributes to the default perspective. |
dataAttributes |
{ [key: string]: string; } |
yes | Adds data attributes to the DOM. |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
name |
string |
yes | Name of this section. If not supplied, only a separator will be shown above the section. |
This extension can be used to add a separator between navigation items in the navigation.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique identifier for this item. |
perspective |
string |
yes | The perspective ID to which this item belongs to. If not specified, contributes to the default perspective. |
section |
string |
yes | Navigation section to which this item belongs to. If not specified, render this item as a top level link. |
dataAttributes |
{ [key: string]: string; } |
yes | Adds data attributes to the DOM. |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
Adds new resource details page to Console router.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sGroupKindModel |
no | The model for which this resource page links to. |
component |
CodeRef<React.ComponentType<{ namespace: string; model: ExtensionK8sModel; }>> |
no | The component to be rendered when the route matches. |
Adds new resource list page to Console router.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sGroupKindModel |
no | The model for which this resource page links to. |
component |
CodeRef<React.ComponentType<{ namespace: string; model: ExtensionK8sModel; }>> |
no | The component to be rendered when the route matches. |
Adds new page to Console router.
Under the hood we use React Router.
See https://v5.reactrouter.com/
Note: This extension should not be used for resource list and details page. For adding both list and details page for a resource use the
console.navigation/resource-ns extension, instead, which renders elementary fields.
Name | Value Type | Optional | Description |
---|---|---|---|
component |
CodeRef<React.ComponentType<{}>> |
no | The component to be rendered when the route matches. |
path |
string | string[] |
no | Valid URL path or array of paths that path-to-regexp@^1.7.0 understands. |
perspective |
string |
yes | The perspective to which this page belongs to. If not specified, contributes to all perspectives. |
exact |
boolean |
yes | When true, will only match if the path matches the location.pathname exactly. |
Adds new standalone page (rendered outside the common page layout) to Console router.
Under the hood we use React Router.
See https://v5.reactrouter.com/
Name | Value Type | Optional | Description |
---|---|---|---|
component |
CodeRef<React.ComponentType<{}>> |
no | The component to be rendered when the route matches. |
path |
string | string[] |
no | Valid URL path or array of paths that path-to-regexp@^1.7.0 understands. |
exact |
boolean |
yes | When true, will only match if the path matches the location.pathname exactly. |
This extension contributes a new perspective to the console which enables customization of the navigation menu.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | The perspective identifier. |
name |
string |
no | The perspective display name. |
icon |
CodeRef<LazyComponent> |
no | The perspective display icon. |
landingPageURL |
CodeRef<(flags: { [key: string]: boolean; }, isFirstVisit: boolean) => string> |
no | The function to get perspective landing page URL. |
importRedirectURL |
CodeRef<(namespace: string) => string> |
no | The function to get redirect URL for import flow. |
default |
boolean |
yes | Whether the perspective is the default. There can only be one default. |
defaultPins |
ExtensionK8sModel[] |
yes | Default pinned resources on the nav |
usePerspectiveDetection |
CodeRef<() => [boolean, boolean]> |
yes | The hook to detect default perspective |
Adds a new inventory item into project overview page.
Name | Value Type | Optional | Description |
---|---|---|---|
component |
CodeRef<React.ComponentType<{ projectName: string; }>> |
no | The component to be rendered. |
Adds a new project overview utilization item.
Name | Value Type | Optional | Description |
---|---|---|---|
title |
string |
no | The title of the utilization item. |
getUtilizationQuery |
CodeRef<GetProjectQuery> |
no | Prometheus utilization query. |
humanize |
CodeRef<Humanize> |
no | Convert prometheus data to human readable form. |
getTotalQuery |
CodeRef<GetProjectQuery> |
yes | Prometheus total query. |
getRequestQuery |
CodeRef<GetProjectQuery> |
yes | Prometheus request query. |
getLimitQuery |
CodeRef<GetProjectQuery> |
yes | Prometheus limit query. |
TopConsumerPopover |
CodeRef<React.ComponentType<TopConsumerPopoverProps>> |
yes | Shows Top consumer popover instead of plain value |
This extension can be used to contribute custom alerts on the PVC details page.
Name | Value Type | Optional | Description |
---|---|---|---|
alert |
CodeRef<React.ComponentType<{ pvc: K8sResourceCommon; }>> |
no | The alert component. |
This extension can be used to specify additional properties that will be used when creating PVC resources on the PVC list page.
Name | Value Type | Optional | Description |
---|---|---|---|
label |
string |
no | Label for the create prop action. |
path |
string |
no | Path for the create prop action. |
This extension allows hooking into deleting PVC resources. It can provide an alert with additional information and custom PVC delete logic.
Name | Value Type | Optional | Description |
---|---|---|---|
predicate |
CodeRef<(pvc: K8sResourceCommon) => boolean> |
no | Predicate that tells whether to use the extension or not. |
onPVCKill |
CodeRef<(pvc: K8sResourceCommon) => Promise<void>> |
no | Method for the PVC delete operation. |
alert |
CodeRef<React.ComponentType<{ pvc: K8sResourceCommon; }>> |
no | Alert component to show additional information. |
This extension can be used to contribute an additional status component for PVC resources on the cluster dashboard page.
Name | Value Type | Optional | Description |
---|---|---|---|
priority |
number |
no | Priority for the status component. Bigger value means higher priority. |
status |
CodeRef<React.ComponentType<{ pvc: K8sResourceCommon; }>> |
no | The status component. |
predicate |
CodeRef<(pvc: K8sResourceCommon) => boolean> |
no | Predicate that tells whether to render the status component or not. |
Adds new reducer to Console Redux store which operates on plugins.<scope>
substate.
Name | Value Type | Optional | Description |
---|---|---|---|
scope |
string |
no | The key to represent the reducer-managed substate within the Redux state object. |
reducer |
CodeRef<Reducer<any, AnyAction>> |
no | The reducer function, operating on the reducer-managed substate. |
This extension allows plugins to provide a custom component (ie wizard or form) for specific resources,
which will be rendered, when users try to create a new resource instance.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sModel |
no | The model for which this create resource page will be rendered. |
component |
CodeRef<React.ComponentType<CreateResourceComponentProps>> |
no | The component to be rendered when the model matches |
Adds a new details item to the default resource summary on the details page.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sModel |
no | The subject resource's API group, version, and kind. |
id |
string |
no | A unique identifier. |
column |
DetailsItemColumn |
no | Determines if the item will appear in the 'left' or 'right' column of the resource summary on the details page. Default: 'right' |
title |
string |
no | The details item title. |
path |
string |
yes | An optional, fully-qualified path to a resource property to used as the details item value. Only primitive type values can be rendered directly. Use the component property to handle other data types. |
component |
CodeRef<React.ComponentType<DetailsItemComponentProps<K8sResourceCommon, any>>> |
yes | An optional React component that will render the details item value. |
sortWeight |
number |
yes | An optional sort weight, relative to all other details items in the same column. Represented by any valid JavaScript Number. Items in each column are sorted independently, lowest to highest. Items without sort weights are sorted after items with sort weights. |
Adds a new storage class provisioner as an option during storage class creation.
Name | Value Type | Optional | Description |
---|---|---|---|
CSI |
ProvisionerDetails |
yes | Container Storage Interface provisioner type |
OTHERS |
ProvisionerDetails |
yes | Other provisioner type |
This extension can be used to contribute a new storage provider to select,
when attaching storage and a provider specific component.
Name | Value Type | Optional | Description |
---|---|---|---|
name |
string |
no | Displayed name of the provider. |
Component |
CodeRef<React.ComponentType<{}>> |
no | Provider specific component to render. |
Adds a tab to a horizontal nav matching the contextId
.
Name | Value Type | Optional | Description |
---|---|---|---|
contextId |
string |
no | Context ID assigned to the horizontal nav in which the tab will be injected. Possible values: - dev-console-observe |
name |
string |
no | The display label of the tab |
href |
string |
no | The href appended to the existing URL |
component |
CodeRef<React.ComponentType<PageComponentProps<K8sResourceCommon>>> |
no | Tab content component. |
This extension can be used to add a tab on the resource details page.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sKindVersionModel |
no | The model for which this provider show tab. |
page |
{ name: string; href: string; } |
no | The page to be show in horizontal tab. It takes tab name as name and href of the tab |
component |
CodeRef<React.ComponentType<PageComponentProps<K8sResourceCommon>>> |
no | The component to be rendered when the route matches. |
This component can be used to register a listener function receiving telemetry events.
These events include user identification, page navigation, and other application specific events.
The listener may use this data for reporting and analytics purposes.
Name | Value Type | Optional | Description |
---|---|---|---|
listener |
CodeRef<TelemetryEventListener> |
no | Listen for telemetry events |
BuildAdapter contributes an adapter to adapt element to data that can be used by Build component
Name | Value Type | Optional | Description |
---|---|---|---|
adapt |
CodeRef<(element: GraphElement) => AdapterDataType<BuildConfigData> | undefined> |
no | adapter to adapt element to data that can be used by Build component. |
NetworkAdpater contributes an adapter to adapt element to data that can be used by Networking component
Name | Value Type | Optional | Description |
---|---|---|---|
adapt |
CodeRef<(element: GraphElement) => NetworkAdapterType | undefined> |
no | adapter to adapt element to data that can be used by Networking component. |
PodAdapter contributes an adapter to adapt element to data that can be used by Pod component
Name | Value Type | Optional | Description |
---|---|---|---|
adapt |
CodeRef<(element: GraphElement) => AdapterDataType<PodsAdapterDataType> | undefined> |
no | adapter to adapt element to data that can be used by Pod component. |
Getter for a ViewComponentFactory
Name | Value Type | Optional | Description |
---|---|---|---|
getFactory |
CodeRef<ViewComponentFactory> |
no | Getter for a ViewComponentFactory |
Getter for the create connector function
Name | Value Type | Optional | Description |
---|---|---|---|
getCreateConnector |
CodeRef<CreateConnectionGetter> |
no | Getter for the create connector function |
Topology Data Model Factory Extension
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | Unique ID for the factory. |
priority |
number |
no | Priority for the factory |
resources |
WatchK8sResourcesGeneric |
yes | Resources to be fetched from useK8sWatchResources hook. |
workloadKeys |
string[] |
yes | Keys in resources containing workloads. |
getDataModel |
CodeRef<TopologyDataModelGetter> |
yes | Getter for the data model factory |
isResourceDepicted |
CodeRef<TopologyDataModelDepicted> |
yes | Getter for function to determine if a resource is depicted by this model factory |
getDataModelReconciler |
CodeRef<TopologyDataModelReconciler> |
yes | Getter for function to reconcile data model after all extensions' models have loaded |
Topology Decorator Provider Extension
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | id for topology decorator specific to the extension |
priority |
number |
no | priority for topology decorator specific to the extension |
quadrant |
TopologyQuadrant |
no | quadrant for topology decorator specific to the extension |
decorator |
CodeRef<TopologyDecoratorGetter> |
no | decorator specific to the extension |
DetailsResourceAlert contributes an alert for specific topology context or graph element.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | The ID of this alert. Used to save state if the alert shouldn't be shown after dismissed. |
contentProvider |
CodeRef<(element: GraphElement) => DetailsResourceAlertContent | null> |
no | Hook to return the contents of the Alert. |
DetailsResourceLink contributes a link for specific topology context or graph element.
Name | Value Type | Optional | Description |
---|---|---|---|
link |
CodeRef<(element: GraphElement) => React.Component | undefined> |
no | Return the resource link if provided, otherwise undefined. Use ResourceIcon and ResourceLink for styles. |
priority |
number |
yes | A higher priority factory will get the first chance to create the link. |
DetailsTab contributes a tab for the topology details panel.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique identifier for this details tab. |
label |
string |
no | The tab label to display in the UI. |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
DetailsTabSection contributes a section for a specific tab in topology details panel.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | A unique identifier for this details tab section. |
tab |
string |
no | The parent tab ID that this section should contribute to. |
provider |
CodeRef<DetailsTabSectionExtensionHook> |
no | A hook that returns a component or null/undefined that will be rendered in the topology sidebar. SDK component: <Section title={}>... padded area |
section |
CodeRef<(element: GraphElement, renderNull?: () => null) => React.Component | undefined> |
no | @deprecated Fallback if no provider is defined. renderNull is a no-op already. |
insertBefore |
string | string[] |
yes | Insert this item before the item referenced here. For arrays, the first one found in order is used. |
insertAfter |
string | string[] |
yes | Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence. |
Topology Display Filters Extension
Name | Value Type | Optional | Description |
---|---|---|---|
getTopologyFilters |
CodeRef<() => TopologyDisplayOption[]> |
no | Getter for topology filters specific to the extension |
applyDisplayOptions |
CodeRef<TopologyApplyDisplayOptions> |
no | Function to apply filters to the model |
Topology relationship provider connector extension
Name | Value Type | Optional | Description |
---|---|---|---|
provides |
CodeRef<RelationshipProviderProvides> |
no | use to determine if a connection can be created between the source and target node |
tooltip |
string |
no | tooltip to show when connector operation is hovering over the drop target ex: "Create a Visual Connector" |
create |
CodeRef<RelationshipProviderCreate> |
no | callback to execute when connector is drop over target node to create a connection |
priority |
number |
no | priority for relationship, higher will be preferred in case of multiple |
This extension can be used to add a group on the console user-preferences page.
It will appear as a vertical tab option on the console user-preferences page.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | ID used to identify the user preference group. |
label |
string |
no | The label of the user preference group. |
insertBefore |
string |
yes | ID of user preference group before which this group should be placed. |
insertAfter |
string |
yes | ID of user preference group after which this group should be placed. |
This extension can be used to add an item to the user preferences group on the console user preferences page.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | ID used to identify the user preference item and referenced in insertAfter and insertBefore to define the item order. |
groupId |
string |
no | IDs used to identify the user preference groups the item would belong to. |
label |
string |
no | The label of the user preference. |
description |
string |
no | The description of the user preference. |
field |
UserPreferenceField |
no | The input field options used to render the values to set the user preference. |
insertBefore |
string |
yes | ID of user preference item before which this item should be placed. |
insertAfter |
string |
yes | ID of user preference item after which this item should be placed. |
YAML templates for editing resources via the yaml editor.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sModel |
no | Model associated with the template. |
template |
CodeRef<string> |
no | The YAML template. |
name |
string |
no | The name of the template. Use the name default to mark this as the default template. |
This extension allows plugins to contribute an add action item to the add page of developer perspective.
For example, a Serverless plugin can add a new action item for adding serverless functions
to the add page of developer console.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | ID used to identify the action. |
label |
string |
no | The label of the action |
description |
string |
no | The description of the action. |
groupId |
string |
yes | IDs used to identify the action groups the action would belong to. |
href |
string |
yes | The href to navigate to. |
callback |
CodeRef<(props: Record<string, any>) => void> |
yes | A callback that performs an action on click |
icon |
CodeRef<React.ReactNode> |
yes | The perspective display icon. |
accessReview |
AccessReviewResourceAttributes[] |
yes | Optional access review to control visibility / enablement of the action. |
This extension allows plugins to contibute a group in the add page of developer console.
Groups can be referenced by actions, which will be grouped together in the add action page based on their extension definition.
For example, a Serverless plugin can contribute a Serverless group and together with multiple add actions.
Name | Value Type | Optional | Description |
---|---|---|---|
id |
string |
no | ID used to identify the action group. |
name |
string |
no | The title of the action group |
insertBefore |
string |
yes | ID of action group before which this group should be placed |
insertAfter |
string |
yes | ID of action group after which this group should be placed |
icon |
string | CodeRef<React.ReactNode> |
yes | The perspective display icon. |
This extension can be used to specify extra build environment variable fields under the builder image selector
in the dev console git import form. When set, the fields will override environment variables
of the same name in the build section.
Name | Value Type | Optional | Description |
---|---|---|---|
imageStreamName |
string |
no | Name of the image stream to provide custom environment variables for |
imageStreamTags |
string[] |
no | List of supported image stream tags |
environments |
ImageEnvironment[] |
no | List of environment variables |
@deprecated use CustomOverviewDetailItem type instead
Name | Value Type | Optional | Description |
---|---|---|---|
component |
CodeRef<React.ComponentType<{}>> |
no | The value, based on the DetailItem component |
@deprecated - Use console.tab/horizontalNav
instead
Adds new resource tab page to Console router.
Name | Value Type | Optional | Description |
---|---|---|---|
model |
ExtensionK8sGroupKindModel |
no | The model for which this resource page links to. |
component |
CodeRef<React.ComponentType<{}>> |
no | The component to be rendered when the route matches. |
name |
string |
no | The name of the tab. |
href |
string |
yes | The optional href for the tab link. If not provided, the first path is used. |
exact |
boolean |
yes | When true, will only match if the path matches the location.pathname exactly. |