| load( |
| "@com_googlesource_gerrit_bazlets//:gerrit_plugin.bzl", |
| "gerrit_acceptance_framework", |
| "gerrit_api", |
| "gerrit_api_neverlink", |
| "gerrit_plugin", |
| "gerrit_plugin_dependency_tests", |
| "gerrit_plugin_tests", |
| ) |
| load("@rules_java//java:defs.bzl", "java_library") |
| load("//lib/prolog:prolog.bzl", "prolog_cafe_library") |
| |
| PROLOG_PREDICATES = glob(["src/main/java/gerrit_owners/**/*.java"]) + [ |
| "src/main/java/com/googlesource/gerrit/owners/OwnersMetrics.java", |
| "src/main/java/com/googlesource/gerrit/owners/OwnersStoredValues.java", |
| ] |
| |
| java_library( |
| name = "gerrit-owners-predicates", |
| srcs = PROLOG_PREDICATES, |
| deps = [ |
| ":prolog-runtime-neverlink", |
| "//plugins/owners-common-api", |
| ] + gerrit_api_neverlink("gerrit-owners-predicates"), |
| ) |
| |
| java_library( |
| name = "prolog-runtime-neverlink", |
| neverlink = 1, |
| exports = ["@external_deps//:com_googlecode_prolog_cafe_prolog_runtime"], |
| ) |
| |
| java_library( |
| name = "owners-common-api-neverlink", |
| neverlink = 1, |
| exports = ["//plugins/owners-common-api"], |
| ) |
| |
| prolog_cafe_library( |
| name = "gerrit-owners-prolog-rules", |
| srcs = glob(["src/main/prolog/*.pl"]), |
| deps = gerrit_api_neverlink("gerrit-owners-prolog-rules") + [ |
| ":gerrit-owners-predicates", |
| ], |
| ) |
| |
| gerrit_plugin( |
| name = "owners", |
| srcs = glob( |
| [ |
| "src/main/java/**/*.java", |
| ], |
| exclude = PROLOG_PREDICATES, |
| ), |
| manifest_entries = [ |
| "Implementation-Title: Gerrit OWNERS plugin", |
| "Implementation-URL: https://gerrit.googlesource.com/plugins/owners", |
| "Gerrit-PluginName: owners", |
| "Gerrit-Module: com.googlesource.gerrit.owners.OwnersModule", |
| "Gerrit-HttpModule: com.googlesource.gerrit.owners.HttpModule", |
| ], |
| resource_jars = ["//plugins/owners/web:gr-owners"], |
| resources = glob(["src/main/resources/**/*"]), |
| deps = [ |
| ":gerrit-owners-predicates", |
| ":gerrit-owners-prolog-rules", |
| ":owners-common-api-neverlink", |
| ], |
| ) |
| |
| gerrit_plugin_dependency_tests(plugin = "owners") |
| |
| java_library( |
| name = "owners__plugin_test_deps", |
| testonly = 1, |
| srcs = glob( |
| ["src/test/java/**/*.java"], |
| exclude = [ |
| "src/test/java/**/*Test.java", |
| "src/test/java/**/*IT.java", |
| ], |
| ), |
| visibility = ["//visibility:public"], |
| exports = gerrit_api() + gerrit_acceptance_framework() + [ |
| ":owners", |
| ], |
| deps = gerrit_api() + gerrit_acceptance_framework() + [ |
| ":owners", |
| ], |
| ) |
| |
| gerrit_plugin_tests( |
| name = "owners_tests", |
| srcs = glob(["src/test/java/**/*Test.java"]), |
| plugin = "owners", |
| deps = [ |
| ":owners__plugin_test_deps", |
| ], |
| ) |
| |
| [gerrit_plugin_tests( |
| name = f[:f.index(".")].replace("/", "_"), |
| srcs = [f], |
| plugin = "owners", |
| visibility = ["//visibility:public"], |
| deps = [ |
| ":owners__plugin_test_deps", |
| ], |
| ) for f in glob(["src/test/java/**/*IT.java"])] |