blob: d18410a59e4dcd53b2ccb11034569557351441e6 [file] [log] [blame]
load("@rules_java//java:defs.bzl", "java_library")
package(default_visibility = ["//src:__subpackages__"])
filegroup(
name = "srcs",
srcs = glob(["**"]),
visibility = ["//src:__subpackages__"],
)
# Do not depend on this target when making a worker. To use WorkRequestHandler, depend on :work_request_handlers.
java_library(
name = "worker",
srcs = glob(
["*.java"],
exclude = [
"WorkerFilesHash.java",
"WorkerSpawnRunner.java",
"WorkerModule.java",
"WorkerParser.java",
"WorkerSpawnStrategy.java",
"WorkerKey.java",
"WorkerMetricsCollector.java",
"WorkerMetric.java",
"WorkerMetricsEvent.java",
"WorkerOptions.java",
"WorkerLifecycleManager.java",
"JsonWorkerMessageProtocol.java",
"JsonWorkerProtocol.java",
"ProtoWorkerMessageProtocol.java",
"ProtoWorkerProtocol.java",
"WorkerProtocolImpl.java",
],
),
deps = [
":worker_key",
":worker_protocol",
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/main/java/com/google/devtools/build/lib/events",
"//src/main/java/com/google/devtools/build/lib/sandbox:sandbox_helpers",
"//src/main/java/com/google/devtools/build/lib/shell",
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//src/main/protobuf:failure_details_java_proto",
"//src/main/protobuf:worker_protocol_java_proto",
"//third_party:apache_commons_pool2",
"//third_party:auto_value",
"//third_party:flogger",
"//third_party:gson",
"//third_party:guava",
"//third_party:jsr305",
"//third_party/protobuf:protobuf_java",
"//third_party/protobuf:protobuf_java_util",
],
)
java_library(
name = "worker_protocol",
srcs = [
"JsonWorkerProtocol.java",
"ProtoWorkerProtocol.java",
"WorkerProtocolImpl.java",
],
deps = [
"//src/main/java/com/google/devtools/common/options",
"//src/main/protobuf:worker_protocol_java_proto",
"//third_party:gson",
"//third_party:guava",
"//third_party/protobuf:protobuf_java",
"//third_party/protobuf:protobuf_java_util",
],
)
java_library(
name = "worker_files_hash",
srcs = ["WorkerFilesHash.java"],
deps = [
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/main/java/com/google/devtools/build/lib/actions:action_input_helper",
"//src/main/java/com/google/devtools/build/lib/actions:artifacts",
"//src/main/java/com/google/devtools/build/lib/actions:file_metadata",
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//third_party:guava",
"//third_party:jsr305",
],
)
java_library(
name = "worker_spawn_runner",
srcs = [
"WorkerLifecycleManager.java",
"WorkerParser.java",
"WorkerSpawnRunner.java",
],
deps = [
":worker",
":worker_files_hash",
":worker_key",
":worker_metric",
":worker_options",
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/main/java/com/google/devtools/build/lib/actions:action_input_helper",
"//src/main/java/com/google/devtools/build/lib/actions:artifacts",
"//src/main/java/com/google/devtools/build/lib/actions:execution_requirements",
"//src/main/java/com/google/devtools/build/lib/actions:file_metadata",
"//src/main/java/com/google/devtools/build/lib/actions:localhost_capacity",
"//src/main/java/com/google/devtools/build/lib/actions:resource_manager",
"//src/main/java/com/google/devtools/build/lib/clock",
"//src/main/java/com/google/devtools/build/lib/events",
"//src/main/java/com/google/devtools/build/lib/exec:bin_tools",
"//src/main/java/com/google/devtools/build/lib/exec:runfiles_tree_updater",
"//src/main/java/com/google/devtools/build/lib/exec:spawn_runner",
"//src/main/java/com/google/devtools/build/lib/exec/local",
"//src/main/java/com/google/devtools/build/lib/profiler",
"//src/main/java/com/google/devtools/build/lib/sandbox:sandbox_helpers",
"//src/main/java/com/google/devtools/build/lib/util/io",
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//src/main/protobuf:failure_details_java_proto",
"//src/main/protobuf:worker_protocol_java_proto",
"//third_party:apache_commons_pool2",
"//third_party:flogger",
"//third_party:guava",
"//third_party/protobuf:protobuf_java",
],
)
java_library(
name = "worker_module",
srcs = [
"WorkerModule.java",
"WorkerSpawnStrategy.java",
],
deps = [
":worker",
":worker_metric",
":worker_options",
":worker_spawn_runner",
"//src/main/java/com/google/devtools/build/lib:runtime",
"//src/main/java/com/google/devtools/build/lib/events",
"//src/main/java/com/google/devtools/build/lib/exec:abstract_spawn_strategy",
"//src/main/java/com/google/devtools/build/lib/exec:execution_options",
"//src/main/java/com/google/devtools/build/lib/exec:runfiles_tree_updater",
"//src/main/java/com/google/devtools/build/lib/exec:spawn_strategy_registry",
"//src/main/java/com/google/devtools/build/lib/exec/local",
"//src/main/java/com/google/devtools/build/lib/runtime/commands/events",
"//src/main/java/com/google/devtools/build/lib/sandbox:sandbox_helpers",
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/main/java/com/google/devtools/common/options",
"//third_party:guava",
"//third_party:jsr305",
],
)
java_library(
name = "work_request_handlers",
srcs = [
"JsonWorkerMessageProcessor.java",
"ProtoWorkerMessageProcessor.java",
"WorkRequestHandler.java",
],
deps = [
"//src/main/protobuf:worker_protocol_java_proto",
"//third_party:gson",
"//third_party:guava",
"//third_party/protobuf:protobuf_java",
"//third_party/protobuf:protobuf_java_util",
],
)
java_library(
name = "worker_key",
srcs = [
"WorkerKey.java",
],
deps = [
"//src/main/java/com/google/devtools/build/lib/actions:execution_requirements",
"//src/main/java/com/google/devtools/build/lib/util:command",
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//third_party:guava",
],
)
java_library(
name = "worker_metric",
srcs = [
"WorkerMetric.java",
"WorkerMetricsCollector.java",
],
deps = [
"//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:build_event_stream_java_proto",
"//src/main/java/com/google/devtools/build/lib/clock",
"//src/main/java/com/google/devtools/build/lib/util:os",
"//third_party:auto_value",
"//third_party:flogger",
"//third_party:guava",
"//third_party:jsr305",
],
)
java_library(
name = "worker_options",
srcs = ["WorkerOptions.java"],
deps = [
"//src/main/java/com/google/devtools/build/lib/util:ram_resource_converter",
"//src/main/java/com/google/devtools/build/lib/util:resource_converter",
"//src/main/java/com/google/devtools/common/options",
"//third_party:guava",
],
)