Files
ITWorx Pulse release export bd774932d5
Public source validation / validate (push) Failing after 3m8s
Publish ITWorx Pulse source
2026-09-03 02:09:19 +02:00

41 lines
1.3 KiB
Go

package main
import (
"context"
"fmt"
"time"
"github.com/itworx/pulse/internal/agentsource"
"github.com/itworx/pulse/internal/agentstore"
"github.com/itworx/pulse/internal/datasource"
)
var requiredUnraidCapabilities = []agentstore.Capability{
agentstore.CapabilityHost,
agentstore.CapabilityProcesses,
agentstore.CapabilityContainers,
agentstore.CapabilityArray,
agentstore.CapabilityDisks,
agentstore.CapabilityPools,
agentstore.CapabilityShares,
}
var requiredStorageCapabilities = []agentstore.Capability{
agentstore.CapabilityArray,
agentstore.CapabilityDisks,
agentstore.CapabilityPools,
agentstore.CapabilityShares,
}
func readAgentSourceHealth(ctx context.Context, reader agentstore.Reader, now time.Time) (datasource.SourceHealth, datasource.SourceHealth, error) {
unraidHealth, err := agentsource.Health(ctx, reader, requiredUnraidCapabilities, agentsource.Windows{}, now)
if err != nil {
return datasource.SourceHealth{}, datasource.SourceHealth{}, fmt.Errorf("summarize Unraid capabilities: %w", err)
}
storageHealth, err := agentsource.Health(ctx, reader, requiredStorageCapabilities, agentsource.Windows{}, now)
if err != nil {
return datasource.SourceHealth{}, datasource.SourceHealth{}, fmt.Errorf("summarize storage capabilities: %w", err)
}
return unraidHealth, storageHealth, nil
}