fix: add worker default selection is incorrect
This commit is contained in:
@@ -29,26 +29,36 @@ const useAddWorker = (props: {
|
|||||||
cluster_id: null
|
cluster_id: null
|
||||||
});
|
});
|
||||||
|
|
||||||
const handleAddWorker = async (row: ClusterListItem) => {
|
const handleAddWorker = async (row: ClusterListItem, fromWorker = false) => {
|
||||||
try {
|
try {
|
||||||
|
if (!row?.id) return;
|
||||||
|
|
||||||
// set the title based on provider type
|
// set the title based on provider type
|
||||||
const title =
|
let title =
|
||||||
row.provider === ProviderValueMap.Docker
|
row.provider === ProviderValueMap.Docker
|
||||||
? intl.formatMessage({ id: 'resources.button.create' })
|
? intl.formatMessage({ id: 'resources.button.create' })
|
||||||
: intl.formatMessage({ id: 'clusters.button.register' });
|
: intl.formatMessage({ id: 'clusters.button.register' });
|
||||||
|
|
||||||
if (!row?.id) return;
|
let clusterId: number | null = [
|
||||||
|
ProviderValueMap.Docker,
|
||||||
|
ProviderValueMap.Kubernetes
|
||||||
|
].includes(row.provider as string)
|
||||||
|
? row.id
|
||||||
|
: null;
|
||||||
|
|
||||||
|
if (fromWorker) {
|
||||||
|
title = intl.formatMessage({ id: 'resources.button.create' });
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fromWorker && row.provider === ProviderValueMap.Kubernetes) {
|
||||||
|
clusterId = null;
|
||||||
|
}
|
||||||
|
|
||||||
setOpenAddWorker({
|
setOpenAddWorker({
|
||||||
open: true,
|
open: true,
|
||||||
title: title,
|
title: title,
|
||||||
provider: row.provider as ProviderType,
|
provider: row.provider as ProviderType,
|
||||||
cluster_id: [
|
cluster_id: clusterId
|
||||||
ProviderValueMap.Docker,
|
|
||||||
ProviderValueMap.Kubernetes
|
|
||||||
].includes(row.provider as string)
|
|
||||||
? row.id
|
|
||||||
: null
|
|
||||||
});
|
});
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
message.error(error?.message || 'Failed to fetch cluster token');
|
message.error(error?.message || 'Failed to fetch cluster token');
|
||||||
@@ -83,8 +93,7 @@ const useAddWorker = (props: {
|
|||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
const checkDefaultCluster = (
|
const checkDefaultCluster = (
|
||||||
clusterList: Global.BaseOption<number, ClusterListItem>[],
|
clusterList: Global.BaseOption<number, ClusterListItem>[]
|
||||||
includeDigitalOcean?: boolean
|
|
||||||
) => {
|
) => {
|
||||||
// select default and ready cluster first, digitalocean no READY state
|
// select default and ready cluster first, digitalocean no READY state
|
||||||
let currentData = clusterList.find(
|
let currentData = clusterList.find(
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import useTableFetch from '@/hooks/use-table-fetch';
|
|||||||
import PageBox from '@/pages/_components/page-box';
|
import PageBox from '@/pages/_components/page-box';
|
||||||
import { queryClusterList } from '@/pages/cluster-management/apis';
|
import { queryClusterList } from '@/pages/cluster-management/apis';
|
||||||
import { DockerStepsFromWorker } from '@/pages/cluster-management/components/add-worker/config';
|
import { DockerStepsFromWorker } from '@/pages/cluster-management/components/add-worker/config';
|
||||||
import { ProviderValueMap } from '@/pages/cluster-management/config';
|
|
||||||
import { ClusterListItem } from '@/pages/cluster-management/config/types';
|
import { ClusterListItem } from '@/pages/cluster-management/config/types';
|
||||||
import useAddWorker from '@/pages/cluster-management/hooks/use-add-worker';
|
import useAddWorker from '@/pages/cluster-management/hooks/use-add-worker';
|
||||||
import useNoResourceResult from '@/pages/llmodels/hooks/use-no-resource-result';
|
import useNoResourceResult from '@/pages/llmodels/hooks/use-no-resource-result';
|
||||||
@@ -192,13 +191,9 @@ const Workers: React.FC = () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const handleOnAddWorker = () => {
|
const handleOnAddWorker = () => {
|
||||||
if (clusterData.list.length > 0) {
|
const targetCluster = checkDefaultCluster(clusterData.list);
|
||||||
// filter only docker clusters for add worker
|
if (targetCluster) {
|
||||||
const list = clusterData.list.filter(
|
handleAddWorker(targetCluster as ClusterListItem, true);
|
||||||
(item) => item.provider === ProviderValueMap.Docker
|
|
||||||
);
|
|
||||||
const targetCluster = checkDefaultCluster(list);
|
|
||||||
handleAddWorker(targetCluster as ClusterListItem);
|
|
||||||
} else {
|
} else {
|
||||||
message.info(intl.formatMessage({ id: 'noresult.resources.cluster' }));
|
message.info(intl.formatMessage({ id: 'noresult.resources.cluster' }));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user