metropolis/cli/pkg/context: replace with signal.NotifyContext
Change-Id: I457ccb83c7e25988755bb9463a8c83fc328a722b
Reviewed-on: https://review.monogon.dev/c/monogon/+/3081
Tested-by: Jenkins CI
Reviewed-by: Serge Bazanski <serge@monogon.tech>
diff --git a/cloud/bmaas/scruffy/cmd/BUILD.bazel b/cloud/bmaas/scruffy/cmd/BUILD.bazel
index 1a372e7..1d919b4 100644
--- a/cloud/bmaas/scruffy/cmd/BUILD.bazel
+++ b/cloud/bmaas/scruffy/cmd/BUILD.bazel
@@ -5,10 +5,7 @@
srcs = ["main.go"],
importpath = "source.monogon.dev/cloud/bmaas/scruffy/cmd",
visibility = ["//visibility:private"],
- deps = [
- "//cloud/bmaas/scruffy",
- "//metropolis/cli/pkg/context",
- ],
+ deps = ["//cloud/bmaas/scruffy"],
)
go_binary(
diff --git a/cloud/bmaas/scruffy/cmd/main.go b/cloud/bmaas/scruffy/cmd/main.go
index e838834..b675fda 100644
--- a/cloud/bmaas/scruffy/cmd/main.go
+++ b/cloud/bmaas/scruffy/cmd/main.go
@@ -3,9 +3,10 @@
import (
"context"
"flag"
+ "os"
+ "os/signal"
"source.monogon.dev/cloud/bmaas/scruffy"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
func main() {
@@ -13,7 +14,7 @@
s.Config.RegisterFlags()
flag.Parse()
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
s.Start(ctx)
<-ctx.Done()
}
diff --git a/cloud/bmaas/server/cmd/BUILD.bazel b/cloud/bmaas/server/cmd/BUILD.bazel
index 958f2c4..9f3ce58 100644
--- a/cloud/bmaas/server/cmd/BUILD.bazel
+++ b/cloud/bmaas/server/cmd/BUILD.bazel
@@ -8,7 +8,6 @@
visibility = ["//visibility:private"],
deps = [
"//cloud/bmaas/server",
- "//metropolis/cli/pkg/context",
"@io_k8s_klog_v2//:klog",
],
)
diff --git a/cloud/bmaas/server/cmd/main.go b/cloud/bmaas/server/cmd/main.go
index dd99205..8dbb7f8 100644
--- a/cloud/bmaas/server/cmd/main.go
+++ b/cloud/bmaas/server/cmd/main.go
@@ -3,11 +3,12 @@
import (
"context"
"flag"
+ "os"
+ "os/signal"
"k8s.io/klog/v2"
"source.monogon.dev/cloud/bmaas/server"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
func main() {
@@ -18,7 +19,7 @@
klog.Exitf("unexpected positional arguments: %v", flag.Args())
}
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
s.Start(ctx)
select {}
}
diff --git a/cloud/equinix/cli/BUILD.bazel b/cloud/equinix/cli/BUILD.bazel
index da94d95..d10fdeb 100644
--- a/cloud/equinix/cli/BUILD.bazel
+++ b/cloud/equinix/cli/BUILD.bazel
@@ -13,7 +13,6 @@
visibility = ["//visibility:private"],
deps = [
"//cloud/equinix/wrapngo",
- "//metropolis/cli/pkg/context",
"@com_github_packethost_packngo//:packngo",
"@com_github_spf13_cobra//:cobra",
"@io_k8s_klog_v2//:klog",
diff --git a/cloud/equinix/cli/cmd_delete.go b/cloud/equinix/cli/cmd_delete.go
index 056956e..97eb26f 100644
--- a/cloud/equinix/cli/cmd_delete.go
+++ b/cloud/equinix/cli/cmd_delete.go
@@ -2,6 +2,8 @@
import (
"context"
+ "os"
+ "os/signal"
"time"
"github.com/packethost/packngo"
@@ -9,7 +11,6 @@
"k8s.io/klog/v2"
"source.monogon.dev/cloud/equinix/wrapngo"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
var deleteCmd = &cobra.Command{
@@ -24,7 +25,7 @@
}
func doDelete(cmd *cobra.Command, args []string) {
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
api := wrapngo.New(&c)
klog.Infof("Listing devices for %q", args[0])
diff --git a/cloud/equinix/cli/cmd_move.go b/cloud/equinix/cli/cmd_move.go
index 770e480..ec32071 100644
--- a/cloud/equinix/cli/cmd_move.go
+++ b/cloud/equinix/cli/cmd_move.go
@@ -2,12 +2,13 @@
import (
"context"
+ "os"
+ "os/signal"
"github.com/spf13/cobra"
"k8s.io/klog/v2"
"source.monogon.dev/cloud/equinix/wrapngo"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
var moveCmd = &cobra.Command{
@@ -22,7 +23,7 @@
}
func doMove(cmd *cobra.Command, args []string) {
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
api := wrapngo.New(&c)
klog.Infof("Listing reservations for %q", args[0])
diff --git a/cloud/equinix/cli/cmd_reboot.go b/cloud/equinix/cli/cmd_reboot.go
index 7fcd35c..e788f01 100644
--- a/cloud/equinix/cli/cmd_reboot.go
+++ b/cloud/equinix/cli/cmd_reboot.go
@@ -2,12 +2,13 @@
import (
"context"
+ "os"
+ "os/signal"
"github.com/spf13/cobra"
"k8s.io/klog/v2"
"source.monogon.dev/cloud/equinix/wrapngo"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
var rebootCmd = &cobra.Command{
@@ -22,7 +23,7 @@
}
func doReboot(cmd *cobra.Command, args []string) {
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
api := wrapngo.New(&c)
klog.Infof("Requesting device list...")
diff --git a/cloud/equinix/cli/cmd_yoink.go b/cloud/equinix/cli/cmd_yoink.go
index bda9e82..c351d47 100644
--- a/cloud/equinix/cli/cmd_yoink.go
+++ b/cloud/equinix/cli/cmd_yoink.go
@@ -4,6 +4,7 @@
"bufio"
"context"
"os"
+ "os/signal"
"sort"
"strconv"
"strings"
@@ -13,7 +14,6 @@
"k8s.io/klog/v2"
"source.monogon.dev/cloud/equinix/wrapngo"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
var yoinkCmd = &cobra.Command{
@@ -73,7 +73,7 @@
klog.Exitf("missing metro flag")
}
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
api := wrapngo.New(&c)
klog.Infof("Listing reservations for %q", srcProject)
diff --git a/cloud/shepherd/mini/BUILD.bazel b/cloud/shepherd/mini/BUILD.bazel
index 5fad3c2..f8a5e72 100644
--- a/cloud/shepherd/mini/BUILD.bazel
+++ b/cloud/shepherd/mini/BUILD.bazel
@@ -17,7 +17,6 @@
"//cloud/shepherd",
"//cloud/shepherd/manager",
"//go/net/ssh",
- "//metropolis/cli/pkg/context",
"@io_k8s_klog_v2//:klog",
"@org_golang_x_crypto//ssh",
],
diff --git a/cloud/shepherd/mini/main.go b/cloud/shepherd/mini/main.go
index b35c09e..0d7b11f 100644
--- a/cloud/shepherd/mini/main.go
+++ b/cloud/shepherd/mini/main.go
@@ -10,6 +10,7 @@
"net/http"
"net/url"
"os"
+ "os/signal"
"strings"
"k8s.io/klog/v2"
@@ -20,7 +21,6 @@
"source.monogon.dev/cloud/lib/component"
"source.monogon.dev/cloud/shepherd"
"source.monogon.dev/cloud/shepherd/manager"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
type Config struct {
@@ -133,7 +133,7 @@
registry := c.Component.PrometheusRegistry()
c.BMDB.EnableMetrics(registry)
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
c.Component.StartPrometheus(ctx)
conn, err := c.BMDB.Open(true)
diff --git a/cloud/shepherd/provider/equinix/BUILD.bazel b/cloud/shepherd/provider/equinix/BUILD.bazel
index 4214f16..ef1ab53 100644
--- a/cloud/shepherd/provider/equinix/BUILD.bazel
+++ b/cloud/shepherd/provider/equinix/BUILD.bazel
@@ -21,7 +21,6 @@
"//cloud/shepherd",
"//cloud/shepherd/manager",
"//go/net/ssh",
- "//metropolis/cli/pkg/context",
"@com_github_packethost_packngo//:packngo",
"@io_k8s_klog_v2//:klog",
"@org_golang_x_crypto//ssh",
diff --git a/cloud/shepherd/provider/equinix/main.go b/cloud/shepherd/provider/equinix/main.go
index 7faee9d..0fb28e1 100644
--- a/cloud/shepherd/provider/equinix/main.go
+++ b/cloud/shepherd/provider/equinix/main.go
@@ -6,6 +6,7 @@
"flag"
"fmt"
"os"
+ "os/signal"
"golang.org/x/crypto/ssh"
"k8s.io/klog/v2"
@@ -16,7 +17,6 @@
"source.monogon.dev/cloud/lib/component"
"source.monogon.dev/cloud/shepherd/manager"
ssh2 "source.monogon.dev/go/net/ssh"
- clicontext "source.monogon.dev/metropolis/cli/pkg/context"
)
type Config struct {
@@ -72,7 +72,7 @@
registry := c.Component.PrometheusRegistry()
c.BMDB.EnableMetrics(registry)
- ctx := clicontext.WithInterrupt(context.Background())
+ ctx, _ := signal.NotifyContext(context.Background(), os.Interrupt)
c.Component.StartPrometheus(ctx)
if c.API.APIKey == "" || c.API.User == "" {