github.com/prysmaticlabs/prysm@v1.4.4/cmd/beacon-chain/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/beacon-chain", 16 visibility = ["//beacon-chain:__subpackages__"], 17 deps = [ 18 "//beacon-chain/node:go_default_library", 19 "//cmd/beacon-chain/db:go_default_library", 20 "//cmd/beacon-chain/flags:go_default_library", 21 "//shared/cmd:go_default_library", 22 "//shared/debug:go_default_library", 23 "//shared/featureconfig:go_default_library", 24 "//shared/fileutil:go_default_library", 25 "//shared/journald:go_default_library", 26 "//shared/logutil:go_default_library", 27 "//shared/maxprocs:go_default_library", 28 "//shared/tos:go_default_library", 29 "//shared/version:go_default_library", 30 "@com_github_ethereum_go_ethereum//log:go_default_library", 31 "@com_github_ipfs_go_log_v2//:go_default_library", 32 "@com_github_joonix_log//:go_default_library", 33 "@com_github_sirupsen_logrus//:go_default_library", 34 "@com_github_urfave_cli_v2//:go_default_library", 35 "@com_github_x_cray_logrus_prefixed_formatter//:go_default_library", 36 ], 37 ) 38 39 go_image( 40 name = "image", 41 base = select({ 42 "//tools:base_image_alpine": "//tools:alpine_cc_image", 43 "//tools:base_image_cc": "//tools:cc_image", 44 "//conditions:default": "//tools:cc_image", 45 }), 46 binary = ":beacon-chain", 47 tags = ["manual"], 48 visibility = ["//beacon-chain:__pkg__"], 49 ) 50 51 container_image( 52 name = "image_with_creation_time", 53 base = "image", 54 stamp = True, 55 visibility = ["//beacon-chain:__pkg__"], 56 ) 57 58 container_bundle( 59 name = "image_bundle", 60 images = { 61 "gcr.io/prysmaticlabs/prysm/beacon-chain:latest": ":image_with_creation_time", 62 "gcr.io/prysmaticlabs/prysm/beacon-chain:{DOCKER_TAG}": ":image_with_creation_time", 63 "index.docker.io/prysmaticlabs/prysm-beacon-chain:latest": ":image_with_creation_time", 64 "index.docker.io/prysmaticlabs/prysm-beacon-chain:{DOCKER_TAG}": ":image_with_creation_time", 65 }, 66 tags = ["manual"], 67 visibility = ["//beacon-chain:__pkg__"], 68 ) 69 70 go_image_debug( 71 name = "image_debug", 72 image = ":image", 73 tags = ["manual"], 74 visibility = ["//beacon-chain:__pkg__"], 75 ) 76 77 container_bundle( 78 name = "image_bundle_debug", 79 images = { 80 "gcr.io/prysmaticlabs/prysm/beacon-chain:latest-debug": ":image_debug", 81 "gcr.io/prysmaticlabs/prysm/beacon-chain:{DOCKER_TAG}-debug": ":image_debug", 82 "index.docker.io/prysmaticlabs/prysm-beacon-chain:latest-debug": ":image_debug", 83 "index.docker.io/prysmaticlabs/prysm-beacon-chain:{DOCKER_TAG}-debug": ":image_debug", 84 }, 85 tags = ["manual"], 86 visibility = ["//beacon-chain:__pkg__"], 87 ) 88 89 go_image_alpine( 90 name = "image_alpine", 91 image = ":image", 92 tags = ["manual"], 93 visibility = ["//beacon-chain:__pkg__"], 94 ) 95 96 container_bundle( 97 name = "image_bundle_alpine", 98 images = { 99 "gcr.io/prysmaticlabs/prysm/beacon-chain:latest-alpine": ":image_alpine", 100 "gcr.io/prysmaticlabs/prysm/beacon-chain:{DOCKER_TAG}-alpine": ":image_alpine", 101 "index.docker.io/prysmaticlabs/prysm-beacon-chain:latest-alpine": ":image_alpine", 102 "index.docker.io/prysmaticlabs/prysm-beacon-chain:{DOCKER_TAG}-alpine": ":image_alpine", 103 }, 104 tags = ["manual"], 105 visibility = ["//beacon-chain:__pkg__"], 106 ) 107 108 docker_push( 109 name = "push_images", 110 bundle = ":image_bundle", 111 tags = ["manual"], 112 visibility = ["//beacon-chain:__pkg__"], 113 ) 114 115 docker_push( 116 name = "push_images_debug", 117 bundle = ":image_bundle_debug", 118 tags = ["manual"], 119 visibility = ["//beacon-chain:__pkg__"], 120 ) 121 122 docker_push( 123 name = "push_images_alpine", 124 bundle = ":image_bundle_alpine", 125 tags = ["manual"], 126 visibility = ["//beacon-chain:__pkg__"], 127 ) 128 129 go_binary( 130 name = "beacon-chain", 131 embed = [":go_default_library"], 132 visibility = [ 133 "//beacon-chain:__subpackages__", 134 "//endtoend:__pkg__", 135 ], 136 ) 137 138 go_test( 139 name = "go_default_test", 140 size = "small", 141 srcs = ["usage_test.go"], 142 embed = [":go_default_library"], 143 visibility = ["//beacon-chain:__pkg__"], 144 deps = [ 145 "//shared/featureconfig:go_default_library", 146 "@com_github_urfave_cli_v2//:go_default_library", 147 ], 148 )