mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 12:46:18 +01:00
1518 lines
48 KiB
Plaintext
1518 lines
48 KiB
Plaintext
// Module is included in the following assemblies:
|
|
//
|
|
// * web_console/dynamic-plugin/dynamic-plugins-reference.adoc
|
|
|
|
:_mod-docs-content-type: CONCEPT
|
|
[id="dynamic-plugin-sdk-extensions_{context}"]
|
|
= Dynamic plugin extension types
|
|
|
|
|
|
== `console.action/filter`
|
|
|
|
`ActionFilter` can be used to filter an action.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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. Examples include `topology` and `helm`.
|
|
|
|
|`filter` |`CodeRef<(scope: any, action: Action) => boolean>` |no |A
|
|
function that will filter actions based on some conditions.
|
|
|
|
`scope`: The scope
|
|
in which actions should be provided for. A hook might be required if you want to
|
|
remove the `ModifyCount` action from a deployment with a horizontal pod
|
|
autoscaler (HPA).
|
|
|===
|
|
|
|
|
|
== `console.action/group`
|
|
|
|
`ActionGroup` contributes an action group that can also be a submenu.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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. The `insertBefore` value takes precedence.
|
|
|===
|
|
|
|
|
|
== `console.action/provider`
|
|
|
|
`ActionProvider` contributes a hook that returns list of actions for specific context.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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. Examples include `topology` and `helm`.
|
|
|
|
|`provider` |`CodeRef<ExtensionHook<Action[], any>>` |no |A React hook
|
|
that returns actions for the given scope. If `contextId` = `resource`, then
|
|
the scope will always be a Kubernetes resource object.
|
|
|===
|
|
|
|
|
|
== `console.action/resource-provider`
|
|
|
|
`ResourceActionProvider` contributes a hook that returns list of actions for specific resource model.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `console.alert-action`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`alert` |`string` |no | Alert name as defined by `alert.rule.name` property
|
|
|
|
|`text` |`string` |no |
|
|
|
|
|`action` |`CodeRef<(alert: any) => void>` |no | Function to perform side effect |
|
|
|===
|
|
|
|
|
|
== `console.catalog/item-filter`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.catalog/item-metadata`
|
|
|
|
This extension can be used to contribute a provider that adds extra metadata to specific catalog items.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.catalog/item-provider`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.catalog/item-type`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.catalog/item-type-metadata`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.cluster-overview/inventory-item`
|
|
|
|
Adds a new inventory item into cluster overview page.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`component` |`CodeRef<React.ComponentType<{}>>` |no |The component to
|
|
be rendered.
|
|
|===
|
|
|
|
|
|
== `console.cluster-overview/multiline-utilization-item`
|
|
|
|
Adds a new cluster overview multi-line utilization item.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.cluster-overview/utilization-item`
|
|
|
|
Adds a new cluster overview utilization item.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.context-provider`
|
|
|
|
Adds a new React context provider to the web console application root.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`provider` |`CodeRef<Provider<T>>` |no |Context Provider component.
|
|
|`useValueHook` |`CodeRef<() => T>` |no |Hook for the Context value.
|
|
|===
|
|
|
|
|
|
== `console.create-project-modal`
|
|
|
|
This extension can be used to pass a component that will be rendered in place of the standard create project modal.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`component` |`CodeRef<ModalComponent<CreateProjectModalProps>>` |no |A component to render in place of the create project modal.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/card`
|
|
|
|
Adds a new dashboard card.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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`.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/custom/overview/detail/item`
|
|
|
|
Adds an item to the Details card of Overview Dashboard.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/activity/resource`
|
|
|
|
Adds an activity to the Activity Card of Overview Dashboard where the triggering of activity is based on watching a Kubernetes resource.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 |Time stamp for
|
|
the given action, which will be used for ordering.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/health/operator`
|
|
|
|
Adds a health subsystem to the status card of the *Overview* dashboard, where the source of status is a Kubernetes REST API.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`title` |`string` |no |Title of Operators section in the pop-up menu.
|
|
|
|
|`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
|
|
pop-up 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.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/health/prometheus`
|
|
|
|
Adds a health subsystem to the status card of Overview dashboard where the source of status is Prometheus.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 pop-up menu content. If defined, a health item is represented as a
|
|
link, which opens a pop-up menu with the given content.
|
|
|
|
|`popupTitle` |`string` |yes |The title of the popover.
|
|
|
|
|`disallowedControlPlaneTopology` |`string[]` |yes |Control plane
|
|
topology for which the subsystem should be hidden.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/health/resource`
|
|
|
|
Adds a health subsystem to the status card of Overview dashboard where the source of status is a Kubernetes Resource.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`title` |`string` |no |The display name of the subsystem.
|
|
|
|
|`resources` |`CodeRef<WatchK8sResources<T>>` |no |Kubernetes resources
|
|
that will be fetched and passed to `healthHandler`.
|
|
|
|
|`healthHandler` |`CodeRef<ResourceHealthHandler<T>>` |no |Resolve the
|
|
subsystem's health.
|
|
|
|
|`popupComponent` |`CodeRef<WatchK8sResults<T>>` |yes |Loader for pop-up menu content. If defined, a health item is represented as a link, which
|
|
opens a pop-up menu with the given content.
|
|
|
|
|`popupTitle` |`string` |yes |The title of the popover.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/health/url`
|
|
|
|
Adds a health subsystem to the status card of Overview dashboard where the source of status is a Kubernetes REST API.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 Kubernetes 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.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/inventory/item`
|
|
|
|
Adds a resource tile to the overview inventory card.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/inventory/item/group`
|
|
|
|
Adds an inventory status group.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/inventory/item/replacement`
|
|
|
|
Replaces an overview inventory card.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/prometheus/activity/resource`
|
|
|
|
Adds an activity to the Activity Card of Prometheus Overview Dashboard where the triggering of activity is based on watching a Kubernetes resource.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/project/overview/item`
|
|
|
|
Adds a resource tile to the project overview inventory card.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.dashboards/tab`
|
|
|
|
Adds a new dashboard tab, placed after the *Overview* tab.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 |Navigation section to which the tab belongs to.
|
|
|
|
|`title` |`string` |no |The title of the tab.
|
|
|===
|
|
|
|
|
|
== `console.file-upload`
|
|
|
|
This extension can be used to provide a handler for the file drop action on specific file extensions.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`fileExtensions` |`string[]` |no |Supported file extensions.
|
|
|
|
|`handler` |`CodeRef<FileUploadHandler>` |no |Function which handles the
|
|
file drop action.
|
|
|===
|
|
|
|
|
|
== `console.flag`
|
|
|
|
Gives full control over the web console feature flags.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`handler` |`CodeRef<FeatureFlagHandler>` |no |Used to set or unset arbitrary feature flags.
|
|
|===
|
|
|
|
|
|
== `console.flag/hookProvider`
|
|
|
|
Gives full control over the web console feature flags with hook handlers.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`handler` |`CodeRef<FeatureFlagHandler>` |no |Used to set or unset arbitrary feature flags.
|
|
|===
|
|
|
|
|
|
== `console.flag/model`
|
|
|
|
Adds a new web console feature flag driven by the presence of a `CustomResourceDefinition` (CRD) object on the cluster.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`flag` |`string` |no |The name of the flag to set after the CRD is detected.
|
|
|
|
|`model` |`ExtensionK8sModel` |no |The model which refers to a
|
|
CRD.
|
|
|===
|
|
|
|
|
|
== `console.global-config`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.model-metadata`
|
|
|
|
Customize the display of models by overriding values retrieved and generated through API discovery.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
Technology Preview or Developer 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 characters in `kind`, up to 4 characters long. Requires that `kind` is provided.
|
|
|===
|
|
|
|
|
|
== `console.navigation/href`
|
|
|
|
This extension can be used to contribute a navigation item that points to a specific link in the UI.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 beginning.
|
|
|===
|
|
|
|
|
|
== `console.navigation/resource-cluster`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`id` |`string` |no |A unique identifier for this item.
|
|
|
|
|`model` |`ExtensionK8sModel` |no |The model for which this navigation 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.
|
|
|===
|
|
|
|
|
|
== `console.navigation/resource-ns`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`id` |`string` |no |A unique identifier for this item.
|
|
|
|
|`model` |`ExtensionK8sModel` |no |The model for which this navigation 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.
|
|
|===
|
|
|
|
|
|
== `console.navigation/section`
|
|
|
|
This extension can be used to define a new section of navigation items in the navigation tab.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.navigation/separator`
|
|
|
|
This extension can be used to add a separator between navigation items in the navigation.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.page/resource/details`
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`model` |`ExtensionK8sGroupKindModel` |no |The model for which this
|
|
resource page links to.
|
|
|
|
|`component`
|
|
|`CodeRef<React.ComponentType<{ match: match<{}>; namespace: string; model: ExtensionK8sModel; }>>`
|
|
|no |The component to be rendered when the route matches.
|
|
|===
|
|
|
|
|
|
== `console.page/resource/list`
|
|
|
|
Adds new resource list page to Console router.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`model` |`ExtensionK8sGroupKindModel` |no |The model for which this
|
|
resource page links to.
|
|
|
|
|`component`
|
|
|`CodeRef<React.ComponentType<{ match: match<{}>; namespace: string; model: ExtensionK8sModel; }>>`
|
|
|no |The component to be rendered when the route matches.
|
|
|===
|
|
|
|
|
|
== `console.page/route`
|
|
|
|
Adds a new page to the web console router. See link:https://v5.reactrouter.com/[React Router].
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`component`
|
|
|`CodeRef<React.ComponentType<RouteComponentProps<{}, StaticContext, any>>>`
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.page/route/standalone`
|
|
|
|
Adds a new standalone page, rendered outside the common page layout, to the web console router. See link:https://v5.reactrouter.com/[React Router].
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`component`
|
|
|`CodeRef<React.ComponentType<RouteComponentProps<{}, StaticContext, any>>>`
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.perspective`
|
|
|
|
This extension contributes a new perspective to the console, which enables customization of the navigation menu.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `console.project-overview/inventory-item`
|
|
|
|
Adds a new inventory item into the *Project Overview* page.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`component` |`CodeRef<React.ComponentType<{ projectName: string; }>>`
|
|
|no |The component to be rendered.
|
|
|===
|
|
|
|
|
|
== `console.project-overview/utilization-item`
|
|
|
|
Adds a new project overview utilization item.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 the top consumer popover instead of plain value.
|
|
|===
|
|
|
|
|
|
== `console.pvc/alert`
|
|
|
|
This extension can be used to contribute custom alerts on the PVC details page.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`alert` |`CodeRef<React.ComponentType<{ pvc: K8sResourceCommon; }>>`
|
|
|no |The alert component.
|
|
|===
|
|
|
|
|
|
== `console.pvc/create-prop`
|
|
|
|
This extension can be used to specify additional properties that will be used when creating PVC resources on the PVC list page.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`label` |`string` |no |Label for the create prop action.
|
|
|`path` |`string` |no |Path for the create prop action.
|
|
|===
|
|
|
|
|
|
== `console.pvc/delete`
|
|
|
|
This extension allows hooking into deleting PVC resources. It can provide an alert with additional information and custom PVC delete logic.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.pvc/status`
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`priority` |`number` |no |Priority for the status component. A larger 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.
|
|
|===
|
|
|
|
|
|
== `console.redux-reducer`
|
|
|
|
Adds new reducer to Console Redux store which operates on `plugins.<scope>` substate.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.resource/create`
|
|
|
|
This extension allows plugins to provide a custom component (i.e., wizard or form) for specific resources, which will be rendered, when users try to create a new resource instance.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `console.resource/details-item`
|
|
|
|
Adds a new details item to the default resource summary on the details page.
|
|
|
|
[cols=".^2,.^3a,.^3a,.^3a",options="header"]
|
|
|===
|
|
|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 link:https://developer.mozilla.org/en-US/docs/Glossary/Primitive[primitive type] values can be rendered directly. Use the component property to handle other data types.
|
|
|
|
|`component`
|
|
|`CodeRef<React.ComponentType<DetailsItem
|
|
ComponentProps<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 link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#number_type[JavaScriptNumber]. Items in each column are sorted independently, lowest to highest. Items without sort weightsare sorted after items with sort weights.
|
|
|
|
|===
|
|
|
|
|
|
== `console.storage-class/provisioner`
|
|
|
|
Adds a new storage class provisioner as an option during storage class creation.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`CSI` |`ProvisionerDetails` |yes | Container Storage Interface provisioner type
|
|
|
|
|`OTHERS`
|
|
|`ProvisionerDetails`
|
|
|yes
|
|
|Other provisioner type
|
|
|===
|
|
|
|
|
|
== `console.storage-provider`
|
|
|
|
This extension can be used to contribute a new storage provider to select, when attaching storage and a provider specific component.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`name` |`string` |no | Displayed name of the provider.
|
|
|
|
|`Component`
|
|
|`CodeRef<React.ComponentType<Partial<RouteComponentProps<{}, StaticContext, any>>>>`
|
|
|no | Provider specific component to render. |
|
|
|===
|
|
|
|
|
|
== `console.tab`
|
|
|
|
Adds a tab to a horizontal nav matching the `contextId`.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.tab/horizontalNav`
|
|
|
|
This extension can be used to add a tab on the resource details page.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.telemetry/listener`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`listener` |`CodeRef<TelemetryEventListener>` |no |Listen for telemetry
|
|
events
|
|
|===
|
|
|
|
|
|
== `console.topology/adapter/build`
|
|
|
|
`BuildAdapter` contributes an adapter to adapt element to data that can be used by the Build component.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.topology/adapter/network`
|
|
|
|
`NetworkAdapater` contributes an adapter to adapt element to data that can be used by the `Networking` component.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.topology/adapter/pod`
|
|
|
|
`PodAdapter` contributes an adapter to adapt element to data that can be used by the `Pod` component.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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. |
|
|
|===
|
|
|
|
|
|
== `console.topology/component/factory`
|
|
|
|
Getter for a `ViewComponentFactory`.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`getFactory` |`CodeRef<ViewComponentFactory>` |no |Getter for a `ViewComponentFactory`.
|
|
|===
|
|
|
|
|
|
== `console.topology/create/connector`
|
|
|
|
Getter for the create connector function.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`getCreateConnector` |`CodeRef<CreateConnectionGetter>` |no |Getter for
|
|
the create connector function.
|
|
|===
|
|
|
|
|
|
== `console.topology/data/factory`
|
|
|
|
Topology Data Model Factory Extension
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `console.topology/decorator/provider`
|
|
|
|
Topology Decorator Provider Extension
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 |
|
|
|===
|
|
|
|
|
|
== `console.topology/details/resource-alert`
|
|
|
|
`DetailsResourceAlert` contributes an alert for specific topology context or graph element.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`id` |`string` |no |The ID of this alert. Used to save state if the
|
|
alert should not be shown after dismissed.
|
|
|
|
|`contentProvider`
|
|
|`CodeRef<(element: GraphElement) => DetailsResourceAlertContent \| null>`
|
|
|no |Hook to return the contents of the alert.
|
|
|===
|
|
|
|
|
|
== `console.topology/details/resource-link`
|
|
|
|
`DetailsResourceLink` contributes a link for specific topology context or graph element.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`link`|`CodeRef<(element: GraphElement) => React.Component \| undefined>` |no
|
|
|Return the resource link if provided, otherwise undefined. Use the `ResourceIcon` and `ResourceLink` properties for styles.
|
|
|
|
|`priority` |`number` |yes |A higher priority factory will get the first
|
|
chance to create the link.
|
|
|===
|
|
|
|
|
|
== `console.topology/details/tab`
|
|
|
|
`DetailsTab` contributes a tab for the topology details panel.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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. The `insertBefore` value takes precedence.
|
|
|===
|
|
|
|
|
|
== `console.topology/details/tab-section`
|
|
|
|
`DetailsTabSection` contributes a section for a specific tab in the topology details panel.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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 if null or undefined, renders 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. The `insertBefore` value takes precedence.
|
|
|===
|
|
|
|
|
|
== `console.topology/display/filters`
|
|
|
|
Topology Display Filters Extension
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `console.topology/relationship/provider`
|
|
|
|
Topology relationship provider connector extension
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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, for example, "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
|
|
|===
|
|
|
|
|
|
== `console.user-preference/group`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `console.user-preference/item`
|
|
|
|
This extension can be used to add an item to the user preferences group on the console user preferences page.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|
|
|`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
|
|
|
|
|`groupId` |`string` |yes |IDs used to identify the user preference
|
|
groups the item would belong to
|
|
|
|
|`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
|
|
|===
|
|
|
|
|
|
== `console.yaml-template`
|
|
|
|
YAML templates for editing resources via the yaml editor.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|===
|
|
|
|
|
|
== `dev-console.add/action`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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.
|
|
|
|
|`href` |`string` |no |The `href` to navigate to.
|
|
|
|
|`groupId` |`string` |yes |IDs used to identify the action groups the
|
|
action would belong to.
|
|
|
|
|`icon` |`CodeRef<React.ReactNode>` |yes |The perspective display icon.
|
|
|
|
|`accessReview` |`AccessReviewResourceAttributes[]` |yes |Optional
|
|
access review to control the visibility or enablement of the action.
|
|
|===
|
|
|
|
|
|
== `dev-console.add/action-group`
|
|
|
|
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.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `dev-console.import/environment`
|
|
|
|
This extension can be used to specify extra build environment variable fields under the builder image selector in the developer console git import form. When set, the fields will override environment variables of the same name in the build section.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|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
|
|
|===
|
|
|
|
|
|
== `console.dashboards/overview/detail/item`
|
|
|
|
Deprecated: use `CustomOverviewDetailItem` type instead.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`component` |`CodeRef<React.ComponentType<{}>>` |no |The value, based
|
|
on the `DetailItem` component
|
|
|===
|
|
|
|
|
|
== `console.page/resource/tab`
|
|
|
|
Deprecated: Use `console.tab/horizontalNav` instead. Adds a new resource tab page to Console router.
|
|
|
|
[cols=",,,",options="header",]
|
|
|===
|
|
|Name |Value Type |Optional |Description
|
|
|`model` |`ExtensionK8sGroupKindModel` |no |The model for which this
|
|
resource page links to.
|
|
|
|
|`component`
|
|
|`CodeRef<React.ComponentType<RouteComponentProps<{}, StaticContext, any>>>`
|
|
|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.
|
|
|===
|