aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/host
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/host')
-rw-r--r--pkg/host/machine_info.go8
-rw-r--r--pkg/host/machine_info_linux.go14
2 files changed, 22 insertions, 0 deletions
diff --git a/pkg/host/machine_info.go b/pkg/host/machine_info.go
index a804ca32a..167b7ec03 100644
--- a/pkg/host/machine_info.go
+++ b/pkg/host/machine_info.go
@@ -38,8 +38,16 @@ func CollectModulesInfo() ([]KernelModule, error) {
return machineModulesInfo()
}
+func CollectGlobsInfo(globs []string) (map[string][]string, error) {
+ if machineModulesInfo == nil {
+ return nil, nil
+ }
+ return machineGlobsInfo(globs)
+}
+
var machineInfoFuncs []machineInfoFunc
var machineModulesInfo func() ([]KernelModule, error)
+var machineGlobsInfo func([]string) (map[string][]string, error)
type machineInfoFunc struct {
name string
diff --git a/pkg/host/machine_info_linux.go b/pkg/host/machine_info_linux.go
index 317d34cd9..3b0971495 100644
--- a/pkg/host/machine_info_linux.go
+++ b/pkg/host/machine_info_linux.go
@@ -21,6 +21,7 @@ func init() {
{"KVM", readKVMInfo},
}
machineModulesInfo = getModulesInfo
+ machineGlobsInfo = getGlobsInfo
}
func readCPUInfo(buffer *bytes.Buffer) error {
@@ -140,3 +141,16 @@ func getModulesInfo() ([]KernelModule, error) {
}
return modules, nil
}
+
+func getGlobsInfo(globs []string) (map[string][]string, error) {
+ files := make(map[string][]string, len(globs))
+ for _, glob := range globs {
+ matches, err := filepath.Glob(glob)
+ if err != nil {
+ return nil, err
+ }
+ files[glob] = matches
+ }
+
+ return files, nil
+}