From 6f9c92f16a24971f9ad817dbee72a9b2463df8cc Mon Sep 17 00:00:00 2001 From: Francesco Torchia Date: Tue, 12 Nov 2024 13:12:47 +0100 Subject: [PATCH 1/2] Define Virtualization Management table headers; They will be used in prod build Signed-off-by: Francesco Torchia --- pkg/harvester/config/harvester-manager.js | 13 ++------ pkg/harvester/config/table-headers.js | 11 +++++++ .../harvesterhci.io.management.cluster.vue | 31 +++++++++++++++++++ 3 files changed, 44 insertions(+), 11 deletions(-) diff --git a/pkg/harvester/config/harvester-manager.js b/pkg/harvester/config/harvester-manager.js index 8a4dae81..2f5167dc 100644 --- a/pkg/harvester/config/harvester-manager.js +++ b/pkg/harvester/config/harvester-manager.js @@ -1,6 +1,7 @@ import { HCI, MANAGEMENT, CAPI } from '@shell/config/types'; import { HARVESTER, MULTI_CLUSTER } from '@shell/store/features'; import { STATE, NAME as NAME_COL, AGE, VERSION } from '@shell/config/table-headers'; +import { MACHINE_POOLS } from '../config/table-headers'; import { allHash } from '@shell/utils/promise'; import { BLANK_CLUSTER } from '@shell/store/store-types.js'; @@ -8,16 +9,6 @@ export const PRODUCT_NAME = 'harvester-manager'; export const NAME = 'harvesterManager'; -const MACHINE_POOLS = { - name: 'summary', - labelKey: 'tableHeaders.machines', - sort: false, - search: false, - value: 'nodes.length', - align: 'center', - width: 100, -}; - const harvesterClustersLocation = { name: 'c-cluster-product-resource', params: { @@ -56,7 +47,7 @@ export function init($plugin, store) { name: 'harvesterVersion', sort: 'harvesterVersion', labelKey: 'harvesterManager.tableHeaders.harvesterVersion', - value: 'HarvesterVersion', + value: 'harvesterVersion', getValue: (row) => row.harvesterVersion }, { diff --git a/pkg/harvester/config/table-headers.js b/pkg/harvester/config/table-headers.js index 05f07425..2c57035b 100644 --- a/pkg/harvester/config/table-headers.js +++ b/pkg/harvester/config/table-headers.js @@ -77,3 +77,14 @@ export const VM_SCHEDULE_TYPE = { sort: 'spec.vmbackup.type', align: 'center', }; + +// The MACHINE_POOLS column in Virtualization Management list page +export const MACHINE_POOLS = { + name: 'summary', + labelKey: 'tableHeaders.machines', + sort: false, + search: false, + value: 'nodes.length', + align: 'center', + width: 100, +}; diff --git a/pkg/harvester/list/harvesterhci.io.management.cluster.vue b/pkg/harvester/list/harvesterhci.io.management.cluster.vue index a0633dff..65182dc2 100644 --- a/pkg/harvester/list/harvesterhci.io.management.cluster.vue +++ b/pkg/harvester/list/harvesterhci.io.management.cluster.vue @@ -8,6 +8,8 @@ import { HARVESTER_NAME as VIRTUAL } from '@shell/config/features'; import { CAPI, HCI, MANAGEMENT } from '@shell/config/types'; import { isHarvesterCluster } from '@shell/utils/cluster'; import { allHash } from '@shell/utils/promise'; +import { STATE, NAME as NAME_COL, AGE, VERSION } from '@shell/config/table-headers'; +import { MACHINE_POOLS } from '../config/table-headers'; export default { components: { @@ -56,6 +58,34 @@ export default { }, computed: { + headers() { + return [ + STATE, + NAME_COL, + { + name: 'harvesterVersion', + sort: 'harvesterVersion', + labelKey: 'harvesterManager.tableHeaders.harvesterVersion', + value: 'harvesterVersion', + getValue: (row) => row.harvesterVersion + }, + { + ...VERSION, + labelKey: 'harvesterManager.tableHeaders.kubernetesVersion', + value: 'kubernetesVersion', + getValue: (row) => row.kubernetesVersion + }, + MACHINE_POOLS, + AGE, + { + name: 'harvester', + label: ' ', + align: 'right', + width: 65, + }, + ]; + }, + importLocation() { return { name: 'c-cluster-product-resource-create', @@ -144,6 +174,7 @@ export default { Date: Tue, 12 Nov 2024 13:46:01 +0100 Subject: [PATCH 2/2] Remove header definition from config/harvester-manager.js Signed-off-by: Francesco Torchia --- pkg/harvester/config/harvester-manager.js | 29 +---------------------- 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/pkg/harvester/config/harvester-manager.js b/pkg/harvester/config/harvester-manager.js index 2f5167dc..e65a51f2 100644 --- a/pkg/harvester/config/harvester-manager.js +++ b/pkg/harvester/config/harvester-manager.js @@ -1,7 +1,5 @@ import { HCI, MANAGEMENT, CAPI } from '@shell/config/types'; import { HARVESTER, MULTI_CLUSTER } from '@shell/store/features'; -import { STATE, NAME as NAME_COL, AGE, VERSION } from '@shell/config/table-headers'; -import { MACHINE_POOLS } from '../config/table-headers'; import { allHash } from '@shell/utils/promise'; import { BLANK_CLUSTER } from '@shell/store/store-types.js'; @@ -22,7 +20,6 @@ export function init($plugin, store) { const { product, basicType, - headers, spoofedType, configureType } = $plugin.DSL(store, NAME); @@ -40,31 +37,7 @@ export function init($plugin, store) { }); configureType(HCI.CLUSTER, { showListMasthead: false }); - headers(HCI.CLUSTER, [ - STATE, - NAME_COL, - { - name: 'harvesterVersion', - sort: 'harvesterVersion', - labelKey: 'harvesterManager.tableHeaders.harvesterVersion', - value: 'harvesterVersion', - getValue: (row) => row.harvesterVersion - }, - { - ...VERSION, - labelKey: 'harvesterManager.tableHeaders.kubernetesVersion', - value: 'kubernetesVersion', - getValue: (row) => row.kubernetesVersion - }, - MACHINE_POOLS, - AGE, - { - name: 'harvester', - label: ' ', - align: 'right', - width: 65, - }, - ]); + basicType([HCI.CLUSTER]); spoofedType({ labelKey: 'harvesterManager.cluster.label',