cloud: validate that there are not positional arguments
flag.Parse() parses arguments after boolean flags as positional argument.
This produces unexpected behaviour like this:
```
> -a "true" -b "true"
a: false
> -a -b "true"
b: true
```
Change-Id: I0f8555fc45acf305a5efd365a6eae03eb8930942
Reviewed-on: https://review.monogon.dev/c/monogon/+/1798
Reviewed-by: Serge Bazanski <serge@monogon.tech>
Tested-by: Jenkins CI
diff --git a/cloud/shepherd/equinix/manager/server/BUILD.bazel b/cloud/shepherd/equinix/manager/server/BUILD.bazel
index 173a294..55172bd 100644
--- a/cloud/shepherd/equinix/manager/server/BUILD.bazel
+++ b/cloud/shepherd/equinix/manager/server/BUILD.bazel
@@ -14,7 +14,7 @@
"//cloud/shepherd/equinix/manager",
"//cloud/shepherd/equinix/wrapngo",
"//metropolis/cli/pkg/context",
- "@io_k8s_klog//:klog",
+ "@io_k8s_klog_v2//:klog",
],
)
diff --git a/cloud/shepherd/equinix/manager/server/main.go b/cloud/shepherd/equinix/manager/server/main.go
index 984d96f..38735db 100644
--- a/cloud/shepherd/equinix/manager/server/main.go
+++ b/cloud/shepherd/equinix/manager/server/main.go
@@ -7,7 +7,7 @@
"os"
"strings"
- "k8s.io/klog"
+ "k8s.io/klog/v2"
"source.monogon.dev/cloud/bmaas/bmdb"
"source.monogon.dev/cloud/bmaas/bmdb/webug"
@@ -58,6 +58,9 @@
c := &Config{}
c.RegisterFlags()
flag.Parse()
+ if flag.NArg() > 0 {
+ klog.Exitf("unexpected positional arguments: %v", flag.Args())
+ }
registry := c.Component.PrometheusRegistry()
c.BMDB.EnableMetrics(registry)