diff --git a/packages/integrations/src/interfaces/health-monitoring/healt-monitoring.ts b/packages/integrations/src/interfaces/health-monitoring/healt-monitoring.ts index 6f3dc95a5..f991f31c5 100644 --- a/packages/integrations/src/interfaces/health-monitoring/healt-monitoring.ts +++ b/packages/integrations/src/interfaces/health-monitoring/healt-monitoring.ts @@ -12,7 +12,7 @@ export interface HealthMonitoring { }; rebootRequired: boolean; availablePkgUpdates: number; - cpuTemp: number; + cpuTemp: number | undefined; fileSystem: { deviceName: string; used: string; diff --git a/packages/integrations/src/openmediavault/openmediavault-integration.ts b/packages/integrations/src/openmediavault/openmediavault-integration.ts index 8295d557e..2ee9a3372 100644 --- a/packages/integrations/src/openmediavault/openmediavault-integration.ts +++ b/packages/integrations/src/openmediavault/openmediavault-integration.ts @@ -63,9 +63,6 @@ export class OpenMediaVaultIntegration extends Integration { if (!smartResult.success) { throw new Error("Invalid SMART information response"); } - if (!cpuTempResult.success) { - throw new Error("Invalid CPU temperature response"); - } const fileSystem = fileSystemResult.data.response.map((fileSystem) => ({ deviceName: fileSystem.devicename, @@ -94,7 +91,7 @@ export class OpenMediaVaultIntegration extends Integration { }, rebootRequired: systemResult.data.response.rebootRequired, availablePkgUpdates: systemResult.data.response.availablePkgUpdates, - cpuTemp: cpuTempResult.data.response.cputemp, + cpuTemp: cpuTempResult.success ? cpuTempResult.data.response.cputemp : undefined, fileSystem, smart, }; diff --git a/packages/widgets/src/health-monitoring/system-health.tsx b/packages/widgets/src/health-monitoring/system-health.tsx index 585749f3b..5831a2106 100644 --- a/packages/widgets/src/health-monitoring/system-health.tsx +++ b/packages/widgets/src/health-monitoring/system-health.tsx @@ -347,9 +347,14 @@ const CpuRing = ({ cpuUtilization }: { cpuUtilization: number }) => { ); }; -const CpuTempRing = ({ fahrenheit, cpuTemp }: { fahrenheit: boolean; cpuTemp: number }) => { +const CpuTempRing = ({ fahrenheit, cpuTemp }: { fahrenheit: boolean; cpuTemp: number | undefined }) => { const { width, ref } = useElementSize(); const fallbackWidth = width || 1; // See https://github.com/homarr-labs/homarr/issues/2196 + + if (!cpuTemp) { + return null; + } + return (