| load("//tools/bzl:junit.bzl", "junit_tests") |
| load("//tools/bzl:license.bzl", "license_test") |
| |
| SRCS = "src/main/java/com/google/gerrit/pgm/" |
| |
| RSRCS = "src/main/resources/com/google/gerrit/pgm/" |
| |
| INIT_API_SRCS = glob([SRCS + "init/api/*.java"]) |
| |
| BASE_JETTY_DEPS = [ |
| "//gerrit-common:annotations", |
| "//gerrit-common:server", |
| "//gerrit-extension-api:api", |
| "//gerrit-gwtexpui:linker_server", |
| "//gerrit-gwtexpui:server", |
| "//gerrit-httpd:httpd", |
| "//gerrit-server:server", |
| "//gerrit-sshd:sshd", |
| "//lib:guava", |
| "//lib/guice:guice", |
| "//lib/guice:guice-assistedinject", |
| "//lib/guice:guice-servlet", |
| "//lib/jgit/org.eclipse.jgit:jgit", |
| "//lib/joda:joda-time", |
| "//lib/log:api", |
| "//lib/log:log4j", |
| ] |
| |
| DEPS = BASE_JETTY_DEPS + [ |
| "//gerrit-reviewdb:server", |
| "//gerrit-server:metrics", |
| "//gerrit-server:module", |
| "//gerrit-server:receive", |
| "//lib:gwtorm", |
| "//lib/log:jsonevent-layout", |
| ] |
| |
| java_library( |
| name = "init-api", |
| srcs = INIT_API_SRCS, |
| visibility = ["//visibility:public"], |
| deps = DEPS, |
| ) |
| |
| java_library( |
| name = "init", |
| srcs = glob([SRCS + "init/**/*.java"]), |
| resources = glob([RSRCS + "init/*"]), |
| visibility = ["//visibility:public"], |
| deps = DEPS + [ |
| ":init-api", |
| ":util", |
| "//gerrit-index:index", |
| "//gerrit-elasticsearch:elasticsearch", |
| "//gerrit-launcher:launcher", # We want this dep to be provided_deps |
| "//gerrit-lucene:lucene", |
| "//lib:args4j", |
| "//lib:derby", |
| "//lib:gwtjsonrpc", |
| "//lib:h2", |
| "//lib/commons:validator", |
| "//lib/mina:sshd", |
| ], |
| ) |
| |
| REST_UTIL_DEPS = [ |
| "//gerrit-cache-h2:cache-h2", |
| "//gerrit-cache-mem:mem", |
| "//gerrit-util-cli:cli", |
| "//lib:args4j", |
| "//lib/commons:dbcp", |
| ] |
| |
| java_library( |
| name = "util", |
| visibility = ["//visibility:public"], |
| exports = [":util-nodep"], |
| runtime_deps = DEPS + REST_UTIL_DEPS, |
| ) |
| |
| java_library( |
| name = "util-nodep", |
| srcs = glob([SRCS + "util/*.java"]), |
| visibility = ["//visibility:public"], |
| deps = DEPS + REST_UTIL_DEPS, # We want all these deps to be provided_deps |
| ) |
| |
| JETTY_DEPS = [ |
| "//lib/jetty:jmx", |
| "//lib/jetty:server", |
| "//lib/jetty:servlet", |
| ] |
| |
| java_library( |
| name = "http", |
| visibility = ["//visibility:public"], |
| exports = [":http-jetty"], |
| runtime_deps = DEPS + JETTY_DEPS, |
| ) |
| |
| java_library( |
| name = "http-jetty", |
| srcs = glob([SRCS + "http/jetty/*.java"]), |
| visibility = ["//visibility:public"], |
| deps = JETTY_DEPS + BASE_JETTY_DEPS + [ |
| # We want all these deps to be provided_deps |
| "//gerrit-launcher:launcher", |
| "//gerrit-reviewdb:client", |
| "//lib:servlet-api-3_1", |
| ], |
| ) |
| |
| REST_PGM_DEPS = [ |
| ":http", |
| ":init", |
| ":init-api", |
| ":util", |
| "//gerrit-cache-h2:cache-h2", |
| "//gerrit-cache-mem:mem", |
| "//gerrit-elasticsearch:elasticsearch", |
| "//gerrit-gpg:gpg", |
| "//gerrit-index:index", |
| "//gerrit-lucene:lucene", |
| "//gerrit-oauth:oauth", |
| "//gerrit-openid:openid", |
| "//lib:args4j", |
| "//lib:protobuf", |
| "//lib:servlet-api-3_1-without-neverlink", |
| "//lib/prolog:cafeteria", |
| "//lib/prolog:compiler", |
| "//lib/prolog:runtime", |
| ] |
| |
| java_library( |
| name = "pgm", |
| resources = glob([RSRCS + "*"]), |
| visibility = ["//visibility:public"], |
| runtime_deps = DEPS + REST_PGM_DEPS + [ |
| ":daemon", |
| ], |
| ) |
| |
| # no transitive deps, used for gerrit-acceptance-framework |
| java_library( |
| name = "daemon", |
| srcs = glob([ |
| SRCS + "*.java", |
| SRCS + "rules/*.java", |
| ]), |
| resources = glob([RSRCS + "*"]), |
| visibility = ["//visibility:public"], |
| deps = DEPS + REST_PGM_DEPS + [ |
| # We want all these deps to be provided_deps |
| "//gerrit-launcher:launcher", |
| "//lib/auto:auto-value", |
| "//lib/auto:auto-value-annotations", |
| ], |
| ) |
| |
| junit_tests( |
| name = "pgm_tests", |
| srcs = glob(["src/test/java/**/*.java"]), |
| deps = [ |
| ":http-jetty", |
| ":init", |
| ":init-api", |
| ":pgm", |
| "//gerrit-common:server", |
| "//gerrit-server:server", |
| "//lib:guava", |
| "//lib:junit", |
| "//lib:truth", |
| "//lib/easymock", |
| "//lib/guice", |
| "//lib/jgit/org.eclipse.jgit:jgit", |
| "//lib/jgit/org.eclipse.jgit.junit:junit", |
| ], |
| ) |
| |
| license_test( |
| name = "pgm_license_test", |
| target = ":pgm", |
| ) |