load("@io_bazel_rules_go//go:def.bzl", "go_library")

# gazelle:resolve go github.com/planetscale/vtprotobuf/vtproto @com_github_planetscale_vtprotobuf//include/github.com/planetscale/vtprotobuf/vtproto:vtproto_go_proto
go_library(
    name = "libmain",
    srcs = ["libmain.go"],
    importpath = "github.com/buildbuddy-io/buildbuddy/server/libmain",
    visibility = ["//visibility:public"],
    deps = [
        "//proto:auth_go_proto",
        "//proto:buildbuddy_service_go_proto",
        "//proto:publish_build_event_go_proto",
        "//proto:remote_asset_go_proto",
        "//proto:remote_execution_go_proto",
        "//proto:scheduler_go_proto",
        "//proto:soci_go_proto",
        "//proto/api/v1:api_v1_go_proto",
        "//server/backends/blobstore",
        "//server/backends/disk_cache",
        "//server/backends/github",
        "//server/backends/invocationdb",
        "//server/backends/memory_cache",
        "//server/backends/memory_kvstore",
        "//server/backends/memory_metrics_collector",
        "//server/backends/repo_downloader",
        "//server/backends/slack",
        "//server/build_event_protocol/build_event_handler",
        "//server/build_event_protocol/build_event_proxy",
        "//server/build_event_protocol/build_event_server",
        "//server/build_event_protocol/webhooks",
        "//server/buildbuddy_server",
        "//server/endpoint_urls/build_buddy_url",
        "//server/gossip",
        "//server/http/interceptors",
        "//server/http/protolet",
        "//server/interfaces",
        "//server/nullauth",
        "//server/real_environment",
        "//server/remote_asset/fetch_server",
        "//server/remote_asset/push_server",
        "//server/remote_cache/action_cache_server",
        "//server/remote_cache/byte_stream_client",
        "//server/remote_cache/byte_stream_server",
        "//server/remote_cache/capabilities_server",
        "//server/remote_cache/content_addressable_storage_server",
        "//server/splash",
        "//server/ssl",
        "//server/static",
        "//server/util/db",
        "//server/util/grpc_client",
        "//server/util/grpc_server",
        "//server/util/healthcheck",
        "//server/util/log",
        "//server/util/monitoring",
        "//server/util/rlimit",
        "//server/util/scratchspace",
        "//server/util/status",
        "//server/util/tracing",
        "//server/util/usageutil",
        "//server/util/vtprotocodec",
        "//static:bundle",
        "@org_golang_google_genproto_googleapis_bytestream//:bytestream",
        "@org_golang_google_grpc//:grpc",
        "@org_golang_google_grpc//channelz/service",
    ],
)
