fix(striker-ui): fetch provision server input data from back-end

main
Tsu-ba-me 3 years ago
parent 011615e68f
commit c074f548ed
  1. 246
      striker-ui/components/ProvisionServerDialog.tsx

@ -189,177 +189,6 @@ type UpdateLimitsFunction = (options?: {
formattedMaxVDSizes: string[];
};
const MOCK_DATA = {
anvils: [
{
anvilUUID: 'ad590bcb-24e1-4592-8cd1-9cd6229b7bf2',
anvilName: 'yan-anvil-03',
anvilDescription: "Yan's test Anvil specialized for breaking things.",
anvilTotalCPUCores: 4,
anvilTotalMemory: '17179869184',
anvilTotalAllocatedCPUCores: 1,
anvilTotalAllocatedMemory: '1073741824',
anvilTotalAvailableCPUCores: 3,
anvilTotalAvailableMemory: '7516192768',
hosts: [
{
hostUUID: 'c9b25b77-f9a1-41fa-9f04-677c58d0d9e1',
hostName: 'yan-a03n01.alteeve.com',
hostCPUCores: 4,
hostMemory: '17179869184',
},
{
hostUUID: 'c0a1c2c8-3418-4dbc-80c6-c4c0cea6a511',
hostName: 'yan-a03n02.alteeve.com',
hostCPUCores: 4,
hostMemory: '17179869184',
},
{
hostUUID: '8815a6dd-239d-4f8d-b248-ac8a5cac4a30',
hostName: 'yan-a03dr01.alteeve.com',
hostCPUCores: 4,
hostMemory: '17179869184',
},
],
servers: [
{
serverUUID: 'd128c15a-0e21-4ba3-9084-1972dad31bd4',
serverName: 'alpine-x86_64-01',
serverCPUCores: 1,
serverMemory: '1073741824',
},
],
storageGroups: [
{
storageGroupUUID: 'b594f417-852a-4bd4-a215-fae32d226b0b',
storageGroupName: 'Storage group 1',
storageGroupSize: '137325707264',
storageGroupFree: '42941284352',
},
],
files: [
{
fileUUID: '5d6fc6d9-03f8-40ec-9bff-38e31b3a5bc5',
fileName: 'alpine-virt-3.15.0-x86_64.iso',
},
],
},
{
anvilUUID: '85e0fd96-ea38-403d-992f-441d20cad679',
anvilName: 'mock-anvil-01',
anvilDescription: 'Randomly generated mock Anvil #1.',
anvilTotalCPUCores: 8,
anvilTotalMemory: '34359738368',
anvilTotalAllocatedCPUCores: 0,
anvilTotalAllocatedMemory: '2147483648',
anvilTotalAvailableCPUCores: 8,
anvilTotalAvailableMemory: '32212254720',
hosts: [
{
hostUUID: '2198ae4a-db3a-4685-8d98-db56af75d53d',
hostName: 'mock-a03n01.alteeve.com',
hostCPUCores: 8,
hostMemory: '34359738368',
},
{
hostUUID: '928f12b4-1be0-4872-adbc-f78579323d50',
hostName: 'mock-a03n02.alteeve.com',
hostCPUCores: 8,
hostMemory: '34359738368',
},
{
hostUUID: 'c4837341-fd09-4b36-b1f0-e16115b704b4',
hostName: 'mock-a03dr01.alteeve.com',
hostCPUCores: 8,
hostMemory: '34359738368',
},
],
servers: [],
storageGroups: [
{
storageGroupUUID: '271651b0-c064-401b-9391-549bbced2383',
storageGroupName: 'Mock storage group 1',
storageGroupSize: '274651414528',
storageGroupFree: '85882568704',
},
{
storageGroupUUID: '1d57d618-9c6a-4fda-bcc3-d9014ea55161',
storageGroupName: 'Mock storage group 2',
storageGroupSize: '205988560896',
storageGroupFree: '171765137408',
},
],
files: [
{
fileUUID: '5d6fc6d9-03f8-40ec-9bff-38e31b3a5bc5',
fileName: 'alpine-virt-3.15.0-x86_64.iso',
},
],
},
{
anvilUUID: '68470d36-e46b-44a5-b2cd-d57b2e7b5ddb',
anvilName: 'mock-anvil-02',
anvilDescription: 'Randomly generated mock Anvil #2.',
anvilTotalCPUCores: 16,
anvilTotalMemory: '1234567890',
anvilTotalAllocatedCPUCores: 7,
anvilTotalAllocatedMemory: '12345',
anvilTotalAvailableCPUCores: 9,
anvilTotalAvailableMemory: '1234555545',
hosts: [
{
hostUUID: 'ee1f4852-b3bc-44ca-93b7-8000c3063292',
hostName: 'mock-a03n01.alteeve.com',
hostCPUCores: 16,
hostMemory: '1234567890',
},
{
hostUUID: '26f9d3c4-0f91-4266-9f6f-1309e521c693',
hostName: 'mock-a03n02.alteeve.com',
hostCPUCores: 16,
hostMemory: '1234567890',
},
{
hostUUID: 'eb1b1bd6-2caa-4907-ac68-7dba465b7a67',
hostName: 'mock-a03dr01.alteeve.com',
hostCPUCores: 16,
hostMemory: '1234567890',
},
],
servers: [],
storageGroups: [],
files: [],
},
],
osList: [
'os_list_almalinux8,AlmaLinux 8',
'os_list_alpinelinux3.14,Alpine Linux 3.14',
'os_list_alt.p10,ALT p10 StarterKits',
'os_list_alt9.1,ALT 9.1',
'os_list_alt9.2,ALT 9.2',
'os_list_centos-stream9,CentOS Stream 9',
'os_list_cirros0.5.0,CirrOS 0.5.0',
'os_list_cirros0.5.1,CirrOS 0.5.1',
'os_list_cirros0.5.2,CirrOS 0.5.2',
'os_list_debian11,Debian 11',
'os_list_fedora34,Fedora 34',
'os_list_freebsd13.0,FreeBSD 13.0',
'os_list_haikur1beta2,Haiku R1/Beta2',
'os_list_haikur1beta3,Haiku R1/Beta3',
'os_list_mageia8,Mageia 8',
'os_list_nixos-21.05,NixOS 21.05',
'os_list_openbsd6.8,OpenBSD 6.8',
'os_list_openbsd6.9,OpenBSD 6.9',
'os_list_opensuse15.3,openSUSE Leap 15.3',
'os_list_rhel8.5,Red Hat Enterprise Linux 8.5',
'os_list_silverblue34,Fedora Silverblue 34',
'os_list_sle15sp3,SUSE Linux Enterprise 15 SP3',
'os_list_slem5.0,SUSE Linux Enterprise Micro',
'os_list_ubuntu21.04,Ubuntu 21.04',
'os_list_win2k22,Microsoft Windows Server 2022',
],
};
const BIGINT_ZERO = BigInt(0);
const DATA_SIZE_UNIT_SELECT_ITEMS: SelectItem<DataSizeUnit>[] = [
@ -1464,42 +1293,51 @@ const ProvisionServerDialog = ({
};
useEffect(() => {
const data = MOCK_DATA;
mainAxiosInstance
.get('/anvil', {
params: {
anvilUUIDs: 'all',
isForProvisionServer: true,
},
})
.then(({ data: stringData }) => {
const data = JSON.parse(stringData);
const {
anvils: ueAllAnvils,
anvilSelectItems: ueAnvilSelectItems,
anvilUUIDMapToData: ueAnvilUUIDMapToData,
fileSelectItems: ueFileSelectItems,
fileUUIDMapToData: ueFileUUIDMapToData,
storageGroupSelectItems: ueStorageGroupSelectItems,
storageGroupUUIDMapToData: ueStorageGroupUUIDMapToData,
} = organizeAnvils(data.anvils);
setAllAnvils(ueAllAnvils);
setAnvilUUIDMapToData(ueAnvilUUIDMapToData);
setFileUUIDMapToData(ueFileUUIDMapToData);
setStorageGroupUUIDMapToData(ueStorageGroupUUIDMapToData);
setAnvilSelectItems(ueAnvilSelectItems);
setFileSelectItems(ueFileSelectItems);
setStorageGroupSelectItems(ueStorageGroupSelectItems);
initLimits({
allAnvils: ueAllAnvils,
storageGroupUUIDMapToData: ueStorageGroupUUIDMapToData,
});
const {
anvils: ueAllAnvils,
anvilSelectItems: ueAnvilSelectItems,
anvilUUIDMapToData: ueAnvilUUIDMapToData,
fileSelectItems: ueFileSelectItems,
fileUUIDMapToData: ueFileUUIDMapToData,
storageGroupSelectItems: ueStorageGroupSelectItems,
storageGroupUUIDMapToData: ueStorageGroupUUIDMapToData,
} = organizeAnvils(data.anvils);
setAllAnvils(ueAllAnvils);
setAnvilUUIDMapToData(ueAnvilUUIDMapToData);
setFileUUIDMapToData(ueFileUUIDMapToData);
setStorageGroupUUIDMapToData(ueStorageGroupUUIDMapToData);
setAnvilSelectItems(ueAnvilSelectItems);
setFileSelectItems(ueFileSelectItems);
setStorageGroupSelectItems(ueStorageGroupSelectItems);
initLimits({
allAnvils: ueAllAnvils,
storageGroupUUIDMapToData: ueStorageGroupUUIDMapToData,
});
setOSAutocompleteOptions(
data.osList.map((keyValuePair) => {
const [osKey, osValue] = keyValuePair.split(',');
setOSAutocompleteOptions(
data.osList.map((keyValuePair: string) => {
const [osKey, osValue] = keyValuePair.split(',');
return {
label: osValue,
key: osKey,
};
}),
);
return {
label: osValue,
key: osKey,
};
}),
);
});
}, [initLimits]);
return (

Loading…
Cancel
Save