From 99998dc7e889d6bf2807c2bea200d9412f02e920 Mon Sep 17 00:00:00 2001 From: Alejandro Mery Date: Sun, 29 Oct 2023 03:12:33 +0000 Subject: [PATCH] cluster: mark Machine as Inactive if the "region" file contains "none" Signed-off-by: Alejandro Mery --- pkg/cluster/machine_scan.go | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/pkg/cluster/machine_scan.go b/pkg/cluster/machine_scan.go index ef3f221..259d945 100644 --- a/pkg/cluster/machine_scan.go +++ b/pkg/cluster/machine_scan.go @@ -3,6 +3,7 @@ package cluster import ( "context" "net/netip" + "os" "strconv" "strings" "time" @@ -81,7 +82,30 @@ func (m *Machine) scan(_ *ScanOptions) error { } } - return nil + return m.loadInactive() +} + +func (m *Machine) loadInactive() error { + data, err := m.ReadLines("region") + switch { + case os.IsNotExist(err): + // no file + return nil + case err != nil: + // read error + return err + default: + // look for "none" + for _, r := range data { + switch r { + case "none": + m.Inactive = true + default: + m.Inactive = false + } + } + return nil + } } // scanWrapUp is called once all machines have been scanned