metropolis: unify utility packages
One last sweeping rename / reshuffle.
We get rid of //metropolis/node/common and //golibs, unifying them into
a single //metropolis/pkg meta-package.
This is to be documented somwhere properly, but here's the new logic
behind selecting where to place a new library package:
- if it's specific to k8s-on-metropolis, put it in
//metropolis/node/kubernetes/*. This is a self-contained tree that
other paths cannot import from.
- if it's a big new subsystem of the metropolis core, put it in
//metropolis/node/core. This can be imported by anything in
//m/n (eg the Kubernetes code at //m/n/kubernetes
- otherwise, treat it as generic library that's part of the metropolis
project, and put it in //metropolis/pkg. This can be imported by
anything within //metropolis.
This will be followed up by a diff that updates visibility rules.
Test Plan: Pure refactor, CI only.
X-Origin-Diff: phab/D683
GitOrigin-RevId: 883e7f09a7d22d64e966d07bbe839454ed081c79
diff --git a/metropolis/test/launch/BUILD.bazel b/metropolis/test/launch/BUILD.bazel
index b6245e1..d4bf4cb 100644
--- a/metropolis/test/launch/BUILD.bazel
+++ b/metropolis/test/launch/BUILD.bazel
@@ -6,8 +6,8 @@
importpath = "git.monogon.dev/source/nexantic.git/metropolis/test/launch",
visibility = ["//metropolis:__subpackages__"],
deps = [
- "//golibs/common:go_default_library",
"//metropolis/node:go_default_library",
+ "//metropolis/pkg/freeport:go_default_library",
"//metropolis/proto/api:go_default_library",
"@com_github_golang_protobuf//proto:go_default_library",
"@com_github_grpc_ecosystem_go_grpc_middleware//retry:go_default_library",
diff --git a/metropolis/test/launch/cli/launch-multi2/BUILD.bazel b/metropolis/test/launch/cli/launch-multi2/BUILD.bazel
index 6507ae4..4b51824 100644
--- a/metropolis/test/launch/cli/launch-multi2/BUILD.bazel
+++ b/metropolis/test/launch/cli/launch-multi2/BUILD.bazel
@@ -7,7 +7,7 @@
visibility = ["//visibility:private"],
deps = [
"//metropolis/node:go_default_library",
- "//metropolis/node/common/logbuffer:go_default_library",
+ "//metropolis/pkg/logbuffer:go_default_library",
"//metropolis/proto/api:go_default_library",
"//metropolis/test/launch:go_default_library",
"@com_github_grpc_ecosystem_go_grpc_middleware//retry:go_default_library",
diff --git a/metropolis/test/launch/cli/launch-multi2/main.go b/metropolis/test/launch/cli/launch-multi2/main.go
index 1596e60..553e4ae 100644
--- a/metropolis/test/launch/cli/launch-multi2/main.go
+++ b/metropolis/test/launch/cli/launch-multi2/main.go
@@ -30,7 +30,7 @@
"google.golang.org/grpc"
common "git.monogon.dev/source/nexantic.git/metropolis/node"
- "git.monogon.dev/source/nexantic.git/metropolis/node/common/logbuffer"
+ "git.monogon.dev/source/nexantic.git/metropolis/pkg/logbuffer"
apb "git.monogon.dev/source/nexantic.git/metropolis/proto/api"
"git.monogon.dev/source/nexantic.git/metropolis/test/launch"
)
diff --git a/metropolis/test/launch/launch.go b/metropolis/test/launch/launch.go
index 0cf11bd..21d066b 100644
--- a/metropolis/test/launch/launch.go
+++ b/metropolis/test/launch/launch.go
@@ -39,8 +39,8 @@
"golang.org/x/sys/unix"
"google.golang.org/grpc"
- freeport "git.monogon.dev/source/nexantic.git/golibs/common"
- common "git.monogon.dev/source/nexantic.git/metropolis/node"
+ "git.monogon.dev/source/nexantic.git/metropolis/node"
+ "git.monogon.dev/source/nexantic.git/metropolis/pkg/freeport"
apb "git.monogon.dev/source/nexantic.git/metropolis/proto/api"
)
@@ -135,8 +135,8 @@
}
// NodePorts is the list of ports a fully operational Metropolis node listens on
-var NodePorts = []uint16{common.ConsensusPort, common.NodeServicePort, common.MasterServicePort,
- common.ExternalServicePort, common.DebugServicePort, common.KubernetesAPIPort, common.DebuggerPort}
+var NodePorts = []uint16{node.ConsensusPort, node.NodeServicePort, node.MasterServicePort,
+ node.ExternalServicePort, node.DebugServicePort, node.KubernetesAPIPort, node.DebuggerPort}
// IdentityPortMap returns a port map where each given port is mapped onto itself on the host. This is mainly useful
// for development against Metropolis. The dbg command requires this mapping.
@@ -465,9 +465,9 @@
// NanoswitchPorts contains all ports forwarded by Nanoswitch to the first VM
var NanoswitchPorts = []uint16{
- common.ExternalServicePort,
- common.DebugServicePort,
- common.KubernetesAPIPort,
+ node.ExternalServicePort,
+ node.DebugServicePort,
+ node.KubernetesAPIPort,
}
// ClusterOptions contains all options for launching a Metropolis cluster
@@ -524,7 +524,7 @@
copts := []grpcretry.CallOption{
grpcretry.WithBackoff(grpcretry.BackoffExponential(100 * time.Millisecond)),
}
- conn, err := portMap.DialGRPC(common.DebugServicePort, grpc.WithInsecure(),
+ conn, err := portMap.DialGRPC(node.DebugServicePort, grpc.WithInsecure(),
grpc.WithUnaryInterceptor(grpcretry.UnaryClientInterceptor(copts...)))
if err != nil {
return nil, nil, fmt.Errorf("failed to dial debug service: %w", err)