mirror of
https://github.com/digital-asset/daml.git
synced 2024-11-10 10:46:11 +03:00
453 lines
16 KiB
Python
453 lines
16 KiB
Python
# Copyright (c) 2023 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
load("@oracle//:index.bzl", "oracle_tags")
|
|
load("@os_info//:os_info.bzl", "is_windows")
|
|
load("@scala_version//:index.bzl", "scala_major_version", "scala_major_version_suffix")
|
|
load("//bazel_tools:proto.bzl", "proto_jars")
|
|
load(
|
|
"//bazel_tools:scala.bzl",
|
|
"da_scala_benchmark_jmh",
|
|
"da_scala_binary",
|
|
"da_scala_library",
|
|
"da_scala_test",
|
|
"da_scala_test_suite",
|
|
"scaladoc_jar",
|
|
)
|
|
load("//bazel_tools:pom_file.bzl", "pom_file")
|
|
load("//rules_daml:daml.bzl", "daml_compile")
|
|
|
|
proto_jars(
|
|
name = "participant-integration-api-proto",
|
|
srcs = glob(["src/main/protobuf/**/*.proto"]),
|
|
maven_artifact_prefix = "participant-integration-api",
|
|
maven_group = "com.daml",
|
|
strip_import_prefix = "src/main/protobuf",
|
|
visibility = ["//visibility:public"],
|
|
deps = [
|
|
"@com_google_protobuf//:any_proto",
|
|
],
|
|
)
|
|
|
|
compile_deps = [
|
|
":participant-integration-api-proto_scala",
|
|
"//daml-lf/archive:daml_lf_archive_reader",
|
|
"//daml-lf/archive:daml_lf_1.dev_archive_proto_java",
|
|
"//daml-lf/data",
|
|
"//daml-lf/engine",
|
|
"//daml-lf/language",
|
|
"//daml-lf/transaction",
|
|
"//daml-lf/transaction:value_proto_java",
|
|
"//daml-lf/validation",
|
|
"//language-support/scala/bindings",
|
|
"//ledger-api/rs-grpc-akka",
|
|
"//ledger-api/rs-grpc-bridge",
|
|
"//ledger/caching",
|
|
"//ledger/error",
|
|
"//ledger/ledger-api-errors",
|
|
"//ledger/ledger-api-auth",
|
|
"//ledger/ledger-api-client",
|
|
"//ledger/ledger-api-common",
|
|
"//ledger/ledger-api-domain",
|
|
"//ledger/ledger-api-health",
|
|
"//ledger/ledger-configuration",
|
|
"//ledger/ledger-offset",
|
|
"//ledger/ledger-resources",
|
|
"//ledger/metrics",
|
|
"//ledger/participant-state",
|
|
"//ledger/participant-state-index",
|
|
"//ledger/participant-local-store:participant-local-store",
|
|
"//ledger/participant-state-metrics",
|
|
"//libs-scala/jwt",
|
|
"//libs-scala/crypto:crypto",
|
|
"//libs-scala/build-info",
|
|
"//libs-scala/contextualized-logging",
|
|
"//libs-scala/concurrent",
|
|
"//libs-scala/executors",
|
|
"//libs-scala/logging-entries",
|
|
"//libs-scala/ports",
|
|
"//libs-scala/resources",
|
|
"//libs-scala/resources-akka",
|
|
"//libs-scala/resources-grpc",
|
|
"//libs-scala/scala-utils",
|
|
"//libs-scala/timer-utils",
|
|
"//libs-scala/nameof",
|
|
"//libs-scala/struct-json/struct-spray-json",
|
|
"//observability/tracing",
|
|
"//observability/metrics",
|
|
"@maven//:com_google_guava_guava",
|
|
"@maven//:com_zaxxer_HikariCP",
|
|
"@maven//:io_dropwizard_metrics_metrics_core",
|
|
"@maven//:io_grpc_grpc_context",
|
|
"@maven//:io_grpc_grpc_netty",
|
|
"@maven//:io_grpc_grpc_services",
|
|
"@maven//:io_netty_netty_handler",
|
|
"@maven//:org_flywaydb_flyway_core",
|
|
"@maven//:io_opentelemetry_opentelemetry_api",
|
|
"@maven//:io_opentelemetry_opentelemetry_context",
|
|
"@maven//:org_slf4j_slf4j_api",
|
|
"@maven//:com_h2database_h2",
|
|
"@maven//:org_postgresql_postgresql",
|
|
"@maven//:com_oracle_database_jdbc_ojdbc8",
|
|
"@maven//:com_google_api_grpc_proto_google_common_protos",
|
|
"@maven//:com_auth0_java_jwt",
|
|
]
|
|
|
|
scala_compile_deps = [
|
|
"@maven//:com_github_scopt_scopt",
|
|
"@maven//:com_typesafe_akka_akka_actor",
|
|
"@maven//:com_typesafe_akka_akka_stream",
|
|
"@maven//:com_typesafe_scala_logging_scala_logging",
|
|
"@maven//:org_playframework_anorm_anorm",
|
|
"@maven//:org_playframework_anorm_anorm_tokenizer",
|
|
"@maven//:org_scalaz_scalaz_core",
|
|
"@maven//:io_spray_spray_json",
|
|
]
|
|
|
|
runtime_deps = [
|
|
"@maven//:ch_qos_logback_logback_classic",
|
|
]
|
|
|
|
da_scala_library(
|
|
name = "participant-integration-api",
|
|
srcs = glob(["src/main/scala/**/*.scala"]),
|
|
resources =
|
|
glob(
|
|
["src/main/resources/**/*"],
|
|
# Do not include logback.xml into the library: let the user
|
|
# of the sandbox-as-a-library decide how to log.
|
|
exclude = ["src/main/resources/logback.xml"],
|
|
) + [
|
|
"//ledger-api:api-version-files",
|
|
],
|
|
scala_deps = scala_compile_deps,
|
|
tags = ["maven_coordinates=com.daml:participant-integration-api:__VERSION__"],
|
|
visibility = [
|
|
"//visibility:public",
|
|
],
|
|
runtime_deps = runtime_deps,
|
|
deps = compile_deps,
|
|
)
|
|
|
|
da_scala_library(
|
|
name = "ledger-api-server",
|
|
srcs = glob(["src/main/scala/**/*.scala"]),
|
|
resources =
|
|
glob(
|
|
["src/main/resources/**/*"],
|
|
# Do not include logback.xml into the library: let the user
|
|
# of the sandbox-as-a-library decide how to log.
|
|
exclude = ["src/main/resources/logback.xml"],
|
|
),
|
|
scala_deps = scala_compile_deps,
|
|
tags = ["maven_coordinates=com.daml:ledger-api-server:__VERSION__"],
|
|
visibility = [
|
|
"//visibility:public",
|
|
],
|
|
runtime_deps = runtime_deps,
|
|
deps = compile_deps,
|
|
)
|
|
|
|
da_scala_library(
|
|
name = "participant-integration-api-tests-lib",
|
|
srcs = glob(["src/test/lib/**/*.scala"]),
|
|
scala_deps = [
|
|
"@maven//:com_typesafe_akka_akka_actor",
|
|
"@maven//:com_typesafe_akka_akka_stream",
|
|
"@maven//:org_scalacheck_scalacheck",
|
|
"@maven//:org_scalactic_scalactic",
|
|
"@maven//:org_scalatest_scalatest_freespec",
|
|
"@maven//:org_scalatest_scalatest_core",
|
|
"@maven//:org_scalatest_scalatest_flatspec",
|
|
"@maven//:org_scalatest_scalatest_matchers_core",
|
|
"@maven//:org_scalatest_scalatest_shouldmatchers",
|
|
],
|
|
scala_runtime_deps = [
|
|
"@maven//:com_typesafe_akka_akka_slf4j",
|
|
],
|
|
visibility = ["//visibility:public"],
|
|
runtime_deps = [
|
|
"@maven//:com_h2database_h2",
|
|
"@maven//:org_postgresql_postgresql",
|
|
],
|
|
deps = [
|
|
":participant-integration-api",
|
|
"//bazel_tools/runfiles:scala_runfiles",
|
|
"//daml-lf/archive:daml_lf_1.dev_archive_proto_java",
|
|
"//daml-lf/archive:daml_lf_archive_reader",
|
|
"//daml-lf/data",
|
|
"//daml-lf/engine",
|
|
"//daml-lf/language",
|
|
"//daml-lf/transaction",
|
|
"//daml-lf/transaction-test-lib",
|
|
"//language-support/scala/bindings",
|
|
"//ledger-api/rs-grpc-bridge",
|
|
"//ledger-api/sample-service",
|
|
"//ledger-api/testing-utils",
|
|
"//ledger/ledger-api-client",
|
|
"//ledger/ledger-api-common",
|
|
"//ledger/ledger-api-domain",
|
|
"//ledger/ledger-api-health",
|
|
"//ledger/ledger-configuration",
|
|
"//ledger/ledger-offset",
|
|
"//ledger/ledger-resources",
|
|
"//ledger/ledger-resources:ledger-resources-test-lib",
|
|
"//ledger/metrics",
|
|
"//ledger/participant-local-store",
|
|
"//ledger/participant-local-store:participant-local-store-tests-lib",
|
|
"//ledger/participant-state",
|
|
"//ledger/participant-state-index",
|
|
"//ledger/test-common:dar-files-default-lib",
|
|
"//libs-scala/contextualized-logging",
|
|
"//libs-scala/logging-entries",
|
|
"//libs-scala/oracle-testing",
|
|
"//libs-scala/ports",
|
|
"//libs-scala/postgresql-testing",
|
|
"//libs-scala/resources",
|
|
"//libs-scala/resources-akka",
|
|
"//libs-scala/resources-grpc",
|
|
"//libs-scala/scala-utils",
|
|
"//libs-scala/timer-utils",
|
|
"//observability/metrics",
|
|
"@maven//:io_dropwizard_metrics_metrics_core",
|
|
"@maven//:io_grpc_grpc_netty",
|
|
"@maven//:io_netty_netty_common",
|
|
"@maven//:io_netty_netty_handler",
|
|
"@maven//:io_netty_netty_transport",
|
|
"@maven//:io_opentelemetry_opentelemetry_api",
|
|
"@maven//:org_flywaydb_flyway_core",
|
|
"@maven//:org_scalatest_scalatest_compatible",
|
|
],
|
|
)
|
|
|
|
openssl_executable = "@openssl_dev_env//:bin/openssl" if not is_windows else "@openssl_dev_env//:usr/bin/openssl.exe"
|
|
|
|
da_scala_test_suite(
|
|
name = "participant-integration-api-tests",
|
|
size = "large",
|
|
srcs = glob(
|
|
["src/test/suite/**/*.scala"],
|
|
exclude = [
|
|
"**/*Oracle*",
|
|
],
|
|
),
|
|
data = [
|
|
"//ledger/test-common:model-tests-default.dar",
|
|
"//ledger/test-common/test-certificates",
|
|
openssl_executable,
|
|
],
|
|
jvm_flags = [
|
|
"-Djava.security.debug=\"certpath ocsp\"", # This facilitates debugging of the OCSP checks mechanism
|
|
],
|
|
resources = glob(["src/test/resources/**/*"]),
|
|
scala_deps = [
|
|
"@maven//:com_typesafe_akka_akka_actor",
|
|
"@maven//:com_typesafe_akka_akka_actor_typed",
|
|
"@maven//:com_typesafe_akka_akka_testkit",
|
|
"@maven//:com_typesafe_akka_akka_stream",
|
|
"@maven//:com_typesafe_akka_akka_stream_testkit",
|
|
"@maven//:org_mockito_mockito_scala",
|
|
"@maven//:org_playframework_anorm_anorm",
|
|
"@maven//:org_playframework_anorm_anorm_tokenizer",
|
|
"@maven//:org_scalacheck_scalacheck",
|
|
"@maven//:org_scalactic_scalactic",
|
|
"@maven//:org_scalatest_scalatest_core",
|
|
"@maven//:org_scalatest_scalatest_flatspec",
|
|
"@maven//:org_scalatest_scalatest_matchers_core",
|
|
"@maven//:org_scalatest_scalatest_shouldmatchers",
|
|
"@maven//:org_scalatest_scalatest_wordspec",
|
|
"@maven//:org_scalatestplus_scalacheck_1_15",
|
|
"@maven//:org_scalaz_scalaz_core",
|
|
"@maven//:io_spray_spray_json",
|
|
"@maven//:com_thesamet_scalapb_scalapb_json4s",
|
|
"@maven//:org_scalaz_scalaz_scalacheck_binding",
|
|
],
|
|
deps = [
|
|
":participant-integration-api",
|
|
":participant-integration-api-proto_scala",
|
|
":participant-integration-api-tests-lib",
|
|
"//bazel_tools/runfiles:scala_runfiles",
|
|
"//daml-lf/archive:daml_lf_1.dev_archive_proto_java",
|
|
"//daml-lf/archive:daml_lf_archive_reader",
|
|
"//daml-lf/data",
|
|
"//daml-lf/encoder",
|
|
"//daml-lf/engine",
|
|
"//daml-lf/interpreter",
|
|
"//daml-lf/language",
|
|
"//daml-lf/parser",
|
|
"//daml-lf/transaction",
|
|
"//daml-lf/transaction:value_proto_java",
|
|
"//daml-lf/transaction-test-lib",
|
|
"//language-support/scala/bindings",
|
|
"//ledger-api/rs-grpc-akka",
|
|
"//ledger-api/rs-grpc-akka:rs-grpc-akka-tests-lib",
|
|
"//ledger-api/rs-grpc-bridge",
|
|
"//ledger-api/sample-service",
|
|
"//ledger-api/testing-utils",
|
|
"//ledger/caching",
|
|
"//ledger/error",
|
|
"//ledger/error:error-test-lib",
|
|
"//ledger/ledger-api-client",
|
|
"//ledger/ledger-api-common",
|
|
"//ledger/ledger-api-common:ledger-api-common-scala-tests-lib",
|
|
"//ledger/ledger-api-domain",
|
|
"//ledger/ledger-api-errors",
|
|
"//ledger/ledger-api-health",
|
|
"//ledger/ledger-configuration",
|
|
"//ledger/ledger-offset",
|
|
"//ledger/ledger-resources",
|
|
"//ledger/ledger-resources:ledger-resources-test-lib",
|
|
"//ledger/metrics",
|
|
"//ledger/participant-local-store",
|
|
"//ledger/participant-local-store:participant-local-store-tests-lib",
|
|
"//ledger/participant-state",
|
|
"//ledger/participant-state-index",
|
|
"//ledger/test-common",
|
|
"//ledger/test-common:dar-files-default-lib",
|
|
"//libs-scala/concurrent",
|
|
"//libs-scala/contextualized-logging",
|
|
"//libs-scala/crypto",
|
|
"//libs-scala/executors",
|
|
"//libs-scala/grpc-utils",
|
|
"//libs-scala/logging-entries",
|
|
"//libs-scala/ports",
|
|
"//libs-scala/postgresql-testing",
|
|
"//libs-scala/resources",
|
|
"//libs-scala/resources-akka",
|
|
"//libs-scala/resources-grpc",
|
|
"//libs-scala/scala-utils",
|
|
"//libs-scala/scalatest-utils",
|
|
"//libs-scala/timer-utils",
|
|
"//observability/metrics",
|
|
"//observability/metrics:metrics-test-lib",
|
|
"//observability/tracing",
|
|
"//observability/tracing:tracing-test-lib",
|
|
"@maven//:ch_qos_logback_logback_classic",
|
|
"@maven//:ch_qos_logback_logback_core",
|
|
"@maven//:com_github_ben_manes_caffeine_caffeine",
|
|
"@maven//:com_google_api_grpc_proto_google_common_protos",
|
|
"@maven//:com_google_guava_guava",
|
|
"@maven//:com_typesafe_config",
|
|
"@maven//:com_zaxxer_HikariCP",
|
|
"@maven//:commons_io_commons_io",
|
|
"@maven//:io_dropwizard_metrics_metrics_core",
|
|
"@maven//:io_grpc_grpc_context",
|
|
"@maven//:io_grpc_grpc_netty",
|
|
"@maven//:io_grpc_grpc_services",
|
|
"@maven//:io_netty_netty_handler",
|
|
"@maven//:io_netty_netty_transport",
|
|
"@maven//:io_opentelemetry_opentelemetry_api",
|
|
"@maven//:io_opentelemetry_opentelemetry_context",
|
|
"@maven//:io_opentelemetry_opentelemetry_sdk_testing",
|
|
"@maven//:io_opentelemetry_opentelemetry_sdk_trace",
|
|
"@maven//:org_flywaydb_flyway_core",
|
|
"@maven//:org_mockito_mockito_core",
|
|
"@maven//:org_reactivestreams_reactive_streams",
|
|
"@maven//:org_scalatest_scalatest_compatible",
|
|
"@maven//:org_slf4j_slf4j_api",
|
|
],
|
|
)
|
|
|
|
da_scala_test_suite(
|
|
name = "participant-integration-api-tests-oracle",
|
|
size = "large",
|
|
srcs = glob(["src/test/suite/**/*Oracle*.scala"]),
|
|
data = [
|
|
"//ledger/test-common:model-tests-default.dar",
|
|
"//ledger/test-common/test-certificates",
|
|
openssl_executable,
|
|
],
|
|
jvm_flags = [
|
|
"-Djava.security.debug=\"certpath ocsp\"", # This facilitates debugging of the OCSP checks mechanism
|
|
],
|
|
resources = glob(["src/test/resources/**/*"]),
|
|
scala_deps = [
|
|
"@maven//:com_typesafe_akka_akka_actor",
|
|
"@maven//:com_typesafe_akka_akka_stream",
|
|
"@maven//:org_scalacheck_scalacheck",
|
|
"@maven//:org_scalactic_scalactic",
|
|
"@maven//:org_scalatest_scalatest_core",
|
|
"@maven//:org_scalatest_scalatest_flatspec",
|
|
"@maven//:org_scalatest_scalatest_matchers_core",
|
|
"@maven//:org_scalatest_scalatest_shouldmatchers",
|
|
"@maven//:org_scalatest_scalatest_wordspec",
|
|
"@maven//:org_mockito_mockito_scala",
|
|
],
|
|
tags = oracle_tags,
|
|
runtime_deps = [
|
|
],
|
|
deps = [
|
|
":participant-integration-api",
|
|
":participant-integration-api-tests-lib",
|
|
"//daml-lf/archive:daml_lf_1.dev_archive_proto_java",
|
|
"//daml-lf/archive:daml_lf_archive_reader",
|
|
"//daml-lf/data",
|
|
"//daml-lf/transaction",
|
|
"//daml-lf/transaction-test-lib",
|
|
"//language-support/scala/bindings",
|
|
"//ledger-api/rs-grpc-bridge",
|
|
"//ledger-api/testing-utils",
|
|
"//ledger/ledger-api-common",
|
|
"//ledger/ledger-api-domain",
|
|
"//ledger/ledger-api-health",
|
|
"//ledger/ledger-configuration",
|
|
"//ledger/ledger-offset",
|
|
"//ledger/ledger-resources",
|
|
"//ledger/ledger-resources:ledger-resources-test-lib",
|
|
"//ledger/metrics",
|
|
"//ledger/participant-local-store",
|
|
"//ledger/participant-local-store:participant-local-store-tests-lib",
|
|
"//ledger/participant-state",
|
|
"//ledger/participant-state-index",
|
|
"//ledger/test-common",
|
|
"//libs-scala/contextualized-logging",
|
|
"//libs-scala/logging-entries",
|
|
"//libs-scala/oracle-testing",
|
|
"//libs-scala/ports",
|
|
"//libs-scala/resources",
|
|
"//libs-scala/scala-utils",
|
|
"@maven//:io_dropwizard_metrics_metrics_core",
|
|
"@maven//:org_scalatest_scalatest_compatible",
|
|
"@maven//:org_slf4j_slf4j_api",
|
|
],
|
|
)
|
|
|
|
exports_files(["src/main/resources/logback.xml"])
|
|
|
|
scaladoc_jar(
|
|
name = "scaladoc",
|
|
srcs = [
|
|
":sources",
|
|
"//ledger/ledger-api-auth:sources",
|
|
"//ledger/participant-state:sources",
|
|
],
|
|
doctitle = "Daml participant integration API",
|
|
root_content = "rootdoc.txt",
|
|
visibility = [
|
|
"//visibility:public",
|
|
],
|
|
deps =
|
|
compile_deps +
|
|
[
|
|
"{}_{}".format(d, scala_major_version_suffix)
|
|
for d in scala_compile_deps
|
|
],
|
|
) if not is_windows else None
|
|
|
|
filegroup(
|
|
name = "sources",
|
|
srcs = glob(["src/main/scala/**/*.scala"]),
|
|
visibility = ["//visibility:public"],
|
|
)
|
|
|
|
da_scala_benchmark_jmh(
|
|
name = "string-interning-benchmark",
|
|
srcs = glob(["src/bench/platform/store/interning/**/*.scala"]),
|
|
visibility = ["//visibility:public"],
|
|
deps = [
|
|
"//bazel_tools/runfiles:scala_runfiles",
|
|
"//ledger/participant-integration-api",
|
|
"//libs-scala/contextualized-logging",
|
|
],
|
|
)
|