Skip to content

Commit a6f86cd

Browse files
phlogistonjohnmergify[bot]
authored andcommitted
main: check validity of default node selector value
Block the operator from starting if the default node selector config value is invalid. Signed-off-by: John Mulligan <[email protected]>
1 parent 2a9f76c commit a6f86cd

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

main.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ import (
3535
sambaoperatorv1alpha1 "github.com/samba-in-kubernetes/samba-operator/api/v1alpha1"
3636
"github.com/samba-in-kubernetes/samba-operator/controllers"
3737
"github.com/samba-in-kubernetes/samba-operator/internal/conf"
38+
pln "github.com/samba-in-kubernetes/samba-operator/internal/planner"
3839
// +kubebuilder:scaffold:imports
3940
)
4041

@@ -97,6 +98,15 @@ func main() {
9798
}
9899
setupLog.Info("loaded configuration successfully", "config", conf.Get())
99100

101+
planner := pln.New(pln.InstanceConfiguration{
102+
GlobalConfig: conf.Get(),
103+
}, nil)
104+
if _, err := planner.NodeSelector(); err != nil {
105+
setupLog.Error(err, "invalid node selector configuration value",
106+
"note", "value must be a JSON object containing strings")
107+
os.Exit(1)
108+
}
109+
100110
mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), ctrl.Options{
101111
Scheme: scheme,
102112
MetricsBindAddress: metricsAddr,

0 commit comments

Comments
 (0)