From de713e9880e1610908595a9aa88a66dce5be80c5 Mon Sep 17 00:00:00 2001 From: Jon Marius Venstad Date: Thu, 29 Apr 2021 13:28:23 +0200 Subject: Support loadbalancer/v1 and application/v2/tenant without trailing slash --- node-repository/src/main/config/node-repository.xml | 1 + .../yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiHandler.java | 2 +- .../com/yahoo/vespa/hosted/provision/testutils/ContainerConfig.java | 1 + .../yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiTest.java | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) (limited to 'node-repository') diff --git a/node-repository/src/main/config/node-repository.xml b/node-repository/src/main/config/node-repository.xml index a12e2a8b11c..8a6e466fdf3 100644 --- a/node-repository/src/main/config/node-repository.xml +++ b/node-repository/src/main/config/node-repository.xml @@ -14,6 +14,7 @@ + http://*/loadbalancers/v1 http://*/loadbalancers/v1/* diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiHandler.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiHandler.java index f81e3240397..4c4011daa3d 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiHandler.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiHandler.java @@ -47,7 +47,7 @@ public class LoadBalancersV1ApiHandler extends LoggingRequestHandler { private HttpResponse handleGET(HttpRequest request) { String path = request.getUri().getPath(); - if (path.equals("/loadbalancers/v1/")) return new LoadBalancersResponse(request, nodeRepository); + if (path.matches("/loadbalancers/v1/?")) return new LoadBalancersResponse(request, nodeRepository); throw new NotFoundException("Nothing at path '" + path + "'"); } } diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/ContainerConfig.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/ContainerConfig.java index 5e40c0bd9ff..bfd1bc6565c 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/ContainerConfig.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/ContainerConfig.java @@ -36,6 +36,7 @@ public class ContainerConfig { " http://*/nodes/v2/*\n" + " \n" + " \n" + + " http://*/loadbalancers/v1\n" + " http://*/loadbalancers/v1/*\n" + " \n" + " \n" + diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiTest.java index e9811985b7d..1ca552bca94 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiTest.java +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/LoadBalancersV1ApiTest.java @@ -22,6 +22,7 @@ public class LoadBalancersV1ApiTest { @Test public void test_load_balancers() throws Exception { + tester.assertFile(new Request("http://localhost:8080/loadbalancers/v1"), "load-balancers.json"); tester.assertFile(new Request("http://localhost:8080/loadbalancers/v1/"), "load-balancers.json"); tester.assertFile(new Request("http://localhost:8080/loadbalancers/v1/?application=tenant4.application4.instance4"), "load-balancers-single.json"); tester.assertResponse(new Request("http://localhost:8080/loadbalancers/v1/?application=tenant.nonexistent.default"), "{\"loadBalancers\":[]}"); -- cgit v1.2.3