load("@prysm//tools/go:def.bzl", "go_library", "go_test") load("@io_bazel_rules_go//go:def.bzl", "go_binary") load("@io_bazel_rules_docker//go:image.bzl", "go_image") load("@io_bazel_rules_docker//container:container.bzl", "container_bundle") load("@io_bazel_rules_docker//contrib:push-all.bzl", "docker_push") go_library( name = "go_default_library", srcs = ["bootnode.go"], importpath = "github.com/prysmaticlabs/prysm/v3/tools/bootnode", visibility = ["//visibility:private"], deps = [ "//async:go_default_library", "//beacon-chain/core/signing:go_default_library", "//config/params:go_default_library", "//crypto/ecdsa:go_default_library", "//encoding/bytesutil:go_default_library", "//io/logs:go_default_library", "//network:go_default_library", "//proto/prysm/v1alpha1:go_default_library", "//runtime/maxprocs:go_default_library", "//runtime/version:go_default_library", "@com_github_ethereum_go_ethereum//crypto:go_default_library", "@com_github_ethereum_go_ethereum//log:go_default_library", "@com_github_ethereum_go_ethereum//p2p/discover:go_default_library", "@com_github_ethereum_go_ethereum//p2p/enode:go_default_library", "@com_github_ethereum_go_ethereum//p2p/enr:go_default_library", "@com_github_libp2p_go_libp2p//core/crypto:go_default_library", "@com_github_pkg_errors//:go_default_library", "@com_github_prometheus_client_golang//prometheus:go_default_library", "@com_github_prometheus_client_golang//prometheus/promauto:go_default_library", "@com_github_prysmaticlabs_go_bitfield//:go_default_library", "@com_github_sirupsen_logrus//:go_default_library", ], ) go_image( name = "image", base = "//tools:cc_image", binary = ":bootnode", tags = ["manual"], visibility = ["//visibility:private"], ) go_binary( name = "bootnode", embed = [":go_default_library"], visibility = ["//visibility:public"], ) container_bundle( name = "image_bundle", images = { "gcr.io/prysmaticlabs/prysm/bootnode:latest": ":image", "gcr.io/prysmaticlabs/prysm/bootnode:{DOCKER_TAG}": ":image", }, tags = ["manual"], ) docker_push( name = "push_images", bundle = ":image_bundle", tags = ["manual"], ) go_test( name = "go_default_test", srcs = ["bootnode_test.go"], embed = [":go_default_library"], flaky = True, deps = [ "//crypto/ecdsa:go_default_library", "//network:go_default_library", "//runtime/maxprocs:go_default_library", "//testing/assert:go_default_library", "//testing/require:go_default_library", "@com_github_ethereum_go_ethereum//p2p/discover:go_default_library", "@com_github_ethereum_go_ethereum//p2p/enode:go_default_library", "@com_github_libp2p_go_libp2p//core/crypto:go_default_library", "@com_github_sirupsen_logrus//:go_default_library", ], )