hyperboria/nexus/hub/BUILD.bazel

76 lines
1.9 KiB
Python

load("@io_bazel_rules_docker//python3:image.bzl", "py3_image")
load("@io_bazel_rules_docker//container:container.bzl", "container_push")
load("@pip_modules//:requirements.bzl", "requirement")
alias(
name = "binary",
actual = ":image.binary",
)
py3_image(
name = "image",
srcs = glob(
["**/*.py"],
exclude = ["proto/**"],
),
base = "//images/production:base-python-image",
data = [
"configs/base.yaml",
"configs/logging.yaml",
"configs/pylon.yaml",
],
main = "main.py",
srcs_version = "PY3ONLY",
visibility = ["//visibility:public"],
deps = [
requirement("aiodns"),
requirement("aiohttp"),
requirement("aiohttp_socks"),
requirement("cchardet"),
requirement("orjson"),
requirement("prometheus-client"),
requirement("pycryptodome"),
requirement("pypika"),
requirement("python-socks"),
requirement("pytz"),
requirement("tenacity"),
requirement("uvloop"),
"//idm/api/aioclient",
"//idm/api/proto:proto_py",
requirement("aiogrobid"),
"//library/aiogrpctools",
requirement("aioipfs-2"),
requirement("aiokit"),
"//library/aiopostgres",
requirement("izihawa_configurator"),
"//library/telegram",
"//nexus/hub/proto:grpc_py",
"//nexus/hub/proto:proto_py",
"//nexus/meta_api/aioclient",
"//nexus/models/proto:proto_py",
"//nexus/pylon",
"//nexus/translations",
"//nexus/views/telegram",
],
)
container_push(
name = "push-latest",
format = "Docker",
image = ":image",
registry = "registry.infra.svc.cluster.local",
repository = "nexus-hub",
tag = "latest",
)
container_push(
name = "push-testing",
format = "Docker",
image = ":image",
registry = "registry.infra.svc.cluster.local",
repository = "nexus-hub",
tag = "testing",
)