load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
load(":defs.bzl", "buildkind")

buildkind(
    name = "buildkind",
    build_setting_default = "full",
)

# True if user requested a lite build via --//metropolis/cli/metroctl:buildkind=lite .
config_setting(
    name = "buildkind_lite",
    flag_values = {
        ":buildkind": "lite",
    },
)

go_library(
    name = "metroctl_lib",
    srcs = [
        "cmd_certs.go",
        "cmd_install.go",
        "cmd_install_ssh.go",
        "cmd_install_usb.go",
        "cmd_k8s_configure.go",
        "cmd_k8scredplugin.go",
        "cmd_node.go",
        "cmd_node_approve.go",
        "cmd_node_logs.go",
        "cmd_node_metrics.go",
        "cmd_node_set.go",
        "cmd_takeownership.go",
        "main.go",
        "rpc.go",
        "table_node.go",
    ],
    importpath = "source.monogon.dev/metropolis/cli/metroctl",
    visibility = ["//visibility:private"],
    deps = [
        "//go/clitable",
        "//go/logging",
        "//go/net/ssh",
        "//metropolis/cli/flagdefs",
        "//metropolis/cli/metroctl/core",
        "//metropolis/node",
        "//metropolis/node/core/identity",
        "//metropolis/node/core/rpc",
        "//metropolis/node/core/rpc/resolver",
        "//metropolis/proto/api",
        "//metropolis/proto/common",
        "//osbase/blkio",
        "//osbase/fat32",
        "//osbase/logtree",
        "//osbase/logtree/proto",
        "//version",
        "@com_github_adrg_xdg//:xdg",
        "@com_github_schollz_progressbar_v3//:progressbar",
        "@com_github_spf13_cobra//:cobra",
        "@io_bazel_rules_go//go/runfiles:go_default_library",
        "@io_k8s_apimachinery//pkg/apis/meta/v1:meta",
        "@io_k8s_client_go//pkg/apis/clientauthentication/v1:clientauthentication",
        "@org_golang_google_grpc//:grpc",
        "@org_golang_google_protobuf//proto",
        "@org_golang_x_crypto//ssh",
        "@org_golang_x_crypto//ssh/agent",
        "@org_golang_x_crypto//ssh/terminal",
        "@org_golang_x_net//proxy",
        "@org_golang_x_sync//semaphore",
        "@org_golang_x_term//:term",
    ],
)

go_binary(
    name = "metroctl",
    data = select({
        ":buildkind_lite": [],
        "//conditions:default": [
            "//metropolis/cli/takeover",
            "//metropolis/installer:kernel",
            "//metropolis/node:bundle",
        ],
    }),
    embed = [":metroctl_lib"],
    visibility = ["//visibility:public"],
)

# metroctl_lite is the same binary as normal metroctl, but without any data
# dependencies.
go_binary(
    name = "metroctl_lite",
    data = [],
    embed = [":metroctl_lib"],
    visibility = ["//metropolis:__subpackages__"],
)
