load("@bazel_skylib//rules:common_settings.bzl", "bool_flag", "bool_setting")
load("@bazel_skylib//rules:copy_directory.bzl", "copy_directory")
load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
load("@bazel_tools//tools/build_defs/pkg:pkg.bzl", "pkg_tar")
load("@rules_cc//cc:defs.bzl", "cc_shared_library")
licenses(["notice"])
exports_files(["LICENSE"])
package(default_visibility = ["//visibility:public"])
config_setting(
name = "linux_x86_64",
constraint_values = [
"@platforms//cpu:x86_64",
"@platforms//os:linux",
],
)
config_setting(
name = "linux_aarch64",
constraint_values = [
"@platforms//cpu:arm64",
"@platforms//os:linux",
],
)
config_setting(
name = "enable_urma",
define_values = {"enable_urma": "true"},
visibility = ["//visibility:public"],
)
config_setting(
name = "enable_pipeline_h2d",
define_values = {
"enable_pipeline_h2d": "true",
"enable_urma": "true",
},
visibility = ["//visibility:public"],
)
config_setting(
name = "with_tests",
define_values = {"with_tests": "true"},
visibility = ["//visibility:public"],
)
cc_shared_library(
name = "datasystem",
additional_linker_inputs = ["export_datasystem_symbols.lds"],
exports_filter = [
# Required for dynamic_deps consumers (libds_client_py.so):
# these transitive deps must be declared as exported so Bazel
# knows their symbols are available from the shared library.
"//src/datasystem/common/flags:ds_flags",
"//src/datasystem/common/object_cache:buffer",
"//src/datasystem/common/perf:common_perf",
"//src/datasystem/common/util:format",
"//src/datasystem/common/util:status_helper",
"//src/datasystem/common/log/spdlog:log_rate_limiter",
"//src/datasystem/client:client_flags_monitor",
"//src/datasystem/client:client_worker_common_api",
"//src/datasystem/client:datasystem",
"//src/datasystem/client:embedded_client_worker_api",
"//src/datasystem/client:listen_worker",
"//src/datasystem/client:mmap_manager",
"//src/datasystem/client/context",
"//src/datasystem/client/hetero_cache:hetero_client",
"//src/datasystem/client/kv_cache:kv_client",
"//src/datasystem/client/kv_cache:read_only_buffer",
"//src/datasystem/client/object_cache:client_memory_ref_table",
"//src/datasystem/client/object_cache:object_client",
"//src/datasystem/client/object_cache:object_client_impl",
"//src/datasystem/client/object_cache/client_worker_api:client_worker_base_api",
"//src/datasystem/client/object_cache/client_worker_api:client_worker_local_api",
"//src/datasystem/client/object_cache/client_worker_api:client_worker_remote_api",
"//src/datasystem/client/object_cache/device:client_device_object_manager",
"//src/datasystem/client/object_cache/device:comm_factory_and_hccl_comm",
"//src/datasystem/client/object_cache/device:device_memory_unit",
"//src/datasystem/client/object_cache/device:future",
"//src/datasystem/client/object_cache/device:p2p_subscribe",
"//src/datasystem/client/object_cache/device:page_attn_utils",
"//src/datasystem/client/stream_cache:client_worker_api",
"//src/datasystem/client/stream_cache:consumer",
"//src/datasystem/client/stream_cache:producer",
"//src/datasystem/client/stream_cache:producer_consumer_worker_api",
"//src/datasystem/client/stream_cache:stream_cache_impl",
"//src/datasystem/client/stream_cache:stream_client",
"//src/datasystem/client/perf_client:perf_client_lib",
# tbb, spdlog, securec - required by dynamic_deps consumers
"@tbb//:tbb",
"@ds-spdlog//:ds-spdlog",
"@securec//:securec",
# absl - transitive deps required by dynamic_deps consumers
"@com_google_absl//absl/base:base",
"@com_google_absl//absl/base:log_severity",
"@com_google_absl//absl/base:malloc_internal",
"@com_google_absl//absl/base:raw_logging_internal",
"@com_google_absl//absl/base:spinlock_wait",
"@com_google_absl//absl/base:strerror",
"@com_google_absl//absl/base:throw_delegate",
"@com_google_absl//absl/base:tracing_internal",
"@com_google_absl//absl/debugging:debugging_internal",
"@com_google_absl//absl/debugging:demangle_internal",
"@com_google_absl//absl/debugging:demangle_rust",
"@com_google_absl//absl/debugging:decode_rust_punycode",
"@com_google_absl//absl/debugging:examine_stack",
"@com_google_absl//absl/debugging:stacktrace",
"@com_google_absl//absl/debugging:symbolize",
"@com_google_absl//absl/debugging:utf8_for_code_point",
"@com_google_absl//absl/hash:hash",
"@com_google_absl//absl/hash:city",
"@com_google_absl//absl/hash:low_level_hash",
"@com_google_absl//absl/log:globals",
"@com_google_absl//absl/log:log_entry",
"@com_google_absl//absl/log:log_sink",
"@com_google_absl//absl/log/internal:conditions",
"@com_google_absl//absl/log/internal:fnmatch",
"@com_google_absl//absl/log/internal:format",
"@com_google_absl//absl/log/internal:globals",
"@com_google_absl//absl/log/internal:log_message",
"@com_google_absl//absl/log/internal:log_sink_set",
"@com_google_absl//absl/log/internal:nullguard",
"@com_google_absl//absl/log/internal:proto",
"@com_google_absl//absl/log/internal:structured_proto",
"@com_google_absl//absl/log/internal:vlog_config",
"@com_google_absl//absl/numeric:int128",
"@com_google_absl//absl/strings:internal",
"@com_google_absl//absl/strings:str_format_internal",
"@com_google_absl//absl/strings:string_view",
"@com_google_absl//absl/strings:strings",
"@com_google_absl//absl/synchronization:graphcycles_internal",
"@com_google_absl//absl/synchronization:kernel_timeout_internal",
"@com_google_absl//absl/synchronization:synchronization",
"@com_google_absl//absl/time:time",
"@com_google_absl//absl/time/internal/cctz:civil_time",
"@com_google_absl//absl/time/internal/cctz:time_zone",
"@com_google_absl//absl/types:bad_optional_access",
"@com_google_absl//absl/types:bad_variant_access",
# absl - additional deps for dsbench_cpp/worker dynamic_deps
"@com_google_absl//absl/status:statusor",
"@com_google_absl//absl/status:status",
"@com_google_absl//absl/container:raw_hash_set",
"@com_google_absl//absl/strings:cord",
"@com_google_absl//absl/strings:cordz_info",
"@com_google_absl//absl/strings:cord_internal",
"@com_google_absl//absl/strings:cordz_functions",
"@com_google_absl//absl/strings:cordz_handle",
"@com_google_absl//absl/crc:crc_cord_state",
"@com_google_absl//absl/crc:crc32c",
"@com_google_absl//absl/crc:crc_internal",
"@com_google_absl//absl/crc:cpu_detect",
"@com_google_absl//absl/container:hashtablez_sampler",
"@com_google_absl//absl/profiling:exponential_biased",
"@com_google_absl//absl/log/internal:check_op",
"@com_google_absl//absl/debugging:leak_check",
# protobuf - required for dsbench_cpp/worker dynamic_deps
"@zlib//:zlib",
"@re2//:re2",
"@zmq//:zmq",
"@boringssl//src:crypto_cxx",
"@boringssl//src:crypto_internal",
"@boringssl//src:ssl_internal",
"@com_google_protobuf//src/google/protobuf/io:printer",
"@com_google_protobuf//src/google/protobuf/io:zero_copy_sink",
"@com_google_protobuf//third_party/utf8_range:utf8_validity",
"@com_google_protobuf//third_party/utf8_range:utf8_range",
"@com_google_protobuf//src/google/protobuf/io:tokenizer",
"@com_google_protobuf//src/google/protobuf/io:io",
"@com_google_protobuf//src/google/protobuf/io:io_win32",
"@com_google_protobuf//src/google/protobuf:arena",
"@com_google_protobuf//src/google/protobuf:arena_align",
"@com_google_protobuf//src/google/protobuf/stubs:lite",
"@com_google_protobuf//src/google/protobuf:port",
"@com_google_protobuf//src/google/protobuf/io:gzip_stream",
"@com_google_protobuf//src/google/protobuf:protobuf",
"@com_google_protobuf//src/google/protobuf:protobuf_lite",
"@com_google_protobuf//src/google/protobuf:any_proto",
"@com_google_protobuf//src/google/protobuf:api_proto",
"@com_google_protobuf//src/google/protobuf:duration_proto",
"@com_google_protobuf//src/google/protobuf:empty_proto",
"@com_google_protobuf//src/google/protobuf:field_mask_proto",
"@com_google_protobuf//src/google/protobuf:source_context_proto",
"@com_google_protobuf//src/google/protobuf:struct_proto",
"@com_google_protobuf//src/google/protobuf:timestamp_proto",
"@com_google_protobuf//src/google/protobuf:type_proto",
"@com_google_protobuf//src/google/protobuf:wrappers_proto",
"@com_google_protobuf//src/google/protobuf/util:delimited_message_util",
"@com_google_protobuf//src/google/protobuf/util:differencer",
"@com_google_protobuf//src/google/protobuf/util:field_mask_util",
"@com_google_protobuf//src/google/protobuf/util:time_util",
"@com_google_protobuf//src/google/protobuf/util:type_resolver",
"@com_google_protobuf//src/google/protobuf/json:json",
"@com_google_protobuf//src/google/protobuf/json:lexer",
"@com_google_protobuf//src/google/protobuf/json:message_path",
"@com_google_protobuf//src/google/protobuf/json:parser",
"@com_google_protobuf//src/google/protobuf/json:unparser",
"@com_google_protobuf//src/google/protobuf/json:untyped_message",
"@com_google_protobuf//src/google/protobuf/json:writer",
"@com_google_protobuf//src/google/protobuf/json:zero_copy_buffered_stream",
"@com_google_protobuf//src/google/protobuf/testing:file",
"@com_google_protobuf//src/google/protobuf/compiler:code_generator",
"@com_google_protobuf//src/google/protobuf/compiler:command_line_interface",
"@com_google_protobuf//src/google/protobuf/compiler:importer",
"@com_google_protobuf//src/google/protobuf/compiler:protoc_lib",
"@com_google_protobuf//src/google/protobuf/compiler:retention",
"@com_google_protobuf//src/google/protobuf/compiler:versions",
"@com_google_protobuf//src/google/protobuf/compiler/cpp:cpp",
"@com_google_protobuf//src/google/protobuf/compiler/cpp:names_internal",
"@com_google_protobuf//src/google/protobuf/compiler/csharp:csharp",
"@com_google_protobuf//src/google/protobuf/compiler/csharp:names",
"@com_google_protobuf//src/google/protobuf/compiler/java/full:eg",
"@com_google_protobuf//src/google/protobuf/compiler/java/full:fgs",
"@com_google_protobuf//src/google/protobuf/compiler/java/full:full",
"@com_google_protobuf//src/google/protobuf/compiler/java/full:mfg",
"@com_google_protobuf//src/google/protobuf/compiler/java/full:service",
"@com_google_protobuf//src/google/protobuf/compiler/java/lite:field_generators",
"@com_google_protobuf//src/google/protobuf/compiler/java/lite:lite",
"@com_google_protobuf//src/google/protobuf/compiler/java:generator_common",
"@com_google_protobuf//src/google/protobuf/compiler/java:helpers",
"@com_google_protobuf//src/google/protobuf/compiler/java:internal_helpers",
"@com_google_protobuf//src/google/protobuf/compiler/java:java",
"@com_google_protobuf//src/google/protobuf/compiler/java:java_features_bootstrap",
"@com_google_protobuf//src/google/protobuf/compiler/java:kotlin",
"@com_google_protobuf//src/google/protobuf/compiler/java:message_serialization",
"@com_google_protobuf//src/google/protobuf/compiler/objectivec:line_consumer",
"@com_google_protobuf//src/google/protobuf/compiler/objectivec:names_internal",
"@com_google_protobuf//src/google/protobuf/compiler/objectivec:objectivec",
"@com_google_protobuf//src/google/protobuf/compiler/php:names",
"@com_google_protobuf//src/google/protobuf/compiler/php:php",
"@com_google_protobuf//src/google/protobuf/compiler/python:python",
"@com_google_protobuf//src/google/protobuf/compiler/ruby:ruby",
"@com_google_protobuf//src/google/protobuf/compiler/rust:context",
"@com_google_protobuf//src/google/protobuf/compiler/rust:crate_mapping",
"@com_google_protobuf//src/google/protobuf/compiler/rust:enum",
"@com_google_protobuf//src/google/protobuf/compiler/rust:message",
"@com_google_protobuf//src/google/protobuf/compiler/rust:naming",
"@com_google_protobuf//src/google/protobuf/compiler/rust:oneof",
"@com_google_protobuf//src/google/protobuf/compiler/rust:relative_path",
"@com_google_protobuf//src/google/protobuf/compiler/rust:rust",
"@com_google_protobuf//src/google/protobuf/compiler/rust:rust_field_type",
"@com_google_protobuf//src/google/protobuf/compiler/rust/accessors:accessors",
"@com_google_protobuf//upb_generator:mangle",
# absl flags - additional for dsbench_cpp/worker
"@com_google_absl//absl/flags:commandlineflag",
"@com_google_absl//absl/flags:commandlineflag_internal",
"@com_google_absl//absl/flags:config",
"@com_google_absl//absl/flags:flag_internal",
"@com_google_absl//absl/flags:marshalling",
"@com_google_absl//absl/flags:private_handle_accessor",
"@com_google_absl//absl/flags:program_name",
"@com_google_absl//absl/flags:reflection",
"@com_google_absl//absl/log:die_if_null",
"@com_google_absl//absl/log:initialize",
# internal targets also needed
"//src/datasystem/common/inject:common_inject",
"//src/datasystem/common/rpc/zmq:zmq_message",
"//src/datasystem/common/util:common_util_impl",
"//src/datasystem/common/util:strings_util",
],
user_link_flags = [
"-Wl,--exclude-libs,ALL",
"-Wl,--version-script,$(location export_datasystem_symbols.lds)",
"-Wl,-Bsymbolic",
"-Wl,-rpath,$$ORIGIN",
"-Wl,-rpath,$$ORIGIN/lib",
],
visibility = ["//visibility:public"],
deps = [
"//src/datasystem/client:client_flags_monitor",
"//src/datasystem/client:client_worker_common_api",
"//src/datasystem/client:datasystem",
"//src/datasystem/client:embedded_client_worker_api",
"//src/datasystem/client:listen_worker",
"//src/datasystem/client:mmap_manager",
"//src/datasystem/client/context",
"//src/datasystem/client/hetero_cache:hetero_client",
"//src/datasystem/client/kv_cache:kv_client",
"//src/datasystem/client/kv_cache:read_only_buffer",
"//src/datasystem/client/object_cache:client_memory_ref_table",
"//src/datasystem/client/object_cache:object_client",
"//src/datasystem/client/object_cache:object_client_impl",
"//src/datasystem/client/object_cache/client_worker_api:client_worker_base_api",
"//src/datasystem/client/object_cache/client_worker_api:client_worker_local_api",
"//src/datasystem/client/object_cache/client_worker_api:client_worker_remote_api",
"//src/datasystem/client/object_cache/device:client_device_object_manager",
"//src/datasystem/client/object_cache/device:comm_factory_and_hccl_comm",
"//src/datasystem/client/object_cache/device:device_memory_unit",
"//src/datasystem/client/object_cache/device:future",
"//src/datasystem/client/object_cache/device:p2p_subscribe",
"//src/datasystem/client/object_cache/device:page_attn_utils",
"//src/datasystem/client/stream_cache:client_worker_api",
"//src/datasystem/client/stream_cache:consumer",
"//src/datasystem/client/stream_cache:producer",
"//src/datasystem/client/stream_cache:producer_consumer_worker_api",
"//src/datasystem/client/stream_cache:stream_cache_impl",
"//src/datasystem/client/stream_cache:stream_client",
"//src/datasystem/client/perf_client:perf_client_lib",
"//src/datasystem/common/object_cache:buffer",
"@com_google_protobuf//upb:wire",
],
)
# --- Strip + Symbol for datasystem_worker ---
genrule(
name = "datasystem_worker_sym",
srcs = ["//src/datasystem/worker:datasystem_worker"],
outs = ["datasystem_worker.sym"],
cmd = "objcopy --only-keep-debug $(location //src/datasystem/worker:datasystem_worker) $@",
output_to_bindir = True,
)
genrule(
name = "datasystem_worker_stripped",
srcs = [
"//src/datasystem/worker:datasystem_worker",
":datasystem_worker_sym",
],
outs = ["datasystem_worker.stripped"],
cmd = """
cp $(location //src/datasystem/worker:datasystem_worker) $@
chmod +w $@
objcopy --add-gnu-debuglink=$(location :datasystem_worker_sym) $@
objcopy --strip-all $@
""",
output_to_bindir = True,
)
copy_file(
name = "datasystem_worker_file",
src = ":datasystem_worker_stripped",
out = "yr/datasystem/datasystem_worker",
visibility = [
"//bazel:__pkg__",
],
)
copy_file(
name = "datasystem_worker_sym_file",
src = ":datasystem_worker_sym",
out = "yr/datasystem/service/DATASYSTEM_SYM/datasystem_worker.sym",
visibility = [
"//bazel:__pkg__",
],
)
# --- Worker shared library ---
copy_file(
name = "libdatasystem_worker_shared_file",
src = "//src/datasystem/worker:datasystem_worker_shared",
out = "yr/datasystem/service/libdatasystem_worker.so",
visibility = [
"//bazel:__pkg__",
],
)
# --- Strip for libds_client_py.so ---
genrule(
name = "libds_client_py_sym",
srcs = ["//src/datasystem/pybind_api:libds_client_py"],
outs = ["libds_client_py.so.sym"],
cmd = "objcopy --only-keep-debug $(location //src/datasystem/pybind_api:libds_client_py) $@",
output_to_bindir = True,
)
genrule(
name = "libds_client_py_stripped",
srcs = [
"//src/datasystem/pybind_api:libds_client_py",
":libds_client_py_sym",
],
outs = ["libds_client_py.so.stripped"],
cmd = """
cp $(location //src/datasystem/pybind_api:libds_client_py) $@
chmod +w $@
objcopy --add-gnu-debuglink=$(location :libds_client_py_sym) $@
objcopy --strip-all $@
""",
output_to_bindir = True,
)
copy_file(
name = "libds_client_py_file",
src = ":libds_client_py_stripped",
out = "yr/datasystem/lib/libds_client_py.so",
visibility = [
"//bazel:__pkg__",
"//python:__subpackages__",
],
)
# --- Strip for dsbench_cpp ---
genrule(
name = "dsbench_cpp_sym",
srcs = ["//dsbench/src:dsbench_cpp"],
outs = ["dsbench_cpp.sym"],
cmd = "objcopy --only-keep-debug $(location //dsbench/src:dsbench_cpp) $@",
output_to_bindir = True,
)
genrule(
name = "dsbench_cpp_stripped",
srcs = [
"//dsbench/src:dsbench_cpp",
":dsbench_cpp_sym",
],
outs = ["dsbench_cpp.stripped"],
cmd = """
cp $(location //dsbench/src:dsbench_cpp) $@
chmod +w $@
objcopy --add-gnu-debuglink=$(location :dsbench_cpp_sym) $@
objcopy --strip-all $@
""",
output_to_bindir = True,
)
copy_file(
name = "dsbench_file",
src = ":dsbench_cpp_stripped",
out = "yr/datasystem/dsbench_cpp",
visibility = [
"//bazel:__pkg__",
],
)
# --- Strip + Symbol for libdatasystem.so ---
genrule(
name = "libdatasystem_sym",
srcs = ["//:datasystem"],
outs = ["libdatasystem.so.sym"],
cmd = "objcopy --only-keep-debug $(location //:datasystem) $@",
output_to_bindir = True,
)
genrule(
name = "libdatasystem_stripped",
srcs = [
"//:datasystem",
":libdatasystem_sym",
],
outs = ["libdatasystem.so.stripped"],
cmd = """
cp $(location //:datasystem) $@
chmod +w $@
objcopy --add-gnu-debuglink=$(location :libdatasystem_sym) $@
objcopy --strip-all $@
""",
output_to_bindir = True,
)
copy_file(
name = "libdatasystem_file",
src = ":libdatasystem_stripped",
out = "yr/datasystem/lib/libdatasystem.so",
visibility = [
"//bazel:__pkg__",
],
)
copy_file(
name = "libdatasystem_sym_file",
src = ":libdatasystem_sym",
out = "yr/datasystem/DATASYSTEM_SYM/libdatasystem.so.sym",
visibility = [
"//bazel:__pkg__",
],
)
copy_directory(
name = "cli_files",
src = "cli",
out = "yr/datasystem/cli",
)
copy_directory(
name = "cpp_template_files",
src = "cli/cpp_template",
out = "yr/datasystem/cpp_template",
)
# Daemonset entrypoint files - use genrule with explicit file listing
genrule(
name = "dockerentry_daemonset_files",
srcs = [
"k8s/docker/entrypoint/check_taint.sh",
"k8s/docker/entrypoint/file_check.sh",
"k8s/docker/entrypoint/install.sh",
"k8s/docker/entrypoint/liveness_check.sh",
"k8s/docker/entrypoint/utils.sh",
"k8s/docker/entrypoint/worker_entry.sh",
"k8s/docker/exitpoint/uninstall.sh",
],
outs = [
"yr/datasystem/docker_entryfile/daemonset/check_taint.sh",
"yr/datasystem/docker_entryfile/daemonset/file_check.sh",
"yr/datasystem/docker_entryfile/daemonset/install.sh",
"yr/datasystem/docker_entryfile/daemonset/liveness_check.sh",
"yr/datasystem/docker_entryfile/daemonset/utils.sh",
"yr/datasystem/docker_entryfile/daemonset/worker_entry.sh",
"yr/datasystem/docker_entryfile/daemonset/uninstall.sh",
],
cmd = " && ".join([
"cp $(location k8s/docker/entrypoint/check_taint.sh) $(@D)/yr/datasystem/docker_entryfile/daemonset/",
"cp $(location k8s/docker/entrypoint/file_check.sh) $(@D)/yr/datasystem/docker_entryfile/daemonset/",
"cp $(location k8s/docker/entrypoint/install.sh) $(@D)/yr/datasystem/docker_entryfile/daemonset/",
"cp $(location k8s/docker/entrypoint/liveness_check.sh) $(@D)/yr/datasystem/docker_entryfile/daemonset/",
"cp $(location k8s/docker/entrypoint/utils.sh) $(@D)/yr/datasystem/docker_entryfile/daemonset/",
"cp $(location k8s/docker/entrypoint/worker_entry.sh) $(@D)/yr/datasystem/docker_entryfile/daemonset/",
"cp $(location k8s/docker/exitpoint/uninstall.sh) $(@D)/yr/datasystem/docker_entryfile/daemonset/",
]),
)
# Deployment entrypoint files
genrule(
name = "dockerentry_deployment_files",
srcs = [
"k8s_deployment/docker/entrypoint/file_check.sh",
"k8s_deployment/docker/entrypoint/liveness_check.sh",
"k8s_deployment/docker/entrypoint/utils.sh",
"k8s_deployment/docker/entrypoint/worker_entry.sh",
"k8s_deployment/docker/exitpoint/uninstall.sh",
],
outs = [
"yr/datasystem/docker_entryfile/deployment/file_check.sh",
"yr/datasystem/docker_entryfile/deployment/liveness_check.sh",
"yr/datasystem/docker_entryfile/deployment/utils.sh",
"yr/datasystem/docker_entryfile/deployment/worker_entry.sh",
"yr/datasystem/docker_entryfile/deployment/uninstall.sh",
],
cmd = " && ".join([
"cp $(location k8s_deployment/docker/entrypoint/file_check.sh) $(@D)/yr/datasystem/docker_entryfile/deployment/",
"cp $(location k8s_deployment/docker/entrypoint/liveness_check.sh) $(@D)/yr/datasystem/docker_entryfile/deployment/",
"cp $(location k8s_deployment/docker/entrypoint/utils.sh) $(@D)/yr/datasystem/docker_entryfile/deployment/",
"cp $(location k8s_deployment/docker/entrypoint/worker_entry.sh) $(@D)/yr/datasystem/docker_entryfile/deployment/",
"cp $(location k8s_deployment/docker/exitpoint/uninstall.sh) $(@D)/yr/datasystem/docker_entryfile/deployment/",
]),
)
copy_directory(
name = "helm_chart_files",
src = "k8s/helm_chart",
out = "yr/datasystem/helm_chart",
)
copy_directory(
name = "datasystem_header_files",
src = "include/datasystem",
out = "yr/datasystem/include/datasystem",
)
copy_file(
name = "readme_file",
src = "README.md",
out = "yr/datasystem/README.md",
)
copy_file(
name = "version_file",
src = "VERSION",
out = "yr/datasystem/VERSION",
)
load("//bazel:git_version.bzl", "commit_id_file")
commit_id_file(
name = "commit_id_file",
out = "yr/datasystem/.commit_id",
)
copy_file(
name = "cluster_config_file",
src = "cli/deploy/conf/cluster_config.json",
out = "yr/datasystem/cluster_config.json",
)
copy_file(
name = "worker_config_file",
src = "cli/deploy/conf/worker_config.json",
out = "yr/datasystem/worker_config.json",
)
# --- Tools ---
copy_file(
name = "hashring_parser_file",
src = "//tests/st:hashring_parser",
out = "yr/datasystem/tools/hashring_parser",
visibility = [
"//bazel:__pkg__",
],
)
copy_file(
name = "curve_keygen_file",
src = "//tests/st/common/rpc:curvekey_generator",
out = "yr/datasystem/tools/curve_keygen",
visibility = [
"//bazel:__pkg__",
],
)