load("@io_bazel_rules_go//go:def.bzl", "go_binary") load("@prysm//tools/go:def.bzl", "go_library") load("@io_bazel_rules_docker//go:image.bzl", "go_image") load("@io_bazel_rules_docker//container:container.bzl", "container_bundle", "container_image") load("//tools:go_image.bzl", "go_image_alpine", "go_image_debug") load("@io_bazel_rules_docker//contrib:push-all.bzl", "docker_push") go_library( name = "go_default_library", srcs = ["main.go"], importpath = "github.com/prysmaticlabs/prysm/v4/cmd/prysmctl", visibility = ["//visibility:private"], deps = [ "//cmd/prysmctl/checkpointsync:go_default_library", "//cmd/prysmctl/db:go_default_library", "//cmd/prysmctl/deprecated:go_default_library", "//cmd/prysmctl/p2p:go_default_library", "//cmd/prysmctl/testnet:go_default_library", "//cmd/prysmctl/validator:go_default_library", "//cmd/prysmctl/weaksubjectivity:go_default_library", "@com_github_sirupsen_logrus//:go_default_library", "@com_github_urfave_cli_v2//:go_default_library", ], ) go_image( name = "image", base = select({ "//tools:base_image_alpine": "//tools:alpine_cc_image", "//tools:base_image_cc": "//tools:cc_image", "//conditions:default": "//tools:cc_image", }), binary = ":prysmctl", tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) container_image( name = "image_with_creation_time", base = "image", tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) container_bundle( name = "image_bundle", images = { "gcr.io/prysmaticlabs/prysm/cmd/prysmctl:latest": ":image_with_creation_time", "gcr.io/prysmaticlabs/prysm/cmd/prysmctl:{DOCKER_TAG}": ":image_with_creation_time", }, tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) go_image_debug( name = "image_debug", image = ":image", tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) container_bundle( name = "image_bundle_debug", images = { "gcr.io/prysmaticlabs/prysm/cmd/prysmctl:latest-debug": ":image_debug", "gcr.io/prysmaticlabs/prysm/cmd/prysmctl:{DOCKER_TAG}-debug": ":image_debug", }, tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) go_image_alpine( name = "image_alpine", image = ":image", tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) container_bundle( name = "image_bundle_alpine", images = { "gcr.io/prysmaticlabs/prysm/cmd/prysmctl:latest-alpine": ":image_alpine", "gcr.io/prysmaticlabs/prysm/cmd/prysmctl:{DOCKER_TAG}-alpine": ":image_alpine", }, tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) docker_push( name = "push_images", bundle = ":image_bundle", tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) docker_push( name = "push_images_debug", bundle = ":image_bundle_debug", tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) docker_push( name = "push_images_alpine", bundle = ":image_bundle_alpine", tags = ["manual"], visibility = ["//cmd/prysmctl:__pkg__"], ) go_binary( name = "prysmctl", embed = [":go_default_library"], gotags = ["noMainnetGenesis"], visibility = ["//visibility:public"], )