diff --git a/java/server/src/org/openqa/selenium/cli/BUILD.bazel b/java/server/src/org/openqa/selenium/cli/BUILD.bazel new file mode 100644 index 0000000000000..42bcfc4280686 --- /dev/null +++ b/java/server/src/org/openqa/selenium/cli/BUILD.bazel @@ -0,0 +1,10 @@ +java_library( + name = "cli", + srcs = glob(["*.java"]), + deps = [ + "//third_party/java/guava", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__subpackages__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/docker/BUILD.bazel b/java/server/src/org/openqa/selenium/docker/BUILD.bazel new file mode 100644 index 0000000000000..5ebcf3485113a --- /dev/null +++ b/java/server/src/org/openqa/selenium/docker/BUILD.bazel @@ -0,0 +1,12 @@ +java_library( + name = "docker", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/json", + "//java/client/src/org/openqa/selenium/remote", + "//third_party/java/guava", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid/docker:__pkg__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/docker/Container.java b/java/server/src/org/openqa/selenium/docker/Container.java index 7ac6e5cb930d5..bbb615c70b121 100644 --- a/java/server/src/org/openqa/selenium/docker/Container.java +++ b/java/server/src/org/openqa/selenium/docker/Container.java @@ -20,9 +20,12 @@ import static org.openqa.selenium.remote.http.HttpMethod.DELETE; import static org.openqa.selenium.remote.http.HttpMethod.POST; +import org.openqa.selenium.WebDriverException; +import org.openqa.selenium.remote.http.Contents; import org.openqa.selenium.remote.http.HttpRequest; import org.openqa.selenium.remote.http.HttpResponse; +import java.net.HttpURLConnection; import java.time.Duration; import java.util.Objects; import java.util.function.Function; @@ -46,7 +49,11 @@ public ContainerId getId() { public void start() { LOG.info("Starting " + getId()); - client.apply(new HttpRequest(POST, String.format("/containers/%s/start", id))); + HttpResponse res = client.apply( + new HttpRequest(POST, String.format("/containers/%s/start", id))); + if (res.getStatus() != HttpURLConnection.HTTP_OK) { + throw new WebDriverException("Unable to start container: " + Contents.string(res)); + } } public void stop(Duration timeout) { @@ -59,13 +66,19 @@ public void stop(Duration timeout) { HttpRequest request = new HttpRequest(POST, String.format("/containers/%s/stop", id)); request.addQueryParameter("t", seconds); - client.apply(request); + HttpResponse res = client.apply(request); + if (res.getStatus() != HttpURLConnection.HTTP_OK) { + throw new WebDriverException("Unable to stop container: " + Contents.string(res)); + } } public void delete() { LOG.info("Removing " + getId()); HttpRequest request = new HttpRequest(DELETE, "/containers/" + id); - client.apply(request); + HttpResponse res = client.apply(request); + if (res.getStatus() != HttpURLConnection.HTTP_OK) { + LOG.warning("Unable to delete container"); + } } } diff --git a/java/server/src/org/openqa/selenium/docker/Docker.java b/java/server/src/org/openqa/selenium/docker/Docker.java index 4fca1e77ff1e8..4176b69b8041c 100644 --- a/java/server/src/org/openqa/selenium/docker/Docker.java +++ b/java/server/src/org/openqa/selenium/docker/Docker.java @@ -26,15 +26,18 @@ import com.google.common.reflect.TypeToken; +import org.openqa.selenium.WebDriverException; import org.openqa.selenium.json.Json; import org.openqa.selenium.json.JsonException; import org.openqa.selenium.json.JsonOutput; +import org.openqa.selenium.remote.http.Contents; import org.openqa.selenium.remote.http.HttpClient; import org.openqa.selenium.remote.http.HttpRequest; import org.openqa.selenium.remote.http.HttpResponse; import java.io.IOException; import java.io.UncheckedIOException; +import java.net.HttpURLConnection; import java.util.List; import java.util.Map; import java.util.Objects; @@ -94,7 +97,10 @@ public Image pull(String name, String tag) { request.addQueryParameter("fromImage", name); request.addQueryParameter("tag", tag); - client.apply(request); + HttpResponse res = client.apply(request); + if (res.getStatus() != HttpURLConnection.HTTP_OK) { + throw new WebDriverException("Unable to pull container: " + name); + } LOG.info(String.format("Pull of %s:%s complete", name, tag)); diff --git a/java/server/src/org/openqa/selenium/events/local/BUILD.bazel b/java/server/src/org/openqa/selenium/events/local/BUILD.bazel index 6d88c0699e913..fb763de5b4195 100644 --- a/java/server/src/org/openqa/selenium/events/local/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/events/local/BUILD.bazel @@ -2,6 +2,8 @@ java_library( name = "local", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid:__pkg__", + "//java/server/src/org/openqa/selenium/grid/commands:__pkg__", "//java/server/test/org/openqa/selenium/grid:__subpackages__", ], deps = [ diff --git a/java/server/src/org/openqa/selenium/events/zeromq/BUILD.bazel b/java/server/src/org/openqa/selenium/events/zeromq/BUILD.bazel index 1f722a1f759f4..4ae952cfa2b1e 100644 --- a/java/server/src/org/openqa/selenium/events/zeromq/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/events/zeromq/BUILD.bazel @@ -2,6 +2,9 @@ java_library( name = "zeromq", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid:__pkg__", + "//java/server/src/org/openqa/selenium/grid/commands:__pkg__", + "//java/server/src/org/openqa/selenium/grid/server:__pkg__", "//java/server/test/org/openqa/selenium/grid/router:__pkg__", ], deps = [ diff --git a/java/server/src/org/openqa/selenium/grid/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/BUILD.bazel new file mode 100644 index 0000000000000..30b6c67347c67 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/BUILD.bazel @@ -0,0 +1,22 @@ +java_binary( + name = "grid", + main_class = "org.openqa.selenium.grid.Main", + srcs = glob(["*.java"]), + deps = [ + "//java/server/src/org/openqa/selenium/cli", + ], + runtime_deps = [ + "//java/client/src/org/openqa/selenium/chrome", + "//java/client/src/org/openqa/selenium/edge", + "//java/client/src/org/openqa/selenium/firefox", + "//java/client/src/org/openqa/selenium/ie", + "//java/client/src/org/openqa/selenium/safari", + "//java/server/src/org/openqa/selenium/events/local", + "//java/server/src/org/openqa/selenium/events/zeromq", + "//java/server/src/org/openqa/selenium/grid/commands", + "//java/server/src/org/openqa/selenium/grid/distributor/httpd", + "//java/server/src/org/openqa/selenium/grid/node/httpd", + "//java/server/src/org/openqa/selenium/grid/router/httpd", + "//java/server/src/org/openqa/selenium/grid/sessionmap/httpd", + ] +) diff --git a/java/server/src/org/openqa/selenium/grid/commands/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/commands/BUILD.bazel new file mode 100644 index 0000000000000..20f16cb845fa7 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/commands/BUILD.bazel @@ -0,0 +1,34 @@ +java_library( + name = "commands", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium:core", + "//java/client/src/org/openqa/selenium/net", + "//java/client/src/org/openqa/selenium/remote/http", + "//java/client/src/org/openqa/selenium/remote/tracing", + "//java/server/src/org/openqa/selenium/cli", + "//java/server/src/org/openqa/selenium/events", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/distributor", + "//java/server/src/org/openqa/selenium/grid/distributor/local", + "//java/server/src/org/openqa/selenium/grid/docker", + "//java/server/src/org/openqa/selenium/grid/log", + "//java/server/src/org/openqa/selenium/grid/node", + "//java/server/src/org/openqa/selenium/grid/node/config", + "//java/server/src/org/openqa/selenium/grid/node/local", + "//java/server/src/org/openqa/selenium/grid/router", + "//java/server/src/org/openqa/selenium/grid/server", + "//java/server/src/org/openqa/selenium/grid/sessionmap", + "//java/server/src/org/openqa/selenium/grid/sessionmap/local", + "//java/server/src/org/openqa/selenium/grid/web", + "//third_party/java/beust:jcommander", + "//third_party/java/guava", + "//third_party/java/service", + ], + runtime_deps = [ + "//java/server/src/org/openqa/selenium/events/local", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__pkg__", + ], +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/distributor/config/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/distributor/config/BUILD.bazel new file mode 100644 index 0000000000000..e5e0f8fafd95b --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/distributor/config/BUILD.bazel @@ -0,0 +1,16 @@ +java_library( + name = "config", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/net", + "//java/client/src/org/openqa/selenium/remote/http", + "//java/client/src/org/openqa/selenium/remote/tracing", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/distributor", + "//java/server/src/org/openqa/selenium/grid/distributor/remote", + "//third_party/java/beust:jcommander", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__subpackages__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/distributor/httpd/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/distributor/httpd/BUILD.bazel new file mode 100644 index 0000000000000..0965106490f9f --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/distributor/httpd/BUILD.bazel @@ -0,0 +1,23 @@ +java_library( + name = "httpd", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/remote/tracing", + "//java/server/src/org/openqa/selenium/cli", + "//java/server/src/org/openqa/selenium/events", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/distributor", + "//java/server/src/org/openqa/selenium/grid/distributor/local", + "//java/server/src/org/openqa/selenium/grid/log", + "//java/server/src/org/openqa/selenium/grid/server", + "//java/server/src/org/openqa/selenium/grid/sessionmap", + "//java/server/src/org/openqa/selenium/grid/sessionmap/config", + "//java/server/src/org/openqa/selenium/grid/web", + "//third_party/java/beust:jcommander", + "//third_party/java/guava", + "//third_party/java/service", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__pkg__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/distributor/local/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/distributor/local/BUILD.bazel index 6324367df2cd2..bb91f3385d613 100644 --- a/java/server/src/org/openqa/selenium/grid/distributor/local/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/grid/distributor/local/BUILD.bazel @@ -2,6 +2,8 @@ java_library( name = "local", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid/commands:__pkg__", + "//java/server/src/org/openqa/selenium/grid/distributor/httpd:__pkg__", "//java/server/test/org/openqa/selenium/grid/distributor:__pkg__", "//java/server/test/org/openqa/selenium/grid/router:__pkg__", ], diff --git a/java/server/src/org/openqa/selenium/grid/distributor/remote/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/distributor/remote/BUILD.bazel index 3495367ba62c4..d51929255cdb1 100644 --- a/java/server/src/org/openqa/selenium/grid/distributor/remote/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/grid/distributor/remote/BUILD.bazel @@ -2,6 +2,7 @@ java_library( name = "remote", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid:__subpackages__", "//java/server/test/org/openqa/selenium/grid/distributor:__pkg__", "//java/server/test/org/openqa/selenium/grid/router:__pkg__", ], diff --git a/java/server/src/org/openqa/selenium/grid/docker/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/docker/BUILD.bazel new file mode 100644 index 0000000000000..26dccc833fea3 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/docker/BUILD.bazel @@ -0,0 +1,21 @@ +java_library( + name = "docker", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/json", + "//java/client/src/org/openqa/selenium/net", + "//java/client/src/org/openqa/selenium/remote", + "//java/client/src/org/openqa/selenium/support", + "//java/server/src/org/openqa/selenium/docker", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/data", + "//java/server/src/org/openqa/selenium/grid/node", + "//java/server/src/org/openqa/selenium/grid/node/local", + "//third_party/java/beust:jcommander", + "//third_party/java/guava", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid/commands:__pkg__", + "//java/server/src/org/openqa/selenium/grid/node/httpd:__pkg__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/log/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/log/BUILD.bazel new file mode 100644 index 0000000000000..5516dc68bc769 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/log/BUILD.bazel @@ -0,0 +1,12 @@ +java_library( + name = "log", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/json", + "//java/client/src/org/openqa/selenium/remote/tracing", + "//java/server/src/org/openqa/selenium/grid/config", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__subpackages__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/node/config/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/node/config/BUILD.bazel new file mode 100644 index 0000000000000..4b4b5b14cce79 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/node/config/BUILD.bazel @@ -0,0 +1,14 @@ +java_library( + name = "config", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/remote", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/data", + "//java/server/src/org/openqa/selenium/grid/node", + "//java/server/src/org/openqa/selenium/grid/node/local", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__subpackages__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/node/httpd/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/node/httpd/BUILD.bazel new file mode 100644 index 0000000000000..34b1c751c55b9 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/node/httpd/BUILD.bazel @@ -0,0 +1,25 @@ +java_library( + name = "httpd", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/remote/tracing", + "//java/server/src/org/openqa/selenium/cli", + "//java/server/src/org/openqa/selenium/concurrent", + "//java/server/src/org/openqa/selenium/events", + "//java/server/src/org/openqa/selenium/grid/component", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/data", + "//java/server/src/org/openqa/selenium/grid/docker", + "//java/server/src/org/openqa/selenium/grid/log", + "//java/server/src/org/openqa/selenium/grid/node/config", + "//java/server/src/org/openqa/selenium/grid/node/local", + "//java/server/src/org/openqa/selenium/grid/server", + "//java/server/src/org/openqa/selenium/grid/web", + "//third_party/java/beust:jcommander", + "//third_party/java/guava", + "//third_party/java/service", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__pkg__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/node/local/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/node/local/BUILD.bazel index 04bcbb7f97b43..d4193a468b224 100644 --- a/java/server/src/org/openqa/selenium/grid/node/local/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/grid/node/local/BUILD.bazel @@ -2,6 +2,10 @@ java_library( name = "local", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid/commands:__pkg__", + "//java/server/src/org/openqa/selenium/grid/docker:__pkg__", + "//java/server/src/org/openqa/selenium/grid/node/config:__pkg__", + "//java/server/src/org/openqa/selenium/grid/node/httpd:__pkg__", "//java/server/test/org/openqa/selenium/grid:__subpackages__", ], deps = [ diff --git a/java/server/src/org/openqa/selenium/grid/router/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/router/BUILD.bazel index e4b0e8ffd4042..06f455d88344c 100644 --- a/java/server/src/org/openqa/selenium/grid/router/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/grid/router/BUILD.bazel @@ -2,6 +2,8 @@ java_library( name = "router", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid/commands:__subpackages__", + "//java/server/src/org/openqa/selenium/grid/router:__subpackages__", "//java/server/test/org/openqa/selenium/grid:__subpackages__", ], deps = [ diff --git a/java/server/src/org/openqa/selenium/grid/router/httpd/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/router/httpd/BUILD.bazel new file mode 100644 index 0000000000000..0ae98ec52c6c6 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/router/httpd/BUILD.bazel @@ -0,0 +1,24 @@ +java_library( + name = "httpd", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/remote/http", + "//java/client/src/org/openqa/selenium/remote/tracing", + "//java/server/src/org/openqa/selenium/cli", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/distributor", + "//java/server/src/org/openqa/selenium/grid/distributor/config", + "//java/server/src/org/openqa/selenium/grid/log", + "//java/server/src/org/openqa/selenium/grid/node", + "//java/server/src/org/openqa/selenium/grid/router", + "//java/server/src/org/openqa/selenium/grid/server", + "//java/server/src/org/openqa/selenium/grid/sessionmap", + "//java/server/src/org/openqa/selenium/grid/sessionmap/config", + "//java/server/src/org/openqa/selenium/grid/web", + "//third_party/java/beust:jcommander", + "//third_party/java/service", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__pkg__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/server/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/server/BUILD.bazel index d467c3573a3f1..975af31c22a4f 100644 --- a/java/server/src/org/openqa/selenium/grid/server/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/grid/server/BUILD.bazel @@ -6,6 +6,9 @@ java_library( "//java/server/src/org/openqa/selenium/netty/server:__pkg__", "//java/server/test/org/openqa/selenium/grid:__subpackages__", ], + runtime_deps = [ + "//java/server/src/org/openqa/selenium/events/zeromq", + ], deps = [ "//java/client/src/org/openqa/selenium:core", "//java/client/src/org/openqa/selenium/json", diff --git a/java/server/src/org/openqa/selenium/grid/sessionmap/config/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/sessionmap/config/BUILD.bazel new file mode 100644 index 0000000000000..482c7d2e0d204 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/sessionmap/config/BUILD.bazel @@ -0,0 +1,14 @@ +java_library( + name = "config", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/remote/http", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/sessionmap", + "//java/server/src/org/openqa/selenium/grid/sessionmap/remote", + "//third_party/java/beust:jcommander", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__subpackages__", + ] +) diff --git a/java/server/src/org/openqa/selenium/grid/sessionmap/httpd/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/sessionmap/httpd/BUILD.bazel new file mode 100644 index 0000000000000..0166d9cc72ed8 --- /dev/null +++ b/java/server/src/org/openqa/selenium/grid/sessionmap/httpd/BUILD.bazel @@ -0,0 +1,21 @@ +java_library( + name = "httpd", + srcs = glob(["*.java"]), + deps = [ + "//java/client/src/org/openqa/selenium/remote/tracing", + "//java/server/src/org/openqa/selenium/cli", + "//java/server/src/org/openqa/selenium/events", + "//java/server/src/org/openqa/selenium/grid/config", + "//java/server/src/org/openqa/selenium/grid/log", + "//java/server/src/org/openqa/selenium/grid/server", + "//java/server/src/org/openqa/selenium/grid/sessionmap", + "//java/server/src/org/openqa/selenium/grid/sessionmap/local", + "//java/server/src/org/openqa/selenium/grid/web", + "//third_party/java/beust:jcommander", + "//third_party/java/guava", + "//third_party/java/service", + ], + visibility = [ + "//java/server/src/org/openqa/selenium/grid:__pkg__", + ] +) \ No newline at end of file diff --git a/java/server/src/org/openqa/selenium/grid/sessionmap/local/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/sessionmap/local/BUILD.bazel index 524b5522d140d..fb0857489ed9c 100644 --- a/java/server/src/org/openqa/selenium/grid/sessionmap/local/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/grid/sessionmap/local/BUILD.bazel @@ -2,6 +2,8 @@ java_library( name = "local", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid/commands:__pkg__", + "//java/server/src/org/openqa/selenium/grid/sessionmap/httpd:__pkg__", "//java/server/test/org/openqa/selenium/grid:__subpackages__", ], deps = [ diff --git a/java/server/src/org/openqa/selenium/grid/sessionmap/remote/BUILD.bazel b/java/server/src/org/openqa/selenium/grid/sessionmap/remote/BUILD.bazel index 3f77c93be5a84..9ce1d58ee59d2 100644 --- a/java/server/src/org/openqa/selenium/grid/sessionmap/remote/BUILD.bazel +++ b/java/server/src/org/openqa/selenium/grid/sessionmap/remote/BUILD.bazel @@ -2,6 +2,7 @@ java_library( name = "remote", srcs = glob(["*.java"]), visibility = [ + "//java/server/src/org/openqa/selenium/grid:__subpackages__", "//java/server/test/org/openqa/selenium/grid:__subpackages__", ], deps = [