diff --git a/flink/BUILD.bazel b/flink/BUILD.bazel index 445f62ceb6..dd66ee9ef7 100644 --- a/flink/BUILD.bazel +++ b/flink/BUILD.bazel @@ -1,31 +1,8 @@ -flink_deps = [ - scala_artifact("org.apache.flink:flink-streaming-scala"), - scala_artifact("org.apache.flink:flink-scala"), - maven_artifact("org.apache.flink:flink-streaming-java"), - maven_artifact("org.apache.flink:flink-core"), - maven_artifact("org.apache.flink:flink-metrics-dropwizard"), - maven_artifact("org.apache.flink:flink-metrics-core"), - maven_artifact("org.apache.flink:flink-clients"), - maven_artifact("org.apache.flink:flink-yarn"), -] - -flink_test_deps = [ - # Libraries - scala_artifact("org.apache.flink:flink-streaming-scala"), - scala_artifact("org.apache.flink:flink-scala"), - maven_artifact("org.apache.flink:flink-streaming-java"), - maven_artifact("org.apache.flink:flink-core"), - maven_artifact("org.apache.flink:flink-runtime"), - # Testing - maven_artifact("org.apache.flink:flink-test-utils"), - maven_artifact("org.apache.flink:flink-runtime-tests"), -] - scala_library( name = "lib", srcs = glob(["src/main/**/*.scala"]), visibility = ["//visibility:public"], - deps = flink_deps + [ + deps = _FLINK_DEPS + [ "//api:lib", "//api:thrift", "//aggregator:lib", @@ -38,7 +15,7 @@ scala_library( ], ) -test_deps = flink_test_deps + [ +test_deps = _FLINK_TEST_DEPS + [ ":lib", "//online:lib", "//online:test-lib", diff --git a/hub/BUILD.bazel b/hub/BUILD.bazel new file mode 100644 index 0000000000..6da5b8b301 --- /dev/null +++ b/hub/BUILD.bazel @@ -0,0 +1,66 @@ +scala_library( + name = "lib", + srcs = glob(["src/main/**/*.scala"]) + glob(["src/main/**/*.java"]), + visibility = ["//visibility:public"], + deps = _VERTX_DEPS + _CIRCE_DEPS + [ + "//api:thrift", + "//api:lib", + "//online:lib", + "//service_commons:lib", + "//spark:lib", + scala_artifact("org.typelevel:cats-core"), + scala_artifact("com.chuusai:shapeless"), + scala_artifact("org.json4s:json4s-core"), + scala_artifact("org.json4s:json4s-jackson"), + scala_artifact("org.scala-lang.modules:scala-java8-compat"), + scala_artifact("org.scala-lang.modules:scala-collection-compat"), + maven_artifact("ch.qos.logback:logback-classic"), + maven_artifact("org.slf4j:slf4j-api"), + maven_artifact("com.typesafe:config"), + maven_artifact("io.netty:netty-all"), + maven_artifact("io.micrometer:micrometer-registry-statsd"), + maven_artifact("io.micrometer:micrometer-core"), + ], +) + +test_deps = _VERTX_TEST_DEPS + _CIRCE_DEPS + [ + ":lib", + "//api:thrift", + "//api:lib", + "//online:lib", + "//spark:lib", + "//service_commons:lib", + # Libraries + scala_artifact("org.typelevel:cats-core"), + scala_artifact("com.chuusai:shapeless"), + scala_artifact("org.scala-lang.modules:scala-java8-compat"), + scala_artifact("org.scala-lang.modules:scala-collection-compat"), + # Testing + scala_artifact("org.scalatest:scalatest-matchers-core"), + scala_artifact("org.scalatest:scalatest-core"), + scala_artifact("org.scalatest:scalatest"), + scala_artifact("org.scalatest:scalatest-flatspec"), + scala_artifact("org.scalatest:scalatest-funsuite"), + scala_artifact("org.scalatest:scalatest-shouldmatchers"), + scala_artifact("org.scalactic:scalactic"), + scala_artifact("org.scalatestplus:mockito-3-4"), + scala_artifact("org.mockito:mockito-scala"), + maven_artifact("org.mockito:mockito-core"), + maven_artifact("org.scalatest:scalatest-compatible"), + maven_artifact("junit:junit"), + maven_artifact("com.novocode:junit-interface"), +] + +scala_library( + name = "test-lib", + srcs = glob(["src/test/**/*.scala"]), + visibility = ["//visibility:public"], + deps = test_deps, +) + +scala_test_suite( + name = "test", + srcs = glob(["src/test/**/*.scala"]), + visibility = ["//visibility:public"], + deps = test_deps + [":test-lib"], +) \ No newline at end of file diff --git a/service/BUILD.bazel b/service/BUILD.bazel index 5926149faa..87bdf74ff2 100644 --- a/service/BUILD.bazel +++ b/service/BUILD.bazel @@ -1,26 +1,8 @@ -vertx_deps = [ - maven_artifact("io.vertx:vertx-core"), - maven_artifact("io.vertx:vertx-web"), - maven_artifact("io.vertx:vertx-web-client"), - maven_artifact("io.vertx:vertx-config"), - maven_artifact("io.vertx:vertx-micrometer-metrics"), -] - -vertx_test_deps = [ - # Libraries - maven_artifact("io.vertx:vertx-core"), - maven_artifact("io.vertx:vertx-web"), - maven_artifact("io.vertx:vertx-web-client"), - # Testing - maven_artifact("io.vertx:vertx-junit5"), - maven_artifact("io.vertx:vertx-unit"), -] - java_library( name = "lib", srcs = glob(["src/main/**/*.java"]), visibility = ["//visibility:public"], - deps = _SCALA_DEPS + vertx_deps + [ + deps = _SCALA_DEPS + _VERTX_DEPS + [ "//online:lib", "//service_commons:lib", maven_artifact("ch.qos.logback:logback-classic"), @@ -36,7 +18,7 @@ java_library( ], ) -test_deps = vertx_test_deps + [ +test_deps = _VERTX_TEST_DEPS + [ ":lib", "//online:lib", "//service_commons:lib", diff --git a/service_commons/BUILD.bazel b/service_commons/BUILD.bazel index 5296f83aa2..1511bd3b23 100644 --- a/service_commons/BUILD.bazel +++ b/service_commons/BUILD.bazel @@ -2,14 +2,9 @@ java_library( name = "lib", srcs = glob(["src/main/**/*.java"]), visibility = ["//visibility:public"], - deps = _SCALA_DEPS + [ + deps = _SCALA_DEPS + _VERTX_DEPS + [ "//api:lib", "//online:lib", - maven_artifact("io.vertx:vertx-core"), - maven_artifact("io.vertx:vertx-web"), - maven_artifact("io.vertx:vertx-web-client"), - maven_artifact("io.vertx:vertx-config"), - maven_artifact("io.vertx:vertx-micrometer-metrics"), maven_artifact("ch.qos.logback:logback-classic"), maven_artifact("com.typesafe:config"), maven_artifact("io.netty:netty-all"), @@ -20,17 +15,11 @@ java_library( ], ) -test_deps = [ +test_deps = _VERTX_TEST_DEPS + [ ":lib", "//api:lib", "//api:thrift", "//online:lib", - # Libraries - maven_artifact("io.vertx:vertx-core"), - maven_artifact("io.vertx:vertx-web"), - maven_artifact("io.vertx:vertx-web-client"), - # Testing - maven_artifact("io.vertx:vertx-junit5"), maven_artifact("org.junit.jupiter:junit-jupiter-api"), maven_artifact("org.junit.platform:junit-platform-launcher"), maven_artifact("org.junit.platform:junit-platform-reporting"), diff --git a/tools/build_rules/dependencies/maven_repository.bzl b/tools/build_rules/dependencies/maven_repository.bzl index 282a2224ac..947c645fba 100644 --- a/tools/build_rules/dependencies/maven_repository.bzl +++ b/tools/build_rules/dependencies/maven_repository.bzl @@ -90,6 +90,12 @@ maven_repository = repository( "io.vertx:vertx-micrometer-metrics:4.5.10", "io.vertx:vertx-junit5:4.5.10", "io.vertx:vertx-unit:4.5.10", + "io.vertx:vertx-unit:4.5.10", + + # Circe + "io.circe:circe-core_2.12:0.14.9", + "io.circe:circe-generic_2.12:0.14.9", + "io.circe:circe-parser_2.12:0.14.9", ], overrides = { }, diff --git a/tools/build_rules/prelude_bazel b/tools/build_rules/prelude_bazel index 0aa82244fc..5305eb635f 100644 --- a/tools/build_rules/prelude_bazel +++ b/tools/build_rules/prelude_bazel @@ -1,4 +1,4 @@ -# Contains default rules and functions available to all BUILD files +# Contains default rules, variables and functions available to all BUILD files load("//tools/build_rules:common.bzl", "jar", "scala_jar") load("//tools/build_rules:jvm_binary.bzl", "jvm_binary") @@ -8,11 +8,6 @@ load("@contrib_rules_jvm//docs:stardoc-input.bzl", "java_test_suite") load("@io_bazel_rules_scala//scala:scala.bzl", "scala_library", "scala_test_suite") load("//tools/build_rules:maven_artifact.bzl", "maven_artifact", "scala_artifact") -_SCALA_DEPS = [ - "@io_bazel_rules_scala_scala_library_2_12_18//:io_bazel_rules_scala_scala_library_2_12_18", - # other scala related deps... -] - _JVM_FLAGS_FOR_ACCESSING_BASE_JAVA_CLASSES = [ "--add-opens=java.base/java.lang=ALL-UNNAMED", "--add-opens=java.base/java.lang.invoke=ALL-UNNAMED", @@ -27,4 +22,56 @@ _JVM_FLAGS_FOR_ACCESSING_BASE_JAVA_CLASSES = [ "--add-opens=java.base/sun.nio.cs=ALL-UNNAMED", "--add-opens=java.base/sun.security.action=ALL-UNNAMED", "--add-opens=java.base/sun.util.calendar=ALL-UNNAMED", +] + +_SCALA_DEPS = [ + "@io_bazel_rules_scala_scala_library_2_12_18//:io_bazel_rules_scala_scala_library_2_12_18", + # other scala related deps... +] + +_FLINK_DEPS = [ + scala_artifact("org.apache.flink:flink-streaming-scala"), + scala_artifact("org.apache.flink:flink-scala"), + maven_artifact("org.apache.flink:flink-streaming-java"), + maven_artifact("org.apache.flink:flink-core"), + maven_artifact("org.apache.flink:flink-metrics-dropwizard"), + maven_artifact("org.apache.flink:flink-metrics-core"), + maven_artifact("org.apache.flink:flink-clients"), + maven_artifact("org.apache.flink:flink-yarn"), +] + +_FLINK_TEST_DEPS = [ + # Libraries + scala_artifact("org.apache.flink:flink-streaming-scala"), + scala_artifact("org.apache.flink:flink-scala"), + maven_artifact("org.apache.flink:flink-streaming-java"), + maven_artifact("org.apache.flink:flink-core"), + maven_artifact("org.apache.flink:flink-runtime"), + # Testing + maven_artifact("org.apache.flink:flink-test-utils"), + maven_artifact("org.apache.flink:flink-runtime-tests"), +] + +_VERTX_DEPS = [ + maven_artifact("io.vertx:vertx-core"), + maven_artifact("io.vertx:vertx-web"), + maven_artifact("io.vertx:vertx-web-client"), + maven_artifact("io.vertx:vertx-config"), + maven_artifact("io.vertx:vertx-micrometer-metrics"), +] + +_VERTX_TEST_DEPS = [ + # Libraries + maven_artifact("io.vertx:vertx-core"), + maven_artifact("io.vertx:vertx-web"), + maven_artifact("io.vertx:vertx-web-client"), + # Testing + maven_artifact("io.vertx:vertx-junit5"), + maven_artifact("io.vertx:vertx-unit"), +] + +_CIRCE_DEPS = [ + scala_artifact("io.circe:circe-core"), + scala_artifact("io.circe:circe-generic"), + scala_artifact("io.circe:circe-parser"), ] \ No newline at end of file