ExtensionK8sModel
您可以添加允许您自定义插件的扩展。然后,这些扩展会在运行时加载到控制台中。
console.action/filter
ActionFilter
可用于过滤操作。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
上下文 ID 有助于将贡献的操作范围缩小到应用程序的特定区域。示例包括 |
|
|
否 |
一个根据某些条件过滤操作的函数。
|
console.action/group
ActionGroup
贡献一个操作组,该组也可以是子菜单。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于标识操作部分的 ID。 |
|
|
是 |
在 UI 中显示的标签。子菜单需要此项。 |
|
|
是 |
此组是否应显示为子菜单。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
console.action/provider
ActionProvider
贡献一个返回特定上下文操作列表的钩子。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
上下文 ID 有助于将贡献的操作范围缩小到应用程序的特定区域。示例包括 |
|
|
否 |
一个返回给定范围操作的 React 钩子。如果 |
console.action/resource-provider
ResourceActionProvider
贡献一个返回特定资源模型操作列表的钩子。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此提供程序为此提供操作的模型。 |
|
|
否 |
一个返回给定资源模型操作的 React 钩子 |
console.alert-action
此扩展可用于在控制台基于其rule.name
值观察到特定 Prometheus 警报时触发特定操作。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
由 |
|
|
否 |
|
|
|
否 |
执行副作用的函数 |
console.catalog/item-filter
此扩展可用于插件贡献一个处理程序,该处理程序可以过滤特定的目录项。例如,插件可以贡献一个过滤器,该过滤器可以过滤来自特定提供程序的 helm 图表。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此提供程序贡献到的目录的唯一标识符。 |
|
|
否 |
目录项类型的类型 ID。 |
|
|
否 |
过滤特定类型的项目。值是一个函数,它接受 |
console.catalog/item-metadata
此扩展可用于贡献一个提供程序,为特定的目录项添加额外的元数据。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此提供程序贡献到的目录的唯一标识符。 |
|
|
否 |
目录项类型的类型 ID。 |
|
|
否 |
一个钩子函数,返回一个函数,该函数将用于为特定类型的目录项提供元数据。 |
console.catalog/item-provider
此扩展允许插件为目录项类型贡献提供程序。例如,Helm插件可以添加一个提供程序来获取所有Helm图表。此扩展也可以被其他插件用来为特定类型的目录项添加更多项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此提供程序贡献到的目录的唯一标识符。 |
|
|
否 |
目录项类型的类型 ID。 |
|
|
否 |
目录项提供程序的标题 |
|
|
否 |
获取项目并将其规范化到目录中。值是一个React effect hook。 |
|
|
是 |
此提供程序的优先级。默认为 |
console.catalog/item-type
此扩展允许插件贡献一种新的目录项类型。例如,Helm插件可以定义一个名为HelmCharts的新目录项类型,它希望贡献到开发者目录。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
目录项的类型。 |
|
|
否 |
目录项的标题。 |
|
|
是 |
特定类型目录的描述。 |
|
|
是 |
目录项类型的描述。 |
|
|
是 |
特定于目录项的自定义过滤器。 |
|
|
是 |
特定于目录项的自定义分组。 |
console.catalog/item-type-metadata
此扩展允许插件为任何目录项类型贡献额外的元数据,例如自定义过滤器或分组。例如,插件可以为HelmCharts附加一个自定义过滤器,该过滤器可以根据图表提供程序进行过滤。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
目录项的类型。 |
|
|
是 |
特定于目录项的自定义过滤器。 |
|
|
是 |
特定于目录项的自定义分组。 |
console.cluster-overview/inventory-item
向集群概览页面添加新的库存项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
要渲染的组件。 |
console.cluster-overview/multiline-utilization-item
添加新的集群概览多行利用率项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
利用率项的标题。 |
|
|
否 |
Prometheus利用率查询。 |
|
|
否 |
将Prometheus数据转换为人类可读的形式。 |
|
|
是 |
显示顶级使用者弹出窗口,而不是普通值。 |
console.cluster-overview/utilization-item
添加新的集群概览利用率项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
利用率项的标题。 |
|
|
否 |
Prometheus利用率查询。 |
|
|
否 |
将Prometheus数据转换为人类可读的形式。 |
|
|
是 |
Prometheus总计查询。 |
|
|
是 |
Prometheus请求查询。 |
|
|
是 |
Prometheus限制查询。 |
|
|
是 |
显示顶级使用者弹出窗口,而不是普通值。 |
console.context-provider
向Web控制台应用程序根目录添加新的React上下文提供程序。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
上下文提供程序组件。 |
|
|
否 |
上下文值的钩子函数。 |
console.dashboards/card
添加新的仪表盘卡片。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将卡片添加到其中的仪表盘选项卡的ID。 |
|
|
否 |
卡片在仪表盘上的网格位置。 |
|
|
否 |
仪表盘卡片组件。 |
|
|
是 |
卡片在列中的垂直跨度。小屏幕上忽略;默认为 |
console.dashboards/custom/overview/detail/item
向概览仪表盘的详细信息卡片添加项目。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
详细信息卡片标题 |
|
|
否 |
值,由OverviewDetailItem组件渲染 |
|
|
是 |
className的值 |
|
|
是 |
返回组件加载状态的函数 |
|
|
是 |
返回组件要显示的错误的函数 |
console.dashboards/overview/activity/resource
向概览仪表盘的活动卡片添加活动,其中活动的触发基于监视Kubernetes资源。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
要替换的利用率项。 |
|
|
否 |
操作组件。 |
|
|
是 |
确定给定资源是否代表操作的函数。如果未定义,则每个资源都代表活动。 |
|
|
是 |
给定操作的时间戳,用于排序。 |
console.dashboards/overview/health/operator
向**概览**仪表盘的状态卡片添加健康子系统,其中状态的来源是Kubernetes REST API。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
弹出菜单中“操作员”部分的标题。 |
|
|
否 |
将被获取并传递给 |
|
|
是 |
解析操作员的状态。 |
|
|
是 |
弹出窗口行组件的加载程序。 |
|
|
是 |
指向所有资源页面的链接。如果未提供,则使用resources属性中第一个资源的列表页面。 |
console.dashboards/overview/health/prometheus
向概览仪表盘的状态卡片添加健康子系统,其中状态的来源是Prometheus。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
子系统的显示名称。 |
|
|
否 |
Prometheus查询。 |
|
|
否 |
解析子系统的健康状况。 |
|
|
是 |
将被获取并传递给 |
|
|
是 |
弹出菜单内容的加载程序。如果已定义,则健康项将表示为链接,该链接将打开一个包含给定内容的弹出菜单。 |
|
|
是 |
弹出窗口的标题。 |
|
|
是 |
应隐藏子系统的控制平面拓扑。 |
console.dashboards/overview/health/resource
向概览仪表盘的状态卡片添加健康子系统,其中状态的来源是Kubernetes资源。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
子系统的显示名称。 |
|
|
否 |
将被获取并传递给 |
|
|
否 |
解析子系统的健康状况。 |
|
|
是 |
弹出菜单内容的加载程序。如果已定义,则健康项将表示为链接,该链接将打开一个包含给定内容的弹出菜单。 |
|
|
是 |
弹出窗口的标题。 |
console.dashboards/overview/health/url
向概览仪表盘的状态卡片添加健康子系统,其中状态的来源是Kubernetes REST API。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
子系统的显示名称。 |
|
|
否 |
要从中获取数据的URL。它将在Kubernetes基本URL前添加前缀。 |
|
|
否 |
解析子系统的健康状况。 |
|
|
是 |
将被获取并传递给 |
|
|
是 |
弹出内容的加载程序。如果已定义,则健康项将表示为链接,该链接将打开一个包含给定内容的弹出窗口。 |
|
|
是 |
弹出窗口的标题。 |
console.dashboards/overview/inventory/item
在概览库存卡片中添加资源块。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将要获取的 |
|
|
是 |
将各种状态映射到分组的函数。 |
|
|
是 |
将要获取并传递给 |
console.dashboards/overview/inventory/item/group
添加库存状态分组。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
状态分组的ID。 |
|
|
否 |
表示状态分组图标的React组件。 |
console.dashboards/overview/inventory/item/replacement
替换概览库存卡片。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将要获取的 |
|
|
是 |
将各种状态映射到分组的函数。 |
|
|
是 |
将要获取并传递给 |
console.dashboards/overview/prometheus/activity/resource
在Prometheus概览仪表盘的活动卡片中添加一项活动,该活动的触发基于监视Kubernetes资源。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
要监视的查询。 |
|
|
否 |
操作组件。 |
|
|
是 |
确定给定资源是否代表操作的函数。如果未定义,则每个资源都代表活动。 |
console.dashboards/project/overview/item
在项目概览库存卡片中添加资源块。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将要获取的 |
|
|
是 |
将各种状态映射到分组的函数。 |
|
|
是 |
将要获取并传递给 |
console.dashboards/tab
添加一个新的仪表盘选项卡,位于**概览**选项卡之后。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
唯一的选项卡标识符,用作选项卡链接 |
|
|
否 |
选项卡所属的导航部分。 |
|
|
否 |
选项卡的标题。 |
console.file-upload
此扩展程序可用于为特定文件扩展名上的文件拖放操作提供处理程序。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
支持的文件扩展名。 |
|
|
否 |
处理文件拖放操作的函数。 |
console.flag
完全控制Web控制台功能标志。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于设置或取消设置任意功能标志。 |
console.flag/hookProvider
使用hook处理程序完全控制Web控制台功能标志。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于设置或取消设置任意功能标志。 |
console.flag/model
添加一个新的Web控制台功能标志,该标志由集群上CustomResourceDefinition
(CRD) 对象的存在驱动。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
检测到CRD后要设置的标志名称。 |
|
|
否 |
引用CRD的模型。 |
console.global-config
此扩展程序标识用于管理集群配置的资源。指向该资源的链接将添加到**管理** → **集群设置** → **配置**页面。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
集群配置资源实例的唯一标识符。 |
|
|
否 |
集群配置资源实例的名称。 |
|
|
否 |
引用集群配置资源的模型。 |
|
|
否 |
集群配置资源实例的命名空间。 |
console.model-metadata
通过覆盖通过API发现检索和生成的数值来自定义模型的显示。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
要自定义的模型。可能只指定一个组,或者可选的版本和种类。 |
|
|
是 |
是否将此模型引用视为技术预览版或开发者预览版。 |
|
|
是 |
与此模型关联的颜色。 |
|
|
是 |
覆盖标签。需要提供 |
|
|
是 |
覆盖复数标签。需要提供 |
|
|
是 |
自定义缩写。默认为 |
console.navigation/href
此扩展程序可用于贡献指向UI中特定链接的导航项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此项的唯一标识符。 |
|
|
否 |
此项的名称。 |
|
|
否 |
链接 |
|
|
是 |
此项所属的视角ID。如果未指定,则贡献给默认视角。 |
|
|
是 |
此项所属的导航部分。如果未指定,则将此项呈现为顶级链接。 |
|
|
是 |
向DOM添加数据属性。 |
|
|
是 |
当URL以这些路径之一开头时,将此项标记为活动状态。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
如果为 |
|
|
是 |
如果为 |
console.navigation/resource-cluster
此扩展程序可用于贡献指向集群资源详细信息页面的导航项。该资源的K8s模型可用于定义导航项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此项的唯一标识符。 |
|
|
否 |
此导航项链接到的模型。 |
|
|
是 |
此项所属的视角ID。如果未指定,则贡献给默认视角。 |
|
|
是 |
此项所属的导航部分。如果未指定,则将此项呈现为顶级链接。 |
|
|
是 |
向DOM添加数据属性。 |
|
|
是 |
当URL以这些路径之一开头时,将此项标记为活动状态。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
覆盖默认名称。如果未提供,则链接名称将等于模型的复数形式。 |
console.navigation/resource-ns
此扩展程序可用于贡献指向命名空间资源详细信息页面的导航项。该资源的K8s模型可用于定义导航项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此项的唯一标识符。 |
|
|
否 |
此导航项链接到的模型。 |
|
|
是 |
此项所属的视角ID。如果未指定,则贡献给默认视角。 |
|
|
是 |
此项所属的导航部分。如果未指定,则将此项呈现为顶级链接。 |
|
|
是 |
向DOM添加数据属性。 |
|
|
是 |
当URL以这些路径之一开头时,将此项标记为活动状态。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
覆盖默认名称。如果未提供,则链接名称将等于模型的复数形式。 |
console.navigation/section
此扩展程序可用于在导航选项卡中定义新的导航项部分。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此项的唯一标识符。 |
|
|
是 |
此项所属的视角ID。如果未指定,则贡献给默认视角。 |
|
|
是 |
向DOM添加数据属性。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
此部分的名称。如果未提供,则仅在该部分上方显示分隔符。 |
console.navigation/separator
此扩展程序可用于在导航中的导航项之间添加分隔符。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此项的唯一标识符。 |
|
|
是 |
此项所属的视角ID。如果未指定,则贡献给默认视角。 |
|
|
是 |
此项所属的导航部分。如果未指定,则将此项呈现为顶级链接。 |
|
|
是 |
向DOM添加数据属性。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
console.page/resource/details
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此资源页面链接到的模型。 |
|
|
否 |
路由匹配时要渲染的组件。 |
console.page/resource/list
向控制台路由器添加新的资源列表页面。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此资源页面链接到的模型。 |
|
|
否 |
路由匹配时要渲染的组件。 |
console.page/route
向Web控制台路由器添加一个新页面。请参阅 React Router。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
路由匹配时要渲染的组件。 |
|
|
否 |
|
|
|
是 |
此页面所属的视角。如果未指定,则贡献给所有视角。 |
|
|
是 |
如果为true,则只有当路径完全匹配 |
console.page/route/standalone
向Web控制台路由器添加一个新的独立页面,该页面在公共页面布局之外渲染。请参阅 React Router。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
路由匹配时要渲染的组件。 |
|
|
否 |
|
|
|
是 |
如果为true,则只有当路径完全匹配 |
console.perspective
此扩展为控制台提供了一个新的视角,允许自定义导航菜单。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
视角标识符。 |
|
|
否 |
视角显示名称。 |
|
|
否 |
视角显示图标。 |
|
|
否 |
获取视角落地页 URL 的函数。 |
|
|
否 |
获取导入流程重定向 URL 的函数。 |
|
|
是 |
该视角是否为默认视角。只能存在一个默认视角。 |
|
|
是 |
导航栏上默认固定资源。 |
|
|
是 |
检测默认视角的钩子。 |
console.project-overview/inventory-item
在项目概览页面添加新的库存项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
要渲染的组件。 |
console.project-overview/utilization-item
添加新的项目概览利用率项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
利用率项的标题。 |
|
|
否 |
Prometheus利用率查询。 |
|
|
否 |
将Prometheus数据转换为人类可读的形式。 |
|
|
是 |
Prometheus总计查询。 |
|
|
是 |
Prometheus请求查询。 |
|
|
是 |
Prometheus限制查询。 |
|
|
是 |
显示顶部使用者弹出框而不是普通值。 |
console.pvc/alert
此扩展可用于在 PVC 详情页面贡献自定义警报。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
警报组件。 |
console.pvc/create-prop
此扩展可用于指定在 PVC 列表页面创建 PVC 资源时将使用的附加属性。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
创建属性操作的标签。 |
|
|
否 |
创建属性操作的路径。 |
console.pvc/delete
此扩展允许挂钩删除 PVC 资源。它可以提供包含附加信息和自定义 PVC 删除逻辑的警报。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
判断是否使用此扩展的谓词。 |
|
|
否 |
PVC 删除操作的方法。 |
|
|
否 |
显示附加信息的警报组件。 |
console.pvc/status
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
状态组件的优先级。值越大,优先级越高。 |
|
|
否 |
状态组件。 |
|
|
否 |
判断是否渲染状态组件的谓词。 |
console.redux-reducer
向 Console Redux 存储添加新的 reducer,该 reducer 运行于 `plugins.<scope>` 子状态。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
表示 Redux 状态对象中 reducer 管理的子状态的键。 |
|
|
否 |
reducer 函数,作用于 reducer 管理的子状态。 |
console.resource/create
此扩展允许插件为特定资源提供自定义组件(即向导或表单),当用户尝试创建新的资源实例时,将渲染该组件。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将为此创建资源页面渲染的模型。 |
|
|
否 |
模型匹配时要渲染的组件。 |
console.resource/details-item
在详情页面的默认资源摘要中添加新的详情项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
主题资源的 API 组、版本和种类。 |
|
|
否 |
唯一的标识符。 |
|
|
否 |
确定该项是否会出现在详情页面资源摘要的“左侧”或“右侧”列。默认值:“右侧”。 |
|
|
否 |
详情项标题。 |
|
|
是 |
可选的、完整的资源属性路径,用作详情项的值。只有基本类型的值可以直接渲染。使用 component 属性处理其他数据类型。 |
|
|
是 |
可选的 React 组件,将渲染详情项的值。 |
|
|
是 |
可选的排序权重,相对于同一列中的所有其他详情项。由任何有效的JavaScript 数值表示。每列中的项目独立排序,从低到高。没有排序权重的项目在有排序权重的项目之后排序。 |
console.storage-class/provisioner
在创建存储类期间添加新的存储类供应程序作为选项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
是 |
容器存储接口供应程序类型。 |
|
|
是 |
其他供应程序类型。 |
console.storage-provider
此扩展可用于贡献一个新的存储提供程序进行选择,当附加存储和提供程序特定组件时。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
提供程序的显示名称。 |
|
|
否 |
要渲染的提供程序特定组件。 |
console.tab
向与contextId
匹配的水平导航栏添加选项卡。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
分配给将注入选项卡的水平导航栏的上下文 ID。可能的值: |
|
|
否 |
选项卡的显示标签。 |
|
|
否 |
附加到现有 URL 的 |
|
|
否 |
选项卡内容组件。 |
console.tab/horizontalNav
此扩展可用于在资源详情页面添加选项卡。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此提供程序显示选项卡的模型。 |
|
|
否 |
要在水平选项卡中显示的页面。它将选项卡名称作为名称和选项卡的 href。 |
|
|
否 |
路由匹配时要渲染的组件。 |
console.telemetry/listener
此组件可用于注册接收遥测事件的侦听器函数。这些事件包括用户标识、页面导航和其他特定于应用程序的事件。侦听器可以使用此数据进行报告和分析。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
侦听遥测事件。 |
console.topology/adapter/build
BuildAdapter
贡献一个适配器,用于将元素适配为构建组件可用的数据。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将元素适配为构建组件可用的数据的适配器。 |
console.topology/adapter/network
NetworkAdapater
贡献一个适配器,用于将元素适配为Networking
组件可用的数据。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将元素适配为网络组件可用的数据的适配器。 |
console.topology/adapter/pod
PodAdapter
贡献一个适配器,用于将元素适配为Pod
组件可用的数据。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
将元素适配为 Pod 组件可用的数据的适配器。 |
console.topology/component/factory
ViewComponentFactory
的 Getter。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
|
console.topology/create/connector
创建连接器函数的 Getter。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
创建连接器函数的 Getter。 |
console.topology/data/factory
拓扑数据模型工厂扩展。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
工厂的唯一 ID。 |
|
|
否 |
工厂的优先级。 |
|
|
是 |
要从 |
|
|
是 |
资源中包含工作负载的键。 |
|
|
是 |
数据模型工厂的 Getter。 |
|
|
是 |
获取函数,用于确定此模型工厂是否描述了资源。 |
|
|
是 |
获取函数,用于在所有扩展模型加载后协调数据模型。 |
console.topology/decorator/provider
拓扑装饰器提供程序扩展
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
特定于扩展的拓扑装饰器的 ID |
|
|
否 |
特定于扩展的拓扑装饰器的优先级 |
|
|
否 |
特定于扩展的拓扑装饰器的象限 |
|
|
否 |
特定于扩展的装饰器 |
console.topology/details/resource-alert
DetailsResourceAlert
为特定的拓扑上下文或图形元素贡献警报。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此警报的 ID。如果警报在关闭后不应显示,则用于保存状态。 |
|
|
否 |
挂钩,用于返回警报的内容。 |
console.topology/details/resource-link
DetailsResourceLink
为特定的拓扑上下文或图形元素贡献链接。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
如果提供资源链接,则返回该链接;否则返回 undefined。使用 |
|
|
是 |
优先级较高的工厂将首先获得创建链接的机会。 |
console.topology/details/tab
DetailsTab
为拓扑详细信息面板贡献一个选项卡。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此详细信息选项卡的唯一标识符。 |
|
|
否 |
在 UI 中显示的选项卡标签。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
console.topology/details/tab-section
DetailsTabSection
为拓扑详细信息面板中的特定选项卡贡献一个部分。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此详细信息选项卡部分的唯一标识符。 |
|
|
否 |
此部分应贡献到的父选项卡 ID。 |
|
|
否 |
返回组件的钩子,如果为 null 或 undefined,则在拓扑侧边栏中呈现。SDK 组件: |
|
|
否 |
已弃用:如果没有定义提供程序,则作为回退。renderNull 已经是空操作。 |
|
|
是 |
在此处引用的项目之前插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
|
|
是 |
在此处引用的项目之后插入此项目。对于数组,按顺序找到的第一个项目将被使用。 |
console.topology/display/filters
拓扑显示过滤器扩展
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
获取特定于扩展的拓扑过滤器 |
|
|
否 |
将过滤器应用于模型的函数 |
console.topology/relationship/provider
拓扑关系提供程序连接器扩展
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于确定是否可以在源节点和目标节点之间创建连接 |
|
|
否 |
当连接器操作悬停在目标节点上时显示的工具提示,例如“创建可视连接器” |
|
|
否 |
当连接器拖放到目标节点上以创建连接时执行的回调 |
|
|
否 |
关系的优先级,数值越高,优先级越高(多个关系时) |
console.user-preference/group
此扩展可用于在控制台用户首选项页面上添加一个组。它将作为控制台用户首选项页面上的垂直选项卡选项显示。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于标识用户首选项组的 ID。 |
|
|
否 |
用户首选项组的标签 |
|
|
是 |
此组之前应放置的用户首选项组的 ID |
|
|
是 |
此组之后应放置的用户首选项组的 ID |
console.user-preference/item
此扩展可用于向控制台用户首选项页面上的用户首选项组添加项目。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于标识用户首选项项目并在 insertAfter 和 insertBefore 中引用的 ID,用于定义项目顺序 |
|
|
否 |
用户首选项的标签 |
|
|
否 |
用户首选项的描述 |
|
|
否 |
用于呈现值以设置用户首选项的输入字段选项 |
|
|
是 |
用于标识项目所属的用户首选项组的 ID |
|
|
是 |
此项目之前应放置的用户首选项项目的 ID |
|
|
是 |
此项目之后应放置的用户首选项项目的 ID |
console.yaml-template
用于通过 yaml 编辑器编辑资源的 YAML 模板。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
与模板关联的模型。 |
|
|
否 |
YAML 模板。 |
|
|
否 |
模板的名称。使用名称 |
dev-console.add/action
此扩展允许插件向开发人员视角的添加页面贡献添加操作项。例如,Serverless 插件可以为在开发人员控制台的添加页面添加 Serverless 函数添加新的操作项。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于标识操作的 ID。 |
|
|
否 |
操作的标签。 |
|
|
否 |
操作的描述。 |
|
|
否 |
要导航到的 |
|
|
是 |
用于标识操作所属的操作组的 ID。 |
|
|
是 |
视角显示图标。 |
|
|
是 |
可选访问审查,用于控制操作的可见性或启用状态。 |
dev-console.add/action-group
此扩展允许插件在开发人员控制台的添加页面贡献一个组。组可以被操作引用,这些操作将根据其扩展定义在添加操作页面中组合在一起。例如,Serverless 插件可以贡献一个 Serverless 组以及多个添加操作。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
用于标识操作组的 ID |
|
|
否 |
操作组的标题 |
|
|
是 |
此组之前应放置的操作组的 ID |
|
|
是 |
此组之后应放置的操作组的 ID |
dev-console.import/environment
此扩展可用于在开发人员控制台 git 导入表单中的构建器镜像选择器下指定额外的构建环境变量字段。设置后,这些字段将覆盖构建部分中相同名称的环境变量。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
要为其提供自定义环境变量的镜像流的名称 |
|
|
否 |
支持的镜像流标签列表 |
|
|
否 |
环境变量列表 |
console.dashboards/overview/detail/item
已弃用。请改用CustomOverviewDetailItem
类型
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
基于 |
console.page/resource/tab
已弃用。请改用console.tab/horizontalNav
。向控制台路由器添加新的资源选项卡页面。
名称 | 值类型 | 可选 | 描述 |
---|---|---|---|
|
|
否 |
此资源页面链接到的模型。 |
|
|
否 |
路由匹配时要渲染的组件。 |
|
|
否 |
选项卡的名称。 |
|
|
是 |
选项卡链接的可选 |
|
|
是 |
如果为true,则只有当路径完全匹配 |
useActivePerspective
提供当前活动透视图和用于设置活动透视图的回调的钩子。它返回一个包含当前活动透视图和 setter 回调的元组。
const Component: React.FC = (props) => {
const [activePerspective, setActivePerspective] = useActivePerspective();
return <select
value={activePerspective}
onChange={(e) => setActivePerspective(e.target.value)}
>
{
// ...perspective options
}
</select>
}
GreenCheckCircleIcon
用于显示绿色对勾圆圈图标的组件。
<GreenCheckCircleIcon title="Healthy" />
参数名称 | 描述 |
---|---|
|
(可选) 组件的附加类名 |
|
(可选) 图标标题 |
|
(可选) 图标大小:( |
RedExclamationCircleIcon
用于显示红色感叹号圆圈图标的组件。
<RedExclamationCircleIcon title="Failed" />
参数名称 | 描述 |
---|---|
|
(可选) 组件的附加类名 |
|
(可选) 图标标题 |
|
(可选) 图标大小:( |
YellowExclamationTriangleIcon
用于显示黄色三角形感叹号图标的组件。
<YellowExclamationTriangleIcon title="Warning" />
参数名称 | 描述 |
---|---|
|
(可选) 组件的附加类名 |
|
(可选) 图标标题 |
|
(可选) 图标大小:( |
BlueInfoCircleIcon
用于显示蓝色信息圆圈图标的组件。
<BlueInfoCircleIcon title="Info" />
参数名称 | 描述 |
---|---|
|
(可选) 组件的附加类名 |
|
(可选) 图标标题 |
|
(可选) 图标大小:('sm'、'md'、'lg'、'xl') |
ErrorStatus
用于显示错误状态弹出框的组件。
<ErrorStatus title={errorMsg} />
参数名称 | 描述 |
---|---|
|
(可选) 状态文本 |
|
(可选) 如果为 true,则仅显示图标 |
|
(可选) 如果为 true,则不显示工具提示 |
|
(可选) 组件的附加类名 |
|
(可选)弹出框标题 |
信息状态
用于显示信息状态弹出框的组件。
<InfoStatus title={infoMsg} />
参数名称 | 描述 |
---|---|
|
(可选) 状态文本 |
|
(可选) 如果为 true,则仅显示图标 |
|
(可选) 如果为 true,则不显示工具提示 |
|
(可选) 组件的附加类名 |
|
(可选)弹出框标题 |
进度状态
用于显示进度状态弹出框的组件。
<ProgressStatus title={progressMsg} />
参数名称 | 描述 |
---|---|
|
(可选) 状态文本 |
|
(可选) 如果为 true,则仅显示图标 |
|
(可选) 如果为 true,则不显示工具提示 |
|
(可选) 组件的附加类名 |
|
(可选)弹出框标题 |
成功状态
用于显示成功状态弹出框的组件。
<SuccessStatus title={successMsg} />
参数名称 | 描述 |
---|---|
|
(可选) 状态文本 |
|
(可选) 如果为 true,则仅显示图标 |
|
(可选) 如果为 true,则不显示工具提示 |
|
(可选) 组件的附加类名 |
|
(可选)弹出框标题 |
检查访问权限
提供有关用户对给定资源的访问权限的信息。它返回一个包含资源访问权限信息的的对象。
参数名称 | 描述 |
---|---|
|
用于访问审核的资源属性 |
|
模拟身份详情 |
使用访问审核
提供有关用户对给定资源的访问权限信息的 Hook。它返回一个包含 `isAllowed` 和 `loading` 值的数组。
参数名称 | 描述 |
---|---|
|
用于访问审核的资源属性 |
|
模拟身份详情 |
使用已解析的扩展
用于使用已解析 `CodeRef` 属性的控制台扩展的 React hook。此 hook 接受与 `useExtensions` hook 相同的参数,并返回一个已调整的扩展实例列表,解析每个扩展属性中的所有代码引用。
最初,hook 返回一个空数组。解析完成后,React 组件将重新渲染,hook 返回一个已调整的扩展列表。当匹配扩展的列表更改时,将重新启动解析。在解析完成之前,hook 将继续返回先前的结果。
保证 hook 的结果元素在重新渲染期间引用稳定。它返回一个元组,其中包含一个具有已解析代码引用的已调整扩展实例列表、一个指示解析是否完成的布尔标志以及在解析过程中检测到的错误列表。
const [navItemExtensions, navItemsResolved] = useResolvedExtensions<NavItem>(isNavItem);
// process adapted extensions and render your component
参数名称 | 描述 |
---|---|
|
一系列回调函数,每个函数都接受一个动态插件扩展作为参数,并返回一个布尔标志,指示扩展是否满足所需的类型约束。 |
水平导航
创建页面导航栏的组件。路由作为组件的一部分进行处理。可以使用 `console.tab/horizontalNav` 向任何水平导航添加额外内容。
const HomePage: React.FC = (props) => {
const page = {
href: '/home',
name: 'Home',
component: () => <>Home</>
}
return <HorizontalNav match={props.match} pages={[page]} />
}
参数名称 | 描述 |
---|---|
|
与该导航关联的资源,一个 K8sResourceCommon 类型的对象。 |
|
页面对象的数组 |
|
React Router 提供的匹配对象 |
虚拟化表格
用于创建虚拟化表格的组件。
const MachineList: React.FC<MachineListProps> = (props) => {
return (
<VirtualizedTable<MachineKind>
{...props}
aria-label='Machines'
columns={getMachineColumns}
Row={getMachineTableRow}
/>
);
}
参数名称 | 描述 |
---|---|
|
表格数据 |
|
指示数据已加载的标志 |
|
如果加载数据时出现问题,则为错误对象 |
|
列设置 |
|
行设置 |
|
未经过滤的原始数据 |
|
(可选)无数据空消息组件 |
|
(可选)空消息组件 |
|
(可选)处理滚动的函数 |
|
(可选)表格标签 |
|
(可选)ARIA 标签 |
|
如何划分网格以实现响应式的尺寸 |
|
(可选)用于处理表格选择的函数 |
|
(可选)特定于行的数 |
表格数据
用于在表格行内显示表格数据的组件。
const PodRow: React.FC<RowProps<K8sResourceCommon>> = ({ obj, activeColumnIDs }) => {
return (
<>
<TableData id={columns[0].id} activeColumnIDs={activeColumnIDs}>
<ResourceLink kind="Pod" name={obj.metadata.name} namespace={obj.metadata.namespace} />
</TableData>
<TableData id={columns[1].id} activeColumnIDs={activeColumnIDs}>
<ResourceLink kind="Namespace" name={obj.metadata.namespace} />
</TableData>
</>
);
};
参数名称 | 描述 |
---|---|
|
表格的唯一 ID |
|
活动列 |
|
(可选)用于样式设置的选项类名 |
使用活动列
提供用户选择的活动 TableColumn 列表的 hook。
// See implementation for more details on TableColumn type
const [activeColumns, userSettingsLoaded] = useActiveColumns({
columns,
showNamespaceOverride: false,
columnManagementID,
});
return userSettingsAreLoaded ? <VirtualizedTable columns={activeColumns} {...otherProps} /> : null
参数名称 | 描述 |
---|---|
|
作为键值对传递 |
|
所有可用 TableColumn 的数组 |
|
(可选)如果为 true,则无论列管理选择如何,都包含命名空间列。 |
|
(可选)用于将列管理选择持久保存到用户设置并从中检索的唯一 ID。通常是资源的组/版本/种类 (GVK) 字符串。 |
包含当前用户选择的活动列(options.columns 的子集)和一个布尔标志(指示是否已加载用户设置)的元组。
列表页页眉
用于生成页面页眉的组件。
const exampleList: React.FC = () => {
return (
<>
<ListPageHeader title="Example List Page"/>
</>
);
};
参数名称 | 描述 |
---|---|
|
标题 |
|
(可选)作为 React 节点的帮助部分 |
|
(可选)作为 React 节点的徽章图标 |
列表页创建
用于为特定资源种类添加创建按钮的组件,该组件会自动生成指向此资源的创建 YAML 的链接。
const exampleList: React.FC<MyProps> = () => {
return (
<>
<ListPageHeader title="Example Pod List Page"/>
<ListPageCreate groupVersionKind="Pod">Create Pod</ListPageCreate>
</ListPageHeader>
</>
);
};
参数名称 | 描述 |
---|---|
|
要表示的资源组/版本/种类 |
列表页创建链接
用于创建风格化链接的组件。
const exampleList: React.FC<MyProps> = () => {
return (
<>
<ListPageHeader title="Example Pod List Page"/>
<ListPageCreateLink to={'/link/to/my/page'}>Create Item</ListPageCreateLink>
</ListPageHeader>
</>
);
};
参数名称 | 描述 |
---|---|
|
链接应指向的字符串位置 |
|
(可选)包含用于确定访问权限的命名空间和种类的对象 |
|
(可选)组件的子元素 |
列表页创建按钮
用于创建按钮的组件。
const exampleList: React.FC<MyProps> = () => {
return (
<>
<ListPageHeader title="Example Pod List Page"/>
<ListPageCreateButton createAccessReview={access}>Create Pod</ListPageCreateButton>
</ListPageHeader>
</>
);
};
参数名称 | 描述 |
---|---|
|
(可选)包含用于确定访问权限的命名空间和种类的对象 |
|
(可选)Patternfly 按钮属性 |
列表页创建下拉菜单
用于创建包含权限检查的包装下拉菜单的组件。
const exampleList: React.FC<MyProps> = () => {
const items = {
SAVE: 'Save',
DELETE: 'Delete',
}
return (
<>
<ListPageHeader title="Example Pod List Page"/>
<ListPageCreateDropdown createAccessReview={access} items={items}>Actions</ListPageCreateDropdown>
</ListPageHeader>
</>
);
};
参数名称 | 描述 |
---|---|
|
要在下拉菜单组件中显示的项目键:ReactNode 对 |
|
单击下拉菜单项的回调函数 |
|
(可选)包含用于确定访问权限的命名空间和种类的对象 |
|
(可选)下拉菜单切换的子元素 |
列表页筛选器
生成列表页筛选器的组件。
// See implementation for more details on RowFilter and FilterValue types
const [staticData, filteredData, onFilterChange] = useListPageFilter(
data,
rowFilters,
staticFilters,
);
// ListPageFilter updates filter state based on user interaction and resulting filtered data can be rendered in an independent component.
return (
<>
<ListPageHeader .../>
<ListPagBody>
<ListPageFilter data={staticData} onFilterChange={onFilterChange} />
<List data={filteredData} />
</ListPageBody>
</>
)
参数名称 | 描述 |
---|---|
|
数据点的数组 |
|
指示数据已加载 |
|
更新筛选器时的回调函数 |
|
(可选)定义可用筛选器选项的 RowFilter 元素数组 |
|
(可选)名称筛选器的占位符 |
|
(可选)标签筛选器的占位符 |
|
(可选)仅显示名称筛选器,而不是名称和标签筛选器。 |
|
(可选)隐藏名称和标签筛选器。 |
|
(可选)列布局对象 |
|
(可选)隐藏列管理的标志 |
使用列表页筛选器
管理 ListPageFilter 组件筛选器状态的 hook。它返回一个元组,其中包含按所有静态筛选器筛选的数据、按所有静态和行筛选器筛选的数据以及更新 rowFilters 的回调函数。
// See implementation for more details on RowFilter and FilterValue types
const [staticData, filteredData, onFilterChange] = useListPageFilter(
data,
rowFilters,
staticFilters,
);
// ListPageFilter updates filter state based on user interaction and resulting filtered data can be rendered in an independent component.
return (
<>
<ListPageHeader .../>
<ListPagBody>
<ListPageFilter data={staticData} onFilterChange={onFilterChange} />
<List data={filteredData} />
</ListPageBody>
</>
)
参数名称 | 描述 |
---|---|
|
数据点的数组 |
|
(可选)定义可用筛选器选项的 RowFilter 元素数组 |
|
(可选)静态应用于数据的 FilterValue 元素数组 |
资源链接
创建指向特定资源类型的链接(带图标徽章)的组件。
<ResourceLink
kind="Pod"
name="testPod"
title={metadata.uid}
/>
参数名称 | 描述 |
---|---|
|
(可选)资源种类,例如 Pod、Deployment、Namespace |
|
(可选)包含组、版本和种类的对象 |
|
(可选)组件的类样式 |
|
(可选)组件的显示名称,如果设置则会覆盖资源名称。 |
|
(可选)标志,用于与子元素内联创建图标徽章和名称。 |
|
(可选)标志,用于创建 Link 对象 - 默认为 true。 |
|
(可选)资源名称 |
|
(可选)要链接到的种类资源的特定命名空间。 |
|
(可选)隐藏图标徽章的标志。 |
|
(可选)链接对象的标题(不显示)。 |
|
(可选)用于测试的标识符。 |
|
(可选)单击组件时的回调函数。 |
|
(可选)如果链接过长则截断的标志。 |
ResourceIcon
用于创建特定资源类型图标徽章的组件。
<ResourceIcon kind="Pod"/>
参数名称 | 描述 |
---|---|
|
(可选)资源种类,例如 Pod、Deployment、Namespace |
|
(可选)包含组、版本和种类的对象 |
|
(可选)组件的类样式 |
useK8sModel
从 redux 中检索提供的 K8sGroupVersionKind 的 k8s 模型的 Hook。它返回一个数组,其中第一项是 k8s 模型,第二项是inFlight
状态。
const Component: React.FC = () => {
const [model, inFlight] = useK8sModel({ group: 'app'; version: 'v1'; kind: 'Deployment' });
return ...
}
参数名称 | 描述 |
---|---|
|
k8s 资源的 group、version、kind。推荐使用 K8sGroupVersionKind,或者可以使用 group、version、kind 的引用(已弃用),例如 group/version/kind (GVK) K8sResourceKindReference。 |
useK8sModels
从 redux 中检索所有当前 k8s 模型的 Hook。它返回一个数组,其中第一项是 k8s 模型列表,第二项是inFlight
状态。
const Component: React.FC = () => {
const [models, inFlight] = UseK8sModels();
return ...
}
useK8sWatchResource
检索 k8s 资源及其加载和错误状态的 Hook。它返回一个数组,第一项是资源(s),第二项是加载状态,第三项是任何错误状态。
const Component: React.FC = () => {
const watchRes = {
...
}
const [data, loaded, error] = useK8sWatchResource(watchRes)
return ...
}
参数名称 | 描述 |
---|---|
|
监视资源所需的选项。 |
useK8sWatchResources
检索 k8s 资源及其各自加载和错误状态的 Hook。它返回一个 map,其中键与 initResouces 中提供的键相同,值具有三个属性:data、loaded 和 error。
const Component: React.FC = () => {
const watchResources = {
'deployment': {...},
'pod': {...}
...
}
const {deployment, pod} = useK8sWatchResources(watchResources)
return ...
}
参数名称 | 描述 |
---|---|
|
资源必须以键值对的形式进行监视,其中键对资源唯一,值是监视相应资源所需的选项。 |
consoleFetch
围绕fetch
的自定义包装器,它添加特定于控制台的标头,并允许重试和超时。它还验证响应状态代码,并在需要时抛出相应的错误或注销用户。它返回一个解析为响应的 promise。
参数名称 | 描述 |
---|---|
|
要获取的 URL |
|
传递给 fetch 的选项 |
|
超时时间(毫秒) |
consoleFetchJSON
围绕fetch
的自定义包装器,它添加特定于控制台的标头,并允许重试和超时。它还验证响应状态代码,并在需要时抛出相应的错误或注销用户。它将响应作为 JSON 对象返回。内部使用consoleFetch
。它返回一个解析为 JSON 对象响应的 promise。
参数名称 | 描述 |
---|---|
|
要获取的 URL |
|
要使用的 HTTP 方法。默认为 GET |
|
传递给 fetch 的选项 |
|
超时时间(毫秒) |
|
要向其发出请求的集群名称。默认为用户选择的活动集群 |
consoleFetchText
围绕fetch
的自定义包装器,它添加特定于控制台的标头,并允许重试和超时。它还验证响应状态代码,并在需要时抛出相应的错误或注销用户。它将响应作为文本返回。内部使用consoleFetch
。它返回一个解析为文本响应的 promise。
参数名称 | 描述 |
---|---|
|
要获取的 URL |
|
传递给 fetch 的选项 |
|
超时时间(毫秒) |
|
要向其发出请求的集群名称。默认为用户选择的活动集群 |
getConsoleRequestHeaders
一个函数,用于使用当前 redux 状态为 API 请求创建模拟和多集群相关的标头。它返回一个对象,其中包含基于 redux 状态的适当的模拟和集群请求标头。
参数名称 | 描述 |
---|---|
|
使用提供的 targetCluster 覆盖当前活动集群 |
k8sGetResource
它根据提供的选项从集群中获取资源。如果提供了名称,则返回一个资源,否则返回与模型匹配的所有资源。它返回一个 promise,该 promise 解析为一个 JSON 对象响应,如果提供了名称,则包含一个资源,否则返回与模型匹配的所有资源。如果失败,promise 将被 HTTP 错误响应拒绝。
参数名称 | 描述 |
---|---|
|
作为键值对传递到 map 中 |
|
k8s 模型 |
|
资源的名称,如果未提供,则查找与模型匹配的所有资源。 |
|
要查找的命名空间,集群范围的资源不应指定此参数。 |
|
如果提供,则作为子路径追加 |
|
要包含在 URL 中的查询参数。 |
|
要使用的 fetch init 对象。这可以包含请求标头、方法、重定向等。有关详细信息,请参见Interface RequestInit。 |
k8sCreateResource
它根据提供的选项在集群中创建资源。它返回一个 promise,该 promise 解析为已创建资源的响应。如果失败,promise 将被 HTTP 错误响应拒绝。
参数名称 | 描述 |
---|---|
|
作为键值对传递到 map 中 |
|
k8s 模型 |
|
要创建的资源的有效负载 |
|
如果提供,则作为子路径追加 |
|
要包含在 URL 中的查询参数。 |
k8sUpdateResource
它根据提供的选项更新集群中的整个资源。当客户端需要完全替换现有资源时,可以使用 k8sUpdate。或者可以使用 k8sPatch 执行部分更新。它返回一个 promise,该 promise 解析为已更新资源的响应。如果失败,promise 将被 HTTP 错误响应拒绝。
参数名称 | 描述 |
---|---|
|
作为键值对传递到 map 中 |
|
k8s 模型 |
|
要更新的 k8s 资源的有效负载 |
|
要查找的命名空间,集群范围的资源不应指定此参数。 |
|
要更新的资源名称。 |
|
如果提供,则作为子路径追加 |
|
要包含在 URL 中的查询参数。 |
k8sPatchResource
它根据提供的选项修补集群中的任何资源。当客户端需要执行部分更新时,可以使用 k8sPatch。或者可以使用 k8sUpdate 完全替换现有资源。有关详细信息,请参见Data Tracker。它返回一个 promise,该 promise 解析为已修补资源的响应。如果失败,promise 将被 HTTP 错误响应拒绝。
参数名称 | 描述 |
---|---|
|
作为键值对传递到 map 中。 |
|
k8s 模型 |
|
要修补的资源。 |
|
仅包含要在现有资源上修补的数据,包括操作、路径和值。 |
|
如果提供,则作为子路径追加。 |
|
要包含在 URL 中的查询参数。 |
k8sDeleteResource
它根据提供的模型和资源从集群中删除资源。垃圾收集基于Foreground
|Background
,可以通过提供的模型中的 propagationPolicy 属性进行配置,也可以在 json 中传递。它返回一个 promise,该 promise 解析为 kind 为 Status 的响应。如果失败,promise 将被 HTTP 错误响应拒绝。
kind: 'DeleteOptions', apiVersion: 'v1', propagationPolicy
参数名称 | 描述 |
---|---|
|
作为键值对传递到 map 中。 |
|
k8s 模型 |
|
要删除的资源。 |
|
如果提供,则作为子路径追加 |
|
要包含在 URL 中的查询参数。 |
|
要使用的 fetch init 对象。这可以包含请求标头、方法、重定向等。有关详细信息,请参见Interface RequestInit。 |
|
如果提供,可以显式控制资源的垃圾收集,否则默认为模型的“propagationPolicy”。 |
k8sListResource
将资源作为数组列在集群中,基于提供的选项。它返回一个解析为响应的promise。
参数名称 | 描述 |
---|---|
|
作为键值对传递到 map 中 |
|
k8s 模型 |
|
要包含在 URL 中的查询参数,并且可以使用键“labelSelector”传递标签选择器。 |
|
要使用的 fetch init 对象。这可以包含请求标头、方法、重定向等。有关详细信息,请参见Interface RequestInit。 |
k8sListResourceItems
与 k8sListResource 相同的接口,但返回子项。它返回模型的 apiVersion,即group/version
。
getAPIVersionForModel
提供 k8s 模型的 apiVersion。
参数名称 | 描述 |
---|---|
|
k8s 模型 |
getGroupVersionKindForResource
提供资源的组、版本和种类。它返回所提供资源的组、版本和种类。如果资源没有 API 组,则返回组“core”。如果资源的 apiVersion 无效,则抛出错误。
参数名称 | 描述 |
---|---|
|
k8s 资源 |
getGroupVersionKindForModel
提供 k8s 模型的组、版本和种类。这将返回所提供模型的组、版本和种类。如果模型没有 apiGroup,则返回组“core”。
参数名称 | 描述 |
---|---|
|
k8s 模型 |
StatusPopupSection
在弹出窗口中显示状态的组件。对于构建console.dashboards/overview/health/resource
扩展非常有用的组件。
<StatusPopupSection
firstColumn={
<>
<span>{title}</span>
<span className="text-secondary">
My Example Item
</span>
</>
}
secondColumn='Status'
>
参数名称 | 描述 |
---|---|
|
弹出窗口第一列的值 |
|
(可选)弹出窗口第二列的值 |
|
(可选)弹出窗口的子元素 |
StatusPopupItem
在状态弹出窗口中使用的状态元素;用于StatusPopupSection
。
<StatusPopupSection
firstColumn='Example'
secondColumn='Status'
>
<StatusPopupItem icon={healthStateMapping[MCGMetrics.state]?.icon}>
Complete
</StatusPopupItem>
<StatusPopupItem icon={healthStateMapping[RGWMetrics.state]?.icon}>
Pending
</StatusPopupItem>
</StatusPopupSection>
参数名称 | 描述 |
---|---|
|
(可选)要显示的文本值 |
|
(可选)要显示的图标 |
|
子元素 |
概述
为仪表盘创建一个包装组件。
<Overview>
<OverviewGrid mainCards={mainCards} leftCards={leftCards} rightCards={rightCards} />
</Overview>
参数名称 | 描述 |
---|---|
|
(可选)div 的样式类 |
|
(可选)仪表盘的元素 |
OverviewGrid
为仪表盘创建网格卡片元素;用于Overview
。
<Overview>
<OverviewGrid mainCards={mainCards} leftCards={leftCards} rightCards={rightCards} />
</Overview>
参数名称 | 描述 |
---|---|
|
网格卡片 |
|
(可选)网格左侧的卡片 |
|
(可选)网格右侧的卡片 |
InventoryItem
创建一个库存卡片项。
return (
<InventoryItem>
<InventoryItemTitle>{title}</InventoryItemTitle>
<InventoryItemBody error={loadError}>
{loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
</InventoryItemBody>
</InventoryItem>
)
参数名称 | 描述 |
---|---|
|
在项目内渲染的元素 |
InventoryItemTitle
创建库存卡片项的标题;用于InventoryItem
。
return (
<InventoryItem>
<InventoryItemTitle>{title}</InventoryItemTitle>
<InventoryItemBody error={loadError}>
{loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
</InventoryItemBody>
</InventoryItem>
)
参数名称 | 描述 |
---|---|
|
在标题内渲染的元素 |
InventoryItemBody
创建库存卡片的主体;用于InventoryCard
,并可与InventoryTitle
一起使用。
return (
<InventoryItem>
<InventoryItemTitle>{title}</InventoryItemTitle>
<InventoryItemBody error={loadError}>
{loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
</InventoryItemBody>
</InventoryItem>
)
参数名称 | 描述 |
---|---|
|
在库存卡片或标题内渲染的元素 |
|
div 的元素 |
InventoryItemStatus
为库存卡片创建一个计数和图标,并带有可选链接地址;用于InventoryItemBody
return (
<InventoryItem>
<InventoryItemTitle>{title}</InventoryItemTitle>
<InventoryItemBody error={loadError}>
{loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
</InventoryItemBody>
</InventoryItem>
)
参数名称 | 描述 |
---|---|
|
要显示的计数 |
|
要显示的图标 |
|
(可选)链接地址 |
InventoryItemLoading
在库存卡片加载时创建一个骨架容器;与InventoryItem
和相关组件一起使用
if (loadError) {
title = <Link to={workerNodesLink}>{t('Worker Nodes')}</Link>;
} else if (!loaded) {
title = <><InventoryItemLoading /><Link to={workerNodesLink}>{t('Worker Nodes')}</Link></>;
}
return (
<InventoryItem>
<InventoryItemTitle>{title}</InventoryItemTitle>
</InventoryItem>
)
useFlag
从 FLAGS redux 状态返回给定特性标志的 Hook。它返回请求的特性标志的布尔值或未定义。
参数名称 | 描述 |
---|---|
|
要返回的特性标志 |
CodeEditor
一个基本的延迟加载代码编辑器,具有悬停帮助和代码补全功能。
<React.Suspense fallback={<LoadingBox />}>
<CodeEditor
value={code}
language="yaml"
/>
</React.Suspense>
参数名称 | 描述 |
---|---|
|
表示要渲染的 yaml 代码的字符串。 |
|
表示编辑器语言的字符串。 |
|
Monaco 编辑器选项。更多详情,请访问 Interface IStandAloneEditorConstructionOptions。 |
|
有效的 CSS 高度值表示的最小编辑器高度。 |
|
布尔值,用于显示编辑器顶部的快捷键。 |
|
在编辑器顶部的工具栏链接部分渲染的 ReactNode 数组。 |
|
代码更改事件的回调函数。 |
|
触发 CTRL/CMD + S 命令时调用的回调函数。 |
|
对 |
ResourceYAMLEditor
一个延迟加载的 Kubernetes 资源 YAML 编辑器,具有悬停帮助和代码补全功能。该组件使用 YAMLEditor,并在其之上添加了更多功能,例如资源更新处理、警报、保存、取消和重新加载按钮、辅助功能等等。除非提供onSave
回调,否则将自动处理资源更新。它应该包装在React.Suspense
组件中。
<React.Suspense fallback={<LoadingBox />}>
<ResourceYAMLEditor
initialResource={resource}
header="Create resource"
onSave={(content) => updateResource(content)}
/>
</React.Suspense>
参数名称 | 描述 |
---|---|
|
表示编辑器要显示的资源的 YAML/对象。此属性仅在初始渲染期间使用。 |
|
在 YAML 编辑器顶部添加标题 |
|
保存按钮的回调函数。传递它会覆盖编辑器对资源执行的默认更新。 |
ResourceEventStream
显示与特定资源相关的事件的组件。
const [resource, loaded, loadError] = useK8sWatchResource(clusterResource);
return <ResourceEventStream resource={resource} />
参数名称 | 描述 |
---|---|
|
一个其相关事件应显示的对象。 |
usePrometheusPoll
为单个查询设置对 Prometheus 的轮询。它返回一个元组,其中包含查询响应、指示响应是否已完成的布尔标志以及请求期间或请求后处理期间遇到的任何错误。
参数名称 | 描述 |
---|---|
|
PrometheusEndpoint 之一(label、query、range、rules、targets) |
|
(可选)Prometheus 查询字符串。如果为空或未定义,则不会启动轮询。 |
|
(可选)轮询延迟间隔 (ms) |
|
(可选)对于 QUERY_RANGE 端点,查询范围的结束时间 |
|
(可选)对于 QUERY_RANGE 端点 |
|
(可选)对于 QUERY_RANGE 端点 |
|
(可选)要附加的搜索参数 |
|
(可选)要附加的搜索参数 |
Timestamp
渲染时间戳的组件。时间戳在 Timestamp 组件的各个实例之间同步。提供的时间戳将根据用户区域设置进行格式化。
参数名称 | 描述 |
---|---|
|
要渲染的时间戳。格式应为 ISO 8601(Kubernetes 使用)、纪元时间戳或 Date 实例。 |
|
渲染组件的简化版本,省略图标和工具提示。 |
|
格式化日期,省略后缀。 |
|
组件的附加类名。 |
useModal
启动模态的 Hook。
const context: AppPage: React.FC = () => {<br/> const [launchModal] = useModal();<br/> const onClick = () => launchModal(ModalComponent);<br/> return (<br/> <Button onClick={onClick}>Launch a Modal</Button><br/> )<br/>}<br/>`
ActionServiceProvider
允许从其他插件接收console.action/provider
扩展类型的贡献的组件。
const context: ActionContext = { 'a-context-id': { dataFromDynamicPlugin } };
...
<ActionServiceProvider context={context}>
{({ actions, options, loaded }) =>
loaded && (
<ActionMenu actions={actions} options={options} variant={ActionMenuVariant.DROPDOWN} />
)
}
</ActionServiceProvider>
参数名称 | 描述 |
---|---|
|
包含 contextId 和可选插件数据的对象 |
NamespaceBar
一个组件,它渲染一个水平工具栏,并在最左侧位置显示一个命名空间下拉菜单。其他组件可以作为子组件传递,并在命名空间下拉菜单的右侧渲染。此组件设计用于页面顶部。它应该用于用户需要能够更改活动命名空间的页面,例如包含 k8s 资源的页面。
const logNamespaceChange = (namespace) => console.log(`New namespace: ${namespace}`);
...
<NamespaceBar onNamespaceChange={logNamespaceChange}>
<NamespaceBarApplicationSelector />
</NamespaceBar>
<Page>
...
参数名称 | 描述 |
---|---|
|
(可选)选择命名空间选项时执行的函数。它接受以字符串形式表示的新命名空间作为其唯一参数。选择选项后,活动命名空间会自动更新,但可以通过此函数应用其他逻辑。更改命名空间时,URL 中的命名空间参数会从之前的命名空间更改为新选择的命名空间。 |
|
(可选)如果设置为 true,则禁用命名空间下拉菜单的布尔标志。此选项仅适用于命名空间下拉菜单,对子组件无效。 |
|
(可选)要在工具栏中命名空间下拉菜单右侧渲染的其他元素。 |
ErrorBoundaryFallbackPage
创建一个全页面的 ErrorBoundaryFallbackPage 组件,用于显示“哦,出错了!”消息以及堆栈跟踪和其他有用的调试信息。这需要与一个组件一起使用。
//in ErrorBoundary component
return (
if (this.state.hasError) {
return <ErrorBoundaryFallbackPage errorMessage={errorString} componentStack={componentStackString}
stack={stackTraceString} title={errorString}/>;
}
return this.props.children;
)
参数名称 | 描述 |
---|---|
|
错误消息的文本描述 |
|
异常的组件跟踪 |
|
异常的堆栈跟踪 |
|
渲染为错误边界页面标题的标题 |
QueryBrowser
一个组件,用于渲染 Prometheus PromQL 查询结果的图表,以及用于与图表交互的控件。
<QueryBrowser
defaultTimespan={15 * 60 * 1000}
namespace={namespace}
pollInterval={30 * 1000}
queries={[
'process_resident_memory_bytes{job="console"}',
'sum(irate(container_network_receive_bytes_total[6h:5m])) by (pod)',
]}
/>
参数名称 | 描述 |
---|---|
|
(可选) 处理 PromQL 查询的 API 端点的基本 URL。如果提供,则使用它代替默认的 API 来获取数据。 |
|
(可选) 为每个数据系列绘制的默认数据样本数量。如果数据系列很多,QueryBrowser 可能会自动选择比这里指定的更少的样本数量。 |
|
(可选) 图表的默认时间跨度(毫秒)- 默认值为 1,800,000(30 分钟)。 |
|
(可选) 禁用(不显示)具有这些精确标签/值对的数据系列。 |
|
(可选) 用于禁用图表缩放控件的标志。 |
|
(可选) 可选地过滤返回的数据系列,只包含与这些标签/值对匹配的数据系列。 |
|
(可选) 设置显示时间范围的结束时间,而不是显示直到当前时间的数据。 |
|
(可选) 返回一个字符串的函数,该字符串用作单个数据系列的标题。 |
|
(可选) 用于渲染到另一个页面的链接的组件(例如,获取有关此查询的更多信息)。 |
|
(可选) 用于隐藏用于更改图表时间跨度等的图表控件的标志。 |
|
(可选) 用于显示堆叠图而不是折线图的标志。如果设置了 showStackedControl,用户仍然可以切换到折线图。 |
|
(可选) 如果提供,则只返回此命名空间的数据(只有具有此命名空间标签的系列)。 |
|
(可选) 当图表被缩放时调用的回调函数。 |
|
(可选) 如果设置,则确定多久更新一次图表以显示最新数据(以毫秒为单位)。 |
|
要运行的 PromQL 查询数组,并在图表中显示结果。 |
|
(可选) 用于启用在图表下方显示图例的标志。 |
|
用于启用显示一个图表控件,用于在堆叠图模式和折线图模式之间切换的标志。 |
|
(可选) 图表应覆盖的时间跨度(以毫秒为单位)。 |
|
(可选) 在 Y 轴和工具提示中显示的单位。 |
useAnnotationsModal
一个 Hook,提供一个回调函数,用于启动一个用于编辑 Kubernetes 资源注释的模态框。
const PodAnnotationsButton = ({ pod }) => {
const { t } = useTranslation();
const launchAnnotationsModal = useAnnotationsModal<PodKind>(pod);
return <button onClick={launchAnnotationsModal}>{t('Edit Pod Annotations')}</button>
}
参数名称 | 描述 |
---|---|
|
要编辑其注释的资源,一个 K8sResourceCommon 类型的对象。 |
一个函数,用于启动一个用于编辑资源注释的模态框。
useDeleteModal
一个 Hook,提供一个回调函数,用于启动一个用于删除资源的模态框。
const DeletePodButton = ({ pod }) => {
const { t } = useTranslation();
const launchDeleteModal = useDeleteModal<PodKind>(pod);
return <button onClick={launchDeleteModal}>{t('Delete Pod')}</button>
}
参数名称 | 描述 |
---|---|
|
要删除的资源。 |
|
(可选) 删除资源后重定向到的位置。 |
|
(可选) 在模态框中显示的消息。 |
|
(可选) 在删除按钮上显示的文本。 |
|
(可选) 用于删除所有相同类型资源的函数。 |
一个函数,用于启动一个用于删除资源的模态框。
useLabelsModel
一个 Hook,提供一个回调函数,用于启动一个用于编辑 Kubernetes 资源标签的模态框。
const PodLabelsButton = ({ pod }) => {
const { t } = useTranslation();
const launchLabelsModal = useLabelsModal<PodKind>(pod);
return <button onClick={launchLabelsModal}>{t('Edit Pod Labels')}</button>
}
参数名称 | 描述 |
---|---|
|
要编辑其标签的资源,一个 K8sResourceCommon 类型的对象。 |
一个函数,用于启动一个用于编辑资源标签的模态框。
useActiveNamespace
提供当前活动命名空间和设置活动命名空间的回调函数的 Hook。
const Component: React.FC = (props) => {
const [activeNamespace, setActiveNamespace] = useActiveNamespace();
return <select
value={activeNamespace}
onChange={(e) => setActiveNamespace(e.target.value)}
>
{
// ...namespace options
}
</select>
}
包含当前活动命名空间和设置器回调函数的元组。
useUserSettings
提供用户设置值和设置用户设置值的回调函数的 Hook。
const Component: React.FC = (props) => {
const [state, setState, loaded] = useUserSettings(
'devconsole.addPage.showDetails',
true,
true,
);
return loaded ? (
<WrappedComponent {...props} userSettingState={state} setUserSettingState={setState} />
) : null;
};
包含用户设置值、设置器回调函数和已加载布尔值的元组。
useQuickStartContext
提供当前快速入门上下文值的 Hook。这允许插件与控制台快速入门功能互操作。
const OpenQuickStartButton = ({ quickStartId }) => {
const { setActiveQuickStart } = useQuickStartContext();
const onClick = React.useCallback(() => {
setActiveQuickStart(quickStartId);
}, [quickStartId]);
return <button onClick={onClick}>{t('Open Quick Start')}</button>
};
快速入门上下文值对象。
PerspectiveContext
已弃用:请改用提供的 `usePerspectiveContext`。创建透视图上下文。
参数名称 | 描述 |
---|---|
|
包含活动透视图和设置器的对象 |
useAccessReviewAllowed
已弃用:请改用 `@console/dynamic-plugin-sdk` 中的 `useAccessReview`。提供关于用户对给定资源的访问权限的允许状态的 Hook。它返回 `isAllowed` 布尔值。
参数名称 | 描述 |
---|---|
|
用于访问审核的资源属性 |
|
模拟身份详情 |
useSafetyFirst
已弃用:此 Hook 与控制台功能无关。确保在给定组件可能被卸载的情况下安全异步设置 React 状态的 Hook。它返回一个包含状态值及其设置函数对的数组。
参数名称 | 描述 |
---|---|
|
初始状态值 |
YAMLEditor
已弃用:一个基本的延迟加载 YAML 编辑器,具有悬停帮助和自动完成功能。
<React.Suspense fallback={<LoadingBox />}>
<YAMLEditor
value={code}
/>
</React.Suspense>
参数名称 | 描述 |
---|---|
|
表示要渲染的 yaml 代码的字符串。 |
|
Monaco 编辑器选项。 |
|
有效的 CSS 高度值表示的最小编辑器高度。 |
|
布尔值,用于显示编辑器顶部的快捷键。 |
|
在编辑器顶部的工具栏链接部分渲染的 ReactNode 数组。 |
|
代码更改事件的回调函数。 |
|
触发 CTRL/CMD + S 命令时调用的回调函数。 |
|
对 ` { editor?: IStandaloneCodeEditor }` 的 React 引用。使用 `editor` 属性,您可以访问所有用于控制编辑器的的方法。 |
如果您在加载插件时遇到问题,请参考此故障排除提示列表。
验证您是否已在控制台 Operator 配置中启用您的插件,并且您的插件名称是通过运行以下命令输出的
$ oc get console.operator.openshift.io cluster -o jsonpath='{.spec.plugins}'
在**管理员**透视图的**概述**页面上的状态卡中验证已启用的插件。如果最近启用了插件,则必须刷新浏览器。
通过以下方式验证您的插件服务是否健康:
验证您的插件 Pod 状态正在运行,并且您的容器已准备就绪。
验证服务标签选择器与 Pod 匹配,并且目标端口正确。
在控制台 Pod 或集群上的另一个 Pod 上的终端中,使用 Curl 命令从服务中获取 `plugin-manifest.json`。
验证您的 `ConsolePlugin` 资源名称(`consolePlugin.name`)与 `package.json` 中使用的插件名称匹配。
验证您的服务名称、命名空间、端口和路径在 `ConsolePlugin` 资源中是否正确声明。
验证您的插件服务是否使用 HTTPS 和服务提供证书。
验证控制台 Pod 日志中的任何证书或连接错误。
验证您的插件依赖的特性标志是否未被禁用。
验证您的插件在 `package.json` 中没有任何未满足的 `consolePlugin.dependencies`。
这可能包括控制台版本依赖项或对其他插件的依赖项。在浏览器中过滤您的插件名称的 JS 控制台以查看记录的消息。
验证导航扩展透视图或部分 ID 中没有任何错别字。
如果 ID 不正确,您的插件可能会加载,但导航项缺失。尝试通过编辑 URL 直接导航到插件页面。
验证没有任何网络策略阻止从控制台 Pod 到您的插件服务的流量。
如有必要,调整网络策略以允许 openshift-console 命名空间中的控制台 Pod 向您的服务发出请求。
在浏览器开发者工具的**控制台**选项卡中验证要加载的动态插件列表。
评估 `window.SERVER_FLAGS.consolePlugins` 以查看控制台前端的动态插件。