summaryrefslogtreecommitdiffstats
path: root/controller-server
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2019-08-27 13:51:29 +0200
committerMartin Polden <mpolden@mpolden.no>2019-08-27 13:51:29 +0200
commitca087aa4a70aa9dc7a005bcd6dce7b0b0b871777 (patch)
treee369f8763c68b9f2e39623d0763363023894c9a4 /controller-server
parentc69db7728c5d0026df1ca3d47ca8c8f474f8943e (diff)
Only pass container endpoints in deploy
Diffstat (limited to 'controller-server')
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java17
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java4
2 files changed, 10 insertions, 11 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java
index d7a0465a8df..f40db70669f 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/ApplicationController.java
@@ -292,7 +292,6 @@ public class ApplicationController {
ApplicationVersion applicationVersion;
ApplicationPackage applicationPackage;
Set<ContainerEndpoint> endpoints;
- Set<String> legacyRotations;
Optional<ApplicationCertificate> applicationCertificate;
try (Lock lock = lock(applicationId)) {
@@ -334,10 +333,6 @@ public class ApplicationController {
// Assign and register endpoints
application = withRotation(application, zone);
endpoints = registerEndpointsInDns(application.get(), zone);
- legacyRotations = endpoints.stream()
- .map(ContainerEndpoint::names)
- .flatMap(Collection::stream)
- .collect(Collectors.toSet());
if (controller.zoneRegistry().zones().directlyRouted().ids().contains(zone)) {
// Get application certificate (provisions a new certificate if missing)
@@ -357,7 +352,7 @@ public class ApplicationController {
// Carry out deployment without holding the application lock.
options = withVersion(platformVersion, options);
- ActivateResult result = deploy(applicationId, applicationPackage, zone, options, legacyRotations, endpoints,
+ ActivateResult result = deploy(applicationId, applicationPackage, zone, options, endpoints,
applicationCertificate.orElse(null));
lockOrThrow(applicationId, application ->
@@ -425,7 +420,7 @@ public class ApplicationController {
artifactRepository.getSystemApplicationPackage(application.id(), zone, version)
);
DeployOptions options = withVersion(version, DeployOptions.none());
- return deploy(application.id(), applicationPackage, zone, options, Set.of(), Set.of(), /* No application cert */ null);
+ return deploy(application.id(), applicationPackage, zone, options, Set.of(), /* No application cert */ null);
} else {
throw new RuntimeException("This system application does not have an application package: " + application.id().toShortString());
}
@@ -433,16 +428,16 @@ public class ApplicationController {
/** Deploys the given tester application to the given zone. */
public ActivateResult deployTester(TesterId tester, ApplicationPackage applicationPackage, ZoneId zone, DeployOptions options) {
- return deploy(tester.id(), applicationPackage, zone, options, Set.of(), Set.of(), /* No application cert for tester*/ null);
+ return deploy(tester.id(), applicationPackage, zone, options, Set.of(), /* No application cert for tester*/ null);
}
private ActivateResult deploy(ApplicationId application, ApplicationPackage applicationPackage,
- ZoneId zone, DeployOptions deployOptions,
- Set<String> legacyRotations, Set<ContainerEndpoint> endpoints, ApplicationCertificate applicationCertificate) {
+ ZoneId zone, DeployOptions deployOptions, Set<ContainerEndpoint> endpoints,
+ ApplicationCertificate applicationCertificate) {
DeploymentId deploymentId = new DeploymentId(application, zone);
try {
ConfigServer.PreparedApplication preparedApplication =
- configServer.deploy(deploymentId, deployOptions, legacyRotations, endpoints, applicationCertificate, applicationPackage.zippedContent());
+ configServer.deploy(deploymentId, deployOptions, Set.of(), endpoints, applicationCertificate, applicationPackage.zippedContent());
return new ActivateResult(new RevisionId(applicationPackage.hash()), preparedApplication.prepareResponse(),
applicationPackage.zippedContent().length);
} finally {
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java
index b692500e40f..c160ed99a20 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java
@@ -239,6 +239,10 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer
if (nodeRepository().list(deployment.zoneId(), deployment.applicationId()).isEmpty())
provision(deployment.zoneId(), deployment.applicationId());
+ if (!rotationNames.isEmpty() && !containerEndpoints.isEmpty()) {
+ throw new IllegalArgumentException("Cannot set both rotations and containerEndpoints"); // Same constraint as a real config server
+ }
+
this.rotationNames.put(
deployment,
Stream.concat(