diff --git a/webui/src/components/Appliance/Appliances.vue b/webui/src/components/Appliance/Appliances.vue
index 6b0ddba..6ca6792 100644
--- a/webui/src/components/Appliance/Appliances.vue
+++ b/webui/src/components/Appliance/Appliances.vue
@@ -97,7 +97,8 @@
blade.ipAddress,
blade.port,
Number(blade.totalMemoryAvailableMiB),
- Number(blade.totalMemoryAllocatedMiB)
+ Number(blade.totalMemoryAllocatedMiB),
+ blade.status
)
"
>
@@ -168,6 +169,20 @@
service running on OpenBMC.
+
+ Status
+ {{ selectedBladeStatus }}
+
+
+ {{
+ statusIcon
+ }}
+
+
+
Appliance Id
{{ selectedApplianceId }}
+
+
+ mdi-account-circle
+
+
Blade Id
{{ selectedBladeId }}
+
+
+ mdi-shield-account
+
+
Ip Address
{{ selectedBladeIp + ":" + selectedBladePort }}
+
+
+ mdi-ip
+
+
@@ -1224,7 +1254,8 @@ export default {
defaultBlade!.ipAddress,
defaultBlade!.port,
Number(defaultBlade!.totalMemoryAvailableMiB),
- Number(defaultBlade!.totalMemoryAllocatedMiB)
+ Number(defaultBlade!.totalMemoryAllocatedMiB),
+ defaultBlade!.status
);
}
this.dialogAddBladeWait = false;
@@ -1281,7 +1312,8 @@ export default {
defaultBlade.ipAddress,
defaultBlade.port,
Number(defaultBlade.totalMemoryAvailableMiB),
- Number(defaultBlade.totalMemoryAllocatedMiB)
+ Number(defaultBlade.totalMemoryAllocatedMiB),
+ defaultBlade.status
);
}
this.dialogDeleteBladeWait = false;
@@ -1444,7 +1476,8 @@ export default {
selectedBlade.ipAddress,
selectedBlade.port,
Number(selectedBlade.totalMemoryAvailableMiB),
- Number(selectedBlade.totalMemoryAllocatedMiB)
+ Number(selectedBlade.totalMemoryAllocatedMiB),
+ selectedBlade.status
);
// Update the URL with the first blade's ID
updateUrlWithBladeId(newVal, selectedBlade.id);
@@ -1496,6 +1529,17 @@ export default {
const selectedBladeId = computed(() => bladeStore.selectedBladeId);
const selectedBladeIp = computed(() => bladeStore.selectedBladeIp);
const selectedBladePort = computed(() => bladeStore.selectedBladePortNum);
+ const selectedBladeStatus = computed(() => bladeStore.selectedBladeStatus);
+
+ const statusColor = computed(() => {
+ return selectedBladeStatus.value === "online" ? "#6ebe4a" : "#ff9f40";
+ });
+
+ const statusIcon = computed(() => {
+ return selectedBladeStatus.value === "online"
+ ? "mdi-check-circle"
+ : "mdi-close-circle";
+ });
// Methods to update state
const selectAppliance = (applianceId: string) => {
@@ -1506,14 +1550,16 @@ export default {
bladeIp: string,
bladePort: number,
bladeMemoryAvailable: number,
- bladeMemoryAllocated: number
+ bladeMemoryAllocated: number,
+ bladeStatus: string | undefined
) => {
bladeStore.selectBlade(
bladeId,
bladeIp,
bladePort,
bladeMemoryAvailable,
- bladeMemoryAllocated
+ bladeMemoryAllocated,
+ bladeStatus
);
};
@@ -1524,6 +1570,9 @@ export default {
selectedBladeId,
selectedBladePort,
selectedBladeIp,
+ selectedBladeStatus,
+ statusColor,
+ statusIcon,
selectAppliance,
selectBlade,
loading,
diff --git a/webui/src/components/CXL-Hosts/CXL-Hosts.vue b/webui/src/components/CXL-Hosts/CXL-Hosts.vue
index 59608a1..2dc64a8 100644
--- a/webui/src/components/CXL-Hosts/CXL-Hosts.vue
+++ b/webui/src/components/CXL-Hosts/CXL-Hosts.vue
@@ -31,7 +31,13 @@
:key="host.id"
:id="host.id"
@click="
- selectHost(host.id, host.ipAddress, host.port, host.localMemoryMiB)
+ selectHost(
+ host.id,
+ host.ipAddress,
+ host.port,
+ host.localMemoryMiB,
+ host.status
+ )
"
>
@@ -69,13 +75,9 @@
-
+
-
+
Basic Information
+
+ Status
+ {{ selectedHostStatus }}
+
+
+ {{ statusIcon }}
+
+
+
CXL-Host Id
{{ host.id }}
+
+
+ mdi-account-circle
+
+
IpAddress
{{ host.ipAddress + ":" + host.port }}
+
+
+ mdi-ip
+
+
LocalMemoryGiB
@@ -121,13 +148,18 @@
: "N/A"
}}
+
+
+ mdi-memory
+
+
-
+
-
+
Ports Information
-
-
+
+
-
+
Memory Devices
-
+
-
+
Memory hostStore.selectedHostId);
const selectedHostIp = computed(() => hostStore.selectedHostIp);
const selectedHostPort = computed(() => hostStore.selectedHostPortNum);
+ const selectedHostStatus = computed(() => hostStore.selectedHostStatus);
+
+ const statusColor = computed(() => {
+ return selectedHostStatus.value === "online" ? "#6ebe4a" : "#ff9f40";
+ });
+
+ const statusIcon = computed(() => {
+ return selectedHostStatus.value === "online"
+ ? "mdi-check-circle"
+ : "mdi-close-circle";
+ });
// Methods to update state
const selectHost = (
hostId: string,
hostIp: string,
hostPort: number,
- hostLocalMemory: number | undefined
+ hostLocalMemory: number | undefined,
+ hostStatus: string | undefined
) => {
- hostStore.selectHost(hostId, hostIp, hostPort, hostLocalMemory);
+ hostStore.selectHost(
+ hostId,
+ hostIp,
+ hostPort,
+ hostLocalMemory,
+ hostStatus
+ );
};
return {
@@ -897,6 +950,9 @@ export default {
selectedHostId,
selectedHostPort,
selectedHostIp,
+ selectedHostStatus,
+ statusColor,
+ statusIcon,
selectHost,
loading,
};
diff --git a/webui/src/components/CXL-Hosts/HostMemory.vue b/webui/src/components/CXL-Hosts/HostMemory.vue
index 5611a84..1764378 100644
--- a/webui/src/components/CXL-Hosts/HostMemory.vue
+++ b/webui/src/components/CXL-Hosts/HostMemory.vue
@@ -4,7 +4,7 @@
diff --git a/webui/src/components/CXL-Hosts/HostMemoryDevice.vue b/webui/src/components/CXL-Hosts/HostMemoryDevice.vue
index 55f9a7f..5f25ce6 100644
--- a/webui/src/components/CXL-Hosts/HostMemoryDevice.vue
+++ b/webui/src/components/CXL-Hosts/HostMemoryDevice.vue
@@ -4,7 +4,7 @@
diff --git a/webui/src/components/CXL-Hosts/HostPorts.vue b/webui/src/components/CXL-Hosts/HostPorts.vue
index 28d6afc..2b9602c 100644
--- a/webui/src/components/CXL-Hosts/HostPorts.vue
+++ b/webui/src/components/CXL-Hosts/HostPorts.vue
@@ -4,7 +4,7 @@
diff --git a/webui/src/components/Stores/BladeStore.ts b/webui/src/components/Stores/BladeStore.ts
index b93761c..bddaee2 100644
--- a/webui/src/components/Stores/BladeStore.ts
+++ b/webui/src/components/Stores/BladeStore.ts
@@ -14,6 +14,7 @@ export const useBladeStore = defineStore('blade', {
selectedBladePortNum: null as unknown as number,
selectedBladeTotalMemoryAvailableMiB: null as unknown as number | undefined,
selectedBladeTotalMemoryAllocatedMiB: null as unknown as number | undefined,
+ selectedBladeStatus: null as unknown as string | undefined,
addBladeError: null as unknown,
deleteBladeError: null as unknown,
resyncBladeError: null as unknown,
@@ -145,12 +146,13 @@ export const useBladeStore = defineStore('blade', {
},
- selectBlade(bladeId: string, selectedBladeIp: string, selectBladePortNum: number, selectedBladeTotalMemoryAvailableMiB: number, selectedBladeTotalMemoryAllocatedMiB: number) {
+ selectBlade(bladeId: string, selectedBladeIp: string, selectBladePortNum: number, selectedBladeTotalMemoryAvailableMiB: number, selectedBladeTotalMemoryAllocatedMiB: number, status: string | undefined) {
this.selectedBladeId = bladeId;
this.selectedBladeIp = selectedBladeIp;
this.selectedBladePortNum = selectBladePortNum;
this.selectedBladeTotalMemoryAvailableMiB = selectedBladeTotalMemoryAvailableMiB;
this.selectedBladeTotalMemoryAllocatedMiB = selectedBladeTotalMemoryAllocatedMiB;
+ this.selectedBladeStatus = status;
},
updateSelectedBladeMemory(availableMemory: number | undefined, allocatedMemory: number | undefined) {
diff --git a/webui/src/components/Stores/HostStore.ts b/webui/src/components/Stores/HostStore.ts
index 3c04cae..b90e8f4 100644
--- a/webui/src/components/Stores/HostStore.ts
+++ b/webui/src/components/Stores/HostStore.ts
@@ -14,6 +14,7 @@ export const useHostStore = defineStore('host', {
selectedHostIp: null as unknown as string,
selectedHostPortNum: null as unknown as number,
selectedHostLocalMemory: null as unknown as number | undefined,
+ selectedHostStatus: null as unknown as string | undefined,
addHostError: null as unknown,
deleteHostError: null as unknown,
resyncHostError: null as unknown,
@@ -123,11 +124,12 @@ export const useHostStore = defineStore('host', {
}
},
- selectHost(selectedHostId: string, selectedHostIp: string, selectedHostPortNum: number, selectedHostLocalMemory: number | undefined) {
+ selectHost(selectedHostId: string, selectedHostIp: string, selectedHostPortNum: number, selectedHostLocalMemory: number | undefined, status: string | undefined) {
this.selectedHostId = selectedHostId;
this.selectedHostIp = selectedHostIp;
this.selectedHostPortNum = selectedHostPortNum;
this.selectedHostLocalMemory = selectedHostLocalMemory;
+ this.selectedHostStatus = status
},
}
})
\ No newline at end of file