m/{t,n}/installer: move to m/installer

Change-Id: I8fd15f1fa1e151369df251d1469e84cfeffd26fd
Reviewed-on: https://review.monogon.dev/c/monogon/+/510
Reviewed-by: Sergiusz Bazanski <serge@monogon.tech>
diff --git a/metropolis/cli/metroctl/BUILD.bazel b/metropolis/cli/metroctl/BUILD.bazel
index f9b8b51..b73b418 100644
--- a/metropolis/cli/metroctl/BUILD.bazel
+++ b/metropolis/cli/metroctl/BUILD.bazel
@@ -8,8 +8,8 @@
         "takeownership.go",
     ],
     data = [
+        "//metropolis/installer:kernel",
         "//metropolis/node",
-        "//metropolis/node/installer:kernel",
     ],
     importpath = "source.monogon.dev/metropolis/cli/metroctl",
     visibility = ["//visibility:private"],
diff --git a/metropolis/cli/metroctl/install.go b/metropolis/cli/metroctl/install.go
index d2ca453..c314fad 100644
--- a/metropolis/cli/metroctl/install.go
+++ b/metropolis/cli/metroctl/install.go
@@ -34,7 +34,7 @@
 const ownerKeyType = "METROPOLIS INITIAL OWNER PRIVATE KEY"
 
 func doGenUSB(cmd *cobra.Command, args []string) {
-	installer := datafile.MustGet("metropolis/node/installer/kernel.efi")
+	installer := datafile.MustGet("metropolis/installer/kernel.efi")
 	bundle := datafile.MustGet("metropolis/node/node.zip")
 
 	// TODO(lorenz): Have a key management story for this
diff --git a/metropolis/node/installer/BUILD.bazel b/metropolis/installer/BUILD.bazel
similarity index 87%
rename from metropolis/node/installer/BUILD.bazel
rename to metropolis/installer/BUILD.bazel
index 9e1a36a..442213b 100644
--- a/metropolis/node/installer/BUILD.bazel
+++ b/metropolis/installer/BUILD.bazel
@@ -6,7 +6,7 @@
 go_library(
     name = "go_default_library",
     srcs = ["main.go"],
-    importpath = "source.monogon.dev/metropolis/node/installer",
+    importpath = "source.monogon.dev/metropolis/installer",
     visibility = ["//visibility:private"],
     deps = [
         "//metropolis/node/build/mkimage/osimage:go_default_library",
@@ -25,9 +25,9 @@
 node_initramfs(
     name = "initramfs",
     files = {
-        "//metropolis/node/installer": "/init",
+        "//metropolis/installer": "/init",
     },
-    visibility = ["//metropolis/test/installer:__pkg__"],
+    visibility = ["//metropolis/installer/test:__pkg__"],
 )
 
 os_release(
diff --git a/metropolis/node/installer/main.go b/metropolis/installer/main.go
similarity index 100%
rename from metropolis/node/installer/main.go
rename to metropolis/installer/main.go
diff --git a/metropolis/test/installer/BUILD.bazel b/metropolis/installer/test/BUILD.bazel
similarity index 86%
rename from metropolis/test/installer/BUILD.bazel
rename to metropolis/installer/test/BUILD.bazel
index eeb14df..59c5803 100644
--- a/metropolis/test/installer/BUILD.bazel
+++ b/metropolis/installer/test/BUILD.bazel
@@ -6,7 +6,7 @@
     size = "small",
     data = [
         ":kernel",
-        "//metropolis/test/installer/testos:testos_bundle",
+        "//metropolis/installer/test/testos:testos_bundle",
         "//third_party/edk2:firmware",
         "@qemu//:qemu-x86_64-softmmu",
     ],
@@ -17,7 +17,7 @@
 go_library(
     name = "go_default_library",
     srcs = ["main.go"],
-    importpath = "source.monogon.dev/metropolis/test/installer",
+    importpath = "source.monogon.dev/metropolis/installer/test",
     visibility = ["//visibility:private"],
     deps = [
         "//metropolis/cli/metroctl/core:go_default_library",
@@ -34,7 +34,7 @@
 efi_unified_kernel_image(
     name = "kernel",
     cmdline = "loglevel=0 console=ttyS0",
-    initramfs = "//metropolis/node/installer:initramfs",
+    initramfs = "//metropolis/installer:initramfs",
     kernel = "//third_party/linux",
     visibility = ["//visibility:private"],
 )
diff --git a/metropolis/test/installer/main.go b/metropolis/installer/test/main.go
similarity index 98%
rename from metropolis/test/installer/main.go
rename to metropolis/installer/test/main.go
index cd0873b..c4faf81 100644
--- a/metropolis/test/installer/main.go
+++ b/metropolis/installer/test/main.go
@@ -17,7 +17,7 @@
 // This package runs the installer image in a VM provided with an empty block
 // device. It then examines the installer console output and the blok device to
 // determine whether the installation process completed without issue.
-package main
+package installer
 
 import (
 	"bytes"
@@ -167,8 +167,8 @@
 	installerImage = filepath.Join(os.Getenv("TEST_TMPDIR"), "installer.img")
 	nodeStorage = filepath.Join(os.Getenv("TEST_TMPDIR"), "stor.img")
 
-	installer := datafile.MustGet("metropolis/test/installer/kernel.efi")
-	bundle := datafile.MustGet("metropolis/test/installer/testos/testos_bundle.zip")
+	installer := datafile.MustGet("metropolis/installer/test/kernel.efi")
+	bundle := datafile.MustGet("metropolis/installer/test/testos/testos_bundle.zip")
 	iargs := mctl.MakeInstallerImageArgs{
 		Installer:     bytes.NewBuffer(installer),
 		InstallerSize: uint64(len(installer)),
diff --git a/metropolis/test/installer/testos/BUILD b/metropolis/installer/test/testos/BUILD
similarity index 89%
rename from metropolis/test/installer/testos/BUILD
rename to metropolis/installer/test/testos/BUILD
index 55fbd47..b264527 100644
--- a/metropolis/test/installer/testos/BUILD
+++ b/metropolis/installer/test/testos/BUILD
@@ -25,13 +25,13 @@
         ":kernel_efi",
         ":rootfs",
     ],
-    visibility = ["//metropolis/test/installer:__subpackages__"],
+    visibility = ["//metropolis/installer/test:__subpackages__"],
 )
 
 go_library(
     name = "go_default_library",
     srcs = ["main.go"],
-    importpath = "source.monogon.dev/metropolis/test/installer/testos",
+    importpath = "source.monogon.dev/metropolis/installer/test/testos",
     visibility = ["//visibility:private"],
     deps = ["@org_golang_x_sys//unix:go_default_library"],
 )
diff --git a/metropolis/test/installer/testos/main.go b/metropolis/installer/test/testos/main.go
similarity index 100%
rename from metropolis/test/installer/testos/main.go
rename to metropolis/installer/test/testos/main.go
diff --git a/metropolis/node/build/genosrelease/BUILD.bazel b/metropolis/node/build/genosrelease/BUILD.bazel
index bae7f1d..b48b602 100644
--- a/metropolis/node/build/genosrelease/BUILD.bazel
+++ b/metropolis/node/build/genosrelease/BUILD.bazel
@@ -11,5 +11,8 @@
 go_binary(
     name = "genosrelease",
     embed = [":go_default_library"],
-    visibility = ["//metropolis/node:__subpackages__"],
+    visibility = [
+        "//metropolis/installer:__subpackages__",
+        "//metropolis/node:__subpackages__",
+    ],
 )