Harvester Web Site or read the the Harvester Docs
description: Harvester is a modern Hyperconverged infrastructure (HCI) solution built for bare metal servers using enterprise-grade open source technologies including Kubernetes, Kubevirt and Longhorn.
- supportMessage: Harvester UI Extension only supports Harvester cluster version >= 1.3.0
+ supportMessage: Harvester ui extension only supports Harvester cluster version greater or equal to 1.3.0
plugins:
loadError: Error loading harvester plugin
rke:
diff --git a/pkg/harvester/list/harvesterhci.io.management.cluster.vue b/pkg/harvester/list/harvesterhci.io.management.cluster.vue
index ac52bc64..8626b8ef 100644
--- a/pkg/harvester/list/harvesterhci.io.management.cluster.vue
+++ b/pkg/harvester/list/harvesterhci.io.management.cluster.vue
@@ -87,16 +87,6 @@ export default {
},
methods: {
- disableClusterLink(row) {
- // eslint-disable-next-line no-console
- console.log('🚀 ~ disableClusterLink ~ row:', row);
- if (!row.isSupportedHarvesterVersion) {
- return true;
- }
-
- return this.navigating ? true : null;
- },
-
async goToCluster(row) {
const timeout = setTimeout(() => {
// Don't show loading indicator for quickly fetched plugins
@@ -156,9 +146,9 @@ export default {
|
{{ row.nameDisplay }}
diff --git a/pkg/harvester/models/harvesterhci.io.management.cluster.js b/pkg/harvester/models/harvesterhci.io.management.cluster.js
index 758dae60..020a31ec 100644
--- a/pkg/harvester/models/harvesterhci.io.management.cluster.js
+++ b/pkg/harvester/models/harvesterhci.io.management.cluster.js
@@ -4,8 +4,14 @@ import { HARVESTER_NAME, HARVESTER_NAME as VIRTUAL } from '@shell/config/feature
import { SETTING } from '@shell/config/settings';
import semver from 'semver';
import { serverVersion } from '../utils/feature-flags';
+import { colorForState, stateDisplay, STATES_ENUM } from '@shell/plugins/dashboard-store/resource-class';
+
export default class HciCluster extends ProvCluster {
get stateObj() {
+ if (!this.isSupportedHarvesterVersion) {
+ return { error: true, message: this.t('harvesterManager.cluster.supportMessage') };
+ }
+
return this._stateObj;
}
@@ -30,12 +36,20 @@ export default class HciCluster extends ProvCluster {
return false;
}
- get stateDescription() {
+ get stateColor() {
if (!this.isSupportedHarvesterVersion) {
- return this.t('harvesterManager.cluster.supportMessage');
+ return colorForState(STATES_ENUM.DENIED);
}
- return '';
+ return colorForState(this.state);
+ }
+
+ get stateDisplay() {
+ if (!this.isSupportedHarvesterVersion) {
+ return stateDisplay(STATES_ENUM.DENIED);
+ }
+
+ return stateDisplay(this.state);
}
/**
|