This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
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
|
||||
}
|
||||
Reference in New Issue
Block a user