treewide: replace platform_transition_binary

platform_transition_binary changes the platform, but does not set
@io_bazel_rules_go//go/config:static. Instead, build_static_transition
is now used, which sets both.

A second benefit of this change is that we have fewer places where the
amd64 architecture is mentioned, which should make it easier to enable
multi-platform builds.

Change-Id: Id01e0d942a12770b8b34b0e6825f314128149b40
Reviewed-on: https://review.monogon.dev/c/monogon/+/4162
Tested-by: Jenkins CI
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
diff --git a/metropolis/cli/takeover/BUILD.bazel b/metropolis/cli/takeover/BUILD.bazel
index c0b16f4..ca6e625 100644
--- a/metropolis/cli/takeover/BUILD.bazel
+++ b/metropolis/cli/takeover/BUILD.bazel
@@ -1,5 +1,5 @@
-load("@aspect_bazel_lib//lib:transitions.bzl", "platform_transition_binary")
 load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
+load("//osbase/build:def.bzl", "build_static_target")
 load("//osbase/build/mkcpio:def.bzl", "node_initramfs")
 
 node_initramfs(
@@ -57,9 +57,8 @@
     visibility = ["//visibility:public"],
 )
 
-platform_transition_binary(
+build_static_target(
     name = "takeover",
-    binary = ":takeover_bin",
-    target_platform = "//build/platforms:linux_amd64_static",
+    dep = ":takeover_bin",
     visibility = ["//visibility:public"],
 )
diff --git a/metropolis/test/e2e/connectivity/agent/BUILD.bazel b/metropolis/test/e2e/connectivity/agent/BUILD.bazel
index cb52497..b9db83c 100644
--- a/metropolis/test/e2e/connectivity/agent/BUILD.bazel
+++ b/metropolis/test/e2e/connectivity/agent/BUILD.bazel
@@ -1,7 +1,6 @@
-load("@aspect_bazel_lib//lib:transitions.bzl", "platform_transition_binary")
 load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
 load("@rules_oci//oci:defs.bzl", "oci_image")
-load("@rules_pkg//pkg:tar.bzl", "pkg_tar")
+load("//build/static_binary_tarball:def.bzl", "static_binary_tarball")
 
 go_library(
     name = "agent_lib",
@@ -20,23 +19,16 @@
     visibility = ["//visibility:private"],
 )
 
-platform_transition_binary(
-    name = "agent_transitioned",
-    binary = ":agent",
-    target_platform = "//build/platforms:linux_amd64_static",
-    visibility = ["//visibility:private"],
-)
-
-pkg_tar(
+static_binary_tarball(
     name = "agent_layer",
-    srcs = [":agent_transitioned"],
+    executable = ":agent",
     visibility = ["//visibility:private"],
 )
 
 oci_image(
     name = "agent_image",
     base = "@distroless_base",
-    entrypoint = ["/agent"],
+    entrypoint = ["/app/metropolis/test/e2e/connectivity/agent/agent_/agent"],
     tars = [":agent_layer"],
     visibility = ["//metropolis/test/e2e:__pkg__"],
     workdir = "/app",