diff options
author | Martin Polden <mpolden@mpolden.no> | 2020-03-23 16:12:06 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2020-03-23 16:12:06 +0100 |
commit | 716587c1b5c8303cfade4901b0cf9c7161fab562 (patch) | |
tree | 9ad46c5b38394bb04284963639274c2352522ec3 /controller-server | |
parent | 4f29479b720958cba7e40e1142b379962f55c2e8 (diff) |
Test that directly routed endpoint is passed to config server
Diffstat (limited to 'controller-server')
-rw-r--r-- | controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java index 27bcb4bd49a..497a0ddf5a0 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/ControllerTest.java @@ -858,11 +858,15 @@ public class ControllerTest { @Test public void testDirectRoutingSupport() { var context = tester.newDeploymentContext(); - var zone = ZoneId.from("prod", "us-west-1"); + var zone1 = ZoneId.from("prod", "us-west-1"); + var zone2 = ZoneId.from("prod", "us-east-3"); var applicationPackageBuilder = new ApplicationPackageBuilder() - .region(zone.region()); - tester.controllerTester().zoneRegistry().setRoutingMethod(ZoneApiMock.from(zone), RoutingMethod.shared, RoutingMethod.sharedLayer4); - Supplier<Set<RoutingMethod>> routingMethods = () -> tester.controller().routing().endpointsOf(context.deploymentIdIn(zone)) + .region(zone1.region()) + .region(zone2.region()); + tester.controllerTester().zoneRegistry() + .setRoutingMethod(ZoneApiMock.from(zone1), RoutingMethod.shared, RoutingMethod.sharedLayer4) + .setRoutingMethod(ZoneApiMock.from(zone2), RoutingMethod.shared, RoutingMethod.sharedLayer4); + Supplier<Set<RoutingMethod>> routingMethods = () -> tester.controller().routing().endpointsOf(context.deploymentIdIn(zone1)) .asList() .stream() .map(Endpoint::routingMethod) @@ -879,16 +883,25 @@ public class ControllerTest { assertEquals(Set.of(RoutingMethod.shared), routingMethods.get()); // Without feature flag - var applicationPackage = applicationPackageBuilder.compileVersion(RoutingController.DIRECT_ROUTING_MIN_VERSION) - .athenzIdentity(AthenzDomain.from("domain"), AthenzService.from("service")) - .build(); - context.submit(applicationPackage).deploy(); + applicationPackageBuilder = applicationPackageBuilder.compileVersion(RoutingController.DIRECT_ROUTING_MIN_VERSION) + .athenzIdentity(AthenzDomain.from("domain"), AthenzService.from("service")); + context.submit(applicationPackageBuilder.build()).deploy(); assertEquals(Set.of(RoutingMethod.shared), routingMethods.get()); // With everything required ((InMemoryFlagSource) tester.controller().flagSource()).withBooleanFlag(Flags.ALLOW_DIRECT_ROUTING.id(), true); - context.submit(applicationPackage).deploy(); + context.submit(applicationPackageBuilder.build()).deploy(); assertEquals(Set.of(RoutingMethod.shared, RoutingMethod.sharedLayer4), routingMethods.get()); + + // Global endpoint is configured and includes directly routed endpoint name + applicationPackageBuilder = applicationPackageBuilder.endpoint("default", "default"); + context.submit(applicationPackageBuilder.build()).deploy(); + for (var zone : List.of(zone1, zone2)) { + assertEquals(Set.of("rotation-id-01", + "application.tenant.global.vespa.oath.cloud", + "application--tenant.global.vespa.oath.cloud"), + tester.configServer().rotationNames().get(context.deploymentIdIn(zone))); + } } @Test |