summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorJon Marius Venstad <jonmv@users.noreply.github.com>2021-04-29 14:40:39 +0200
committerGitHub <noreply@github.com>2021-04-29 14:40:39 +0200
commit6630a8a467635d04257f8ac2a54ad0c4f5c1cb7d (patch)
treebb97a4f0eb99d199ccd87195ac5253d460fce4e6 /configserver
parent2b9209357f649d18e91bd3d9cf382fcc20591201 (diff)
parent7865a056d04c45169a7e5116d7a70b788b1329e6 (diff)
Merge pull request #17658 from vespa-engine/jonmv/rest-api-bindings-without-trailing-slash
Support loadbalancer/v1 and application/v2/tenant without trailing slash
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/TenantHandler.java3
-rw-r--r--configserver/src/main/resources/configserver-app/services.xml3
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/TenantHandlerTest.java3
3 files changed, 6 insertions, 3 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/TenantHandler.java b/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/TenantHandler.java
index 6aff3b8a361..9063c5137ef 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/TenantHandler.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/http/v2/TenantHandler.java
@@ -93,6 +93,7 @@ public class TenantHandler extends HttpHandler {
private static BindingMatch<?> getBindingMatch(HttpRequest request) {
return HttpConfigRequests.getBindingMatch(request,
+ "http://*/application/v2/tenant",
"http://*/application/v2/tenant/",
"http://*/application/v2/tenant/*");
}
@@ -103,7 +104,7 @@ public class TenantHandler extends HttpHandler {
private static boolean isListTenantsRequest(HttpRequest request) {
return getBindingMatch(request).groupCount() == 2 &&
- request.getUri().getPath().endsWith("/tenant/");
+ request.getUri().getPath().matches("/application/v2/tenant/?");
}
private static TenantName getTenantNameFromRequest(HttpRequest request) {
diff --git a/configserver/src/main/resources/configserver-app/services.xml b/configserver/src/main/resources/configserver-app/services.xml
index fd8bda8f305..73aa5db98e4 100644
--- a/configserver/src/main/resources/configserver-app/services.xml
+++ b/configserver/src/main/resources/configserver-app/services.xml
@@ -102,8 +102,7 @@
<binding>http://*/status</binding>
</handler>
<handler id='com.yahoo.vespa.config.server.http.v2.TenantHandler' bundle='configserver'>
- <binding>http://*/application/v2/tenant/</binding>
- <binding>http://*/application/v2/tenant/*</binding>
+ <binding>http://*/application/v2/tenant*</binding>
</handler>
<handler id='com.yahoo.vespa.config.server.http.v2.SessionCreateHandler' bundle='configserver'>
<binding>http://*/application/v2/tenant/*/session</binding>
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/TenantHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/TenantHandlerTest.java
index b0b01ea24b4..e7723f75ffc 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/TenantHandlerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/TenantHandlerTest.java
@@ -102,6 +102,9 @@ public class TenantHandlerTest {
assertResponseEquals((ListTenantsResponse) handler.handleGET(
HttpRequest.createTestRequest("http://deploy.example.yahoo.com:80/application/v2/tenant/", Method.GET)),
"{\"tenants\":[\"default\",\"a\"]}");
+ assertResponseEquals((ListTenantsResponse) handler.handleGET(
+ HttpRequest.createTestRequest("http://deploy.example.yahoo.com:80/application/v2/tenant", Method.GET)),
+ "{\"tenants\":[\"default\",\"a\"]}");
}
@Test(expected=BadRequestException.class)