github.com/prysmaticlabs/prysm@v1.4.4/cmd/validator/BUILD.bazel (about) 1 load("@prysm//tools/go:def.bzl", "go_library", "go_test") 2 load("@io_bazel_rules_go//go:def.bzl", "go_binary") 3 load("@io_bazel_rules_docker//go:image.bzl", "go_image") 4 load("@io_bazel_rules_docker//container:container.bzl", "container_bundle", "container_image") 5 load("//tools:go_image.bzl", "go_image_alpine", "go_image_debug") 6 load("@io_bazel_rules_docker//contrib:push-all.bzl", "docker_push") 7 8 go_library( 9 name = "go_default_library", 10 srcs = [ 11 "log.go", 12 "main.go", 13 "usage.go", 14 ], 15 importpath = "github.com/prysmaticlabs/prysm/cmd/validator", 16 visibility = ["//validator:__subpackages__"], 17 deps = [ 18 "//cmd/validator/accounts:go_default_library", 19 "//cmd/validator/db:go_default_library", 20 "//cmd/validator/flags:go_default_library", 21 "//cmd/validator/slashing-protection:go_default_library", 22 "//cmd/validator/wallet:go_default_library", 23 "//shared/cmd:go_default_library", 24 "//shared/debug:go_default_library", 25 "//shared/featureconfig:go_default_library", 26 "//shared/fileutil:go_default_library", 27 "//shared/journald:go_default_library", 28 "//shared/logutil:go_default_library", 29 "//shared/maxprocs:go_default_library", 30 "//shared/tos:go_default_library", 31 "//shared/version:go_default_library", 32 "//validator/node:go_default_library", 33 "@com_github_joonix_log//:go_default_library", 34 "@com_github_sirupsen_logrus//:go_default_library", 35 "@com_github_urfave_cli_v2//:go_default_library", 36 "@com_github_x_cray_logrus_prefixed_formatter//:go_default_library", 37 ], 38 ) 39 40 go_image( 41 name = "image", 42 base = select({ 43 "//tools:base_image_alpine": "//tools:alpine_cc_image", 44 "//tools:base_image_cc": "//tools:cc_image", 45 "//conditions:default": "//tools:cc_image", 46 }), 47 binary = ":validator", 48 tags = ["manual"], 49 visibility = ["//validator:__pkg__"], 50 ) 51 52 container_image( 53 name = "image_with_creation_time", 54 base = "image", 55 stamp = True, 56 visibility = ["//validator:__pkg__"], 57 ) 58 59 container_bundle( 60 name = "image_bundle", 61 images = { 62 "gcr.io/prysmaticlabs/prysm/validator:latest": ":image_with_creation_time", 63 "gcr.io/prysmaticlabs/prysm/validator:{DOCKER_TAG}": ":image_with_creation_time", 64 "index.docker.io/prysmaticlabs/prysm-validator:latest": ":image_with_creation_time", 65 "index.docker.io/prysmaticlabs/prysm-validator:{DOCKER_TAG}": ":image_with_creation_time", 66 }, 67 tags = ["manual"], 68 visibility = ["//validator:__pkg__"], 69 ) 70 71 go_image_debug( 72 name = "image_debug", 73 image = ":image", 74 tags = ["manual"], 75 visibility = ["//validator:__pkg__"], 76 ) 77 78 container_bundle( 79 name = "image_bundle_debug", 80 images = { 81 "gcr.io/prysmaticlabs/prysm/validator:latest-debug": ":image_debug", 82 "gcr.io/prysmaticlabs/prysm/validator:{DOCKER_TAG}-debug": ":image_debug", 83 "index.docker.io/prysmaticlabs/prysm-validator:latest-debug": ":image_debug", 84 "index.docker.io/prysmaticlabs/prysm-validator:{DOCKER_TAG}-debug": ":image_debug", 85 }, 86 tags = ["manual"], 87 visibility = ["//validator:__pkg__"], 88 ) 89 90 go_image_alpine( 91 name = "image_alpine", 92 image = ":image", 93 tags = ["manual"], 94 visibility = ["//validator:__pkg__"], 95 ) 96 97 container_bundle( 98 name = "image_bundle_alpine", 99 images = { 100 "gcr.io/prysmaticlabs/prysm/validator:latest-alpine": ":image_alpine", 101 "gcr.io/prysmaticlabs/prysm/validator:{DOCKER_TAG}-alpine": ":image_alpine", 102 "index.docker.io/prysmaticlabs/prysm-validator:latest-alpine": ":image_alpine", 103 "index.docker.io/prysmaticlabs/prysm-validator:{DOCKER_TAG}-alpine": ":image_alpine", 104 }, 105 tags = ["manual"], 106 visibility = ["//validator:__pkg__"], 107 ) 108 109 docker_push( 110 name = "push_images", 111 bundle = ":image_bundle", 112 tags = ["manual"], 113 visibility = ["//validator:__pkg__"], 114 ) 115 116 docker_push( 117 name = "push_images_debug", 118 bundle = ":image_bundle_debug", 119 tags = ["manual"], 120 visibility = ["//validator:__pkg__"], 121 ) 122 123 docker_push( 124 name = "push_images_alpine", 125 bundle = ":image_bundle_alpine", 126 tags = ["manual"], 127 visibility = ["//validator:__pkg__"], 128 ) 129 130 go_binary( 131 name = "validator", 132 embed = [":go_default_library"], 133 pure = "off", # Enabled unless there is a valid reason to include cgo dep. 134 visibility = [ 135 "//endtoend:__pkg__", 136 "//validator:__subpackages__", 137 ], 138 ) 139 140 go_test( 141 name = "go_default_test", 142 srcs = ["usage_test.go"], 143 embed = [":go_default_library"], 144 visibility = ["//validator:__pkg__"], 145 deps = [ 146 "//shared/featureconfig:go_default_library", 147 "@com_github_urfave_cli_v2//:go_default_library", 148 ], 149 )