mirror of https://github.com/rancher/dashboard.git
29 lines
934 B
JavaScript
29 lines
934 B
JavaScript
import semver from 'semver';
|
|
import { CAPI } from '@/config/labels-annotations';
|
|
import { VIRTUAL_HARVESTER_PROVIDER } from '@/config/types';
|
|
|
|
// Filter out any clusters that are not Kubernetes Clusters
|
|
// Currently this removes Harvester clusters
|
|
export function filterOnlyKubernetesClusters(mgmtClusters) {
|
|
return mgmtClusters.filter((c) => {
|
|
return !c.isHarvester;
|
|
});
|
|
}
|
|
|
|
export function isHarvesterCluster(mgmtCluster) {
|
|
// Use the provider if it is set otherwise use the label
|
|
const provider = mgmtCluster?.status?.provider || mgmtCluster?.metadata?.labels?.[CAPI.PROVIDER];
|
|
|
|
return provider === VIRTUAL_HARVESTER_PROVIDER;
|
|
}
|
|
|
|
export function isHarvesterSatisfiesVersion(version = '') {
|
|
if (version.startsWith('v1.21.4+rke2r')) {
|
|
const rkeVersion = version.replace(/.+rke2r/i, '');
|
|
|
|
return Number(rkeVersion) >= 4;
|
|
} else {
|
|
return semver.satisfies(semver.coerce(version), '>=v1.21.4+rke2r4');
|
|
}
|
|
}
|