summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2018-10-25 12:37:20 +0200
committerMartin Polden <mpolden@mpolden.no>2018-10-25 12:37:20 +0200
commite4fbdc2b8574d79344a43563b8f1ddb3db130b21 (patch)
treeef8bd87bba2d6c4593b5948ecae8d9f425561196
parent8714fb78ce189089d7aa6438f7b0c875553366f3 (diff)
Revert "Remove PR instances"
This reverts commit c49cdc0e0ef900cb4cda93bcfdb88692767ae46e.
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ControllerMaintenance.java3
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainer.java40
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainerTest.java46
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/controller/responses/maintenance.json3
4 files changed, 0 insertions, 92 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ControllerMaintenance.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ControllerMaintenance.java
index a00c2ccb4ed..33555c08a43 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ControllerMaintenance.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ControllerMaintenance.java
@@ -48,7 +48,6 @@ public class ControllerMaintenance extends AbstractComponent {
private final OsVersionStatusUpdater osVersionStatusUpdater;
private final JobRunner jobRunner;
private final ContactInformationMaintainer contactInformationMaintainer;
- private final DatabaseMaintainer databaseMaintainer;
@SuppressWarnings("unused") // instantiated by Dependency Injection
public ControllerMaintenance(MaintainerConfig maintainerConfig, ApiAuthorityConfig apiAuthorityConfig, Controller controller, CuratorDb curator,
@@ -75,7 +74,6 @@ public class ControllerMaintenance extends AbstractComponent {
osUpgraders = osUpgraders(controller, jobControl);
osVersionStatusUpdater = new OsVersionStatusUpdater(controller, maintenanceInterval, jobControl);
contactInformationMaintainer = new ContactInformationMaintainer(controller, Duration.ofHours(12), jobControl, organization, apiAuthorityConfig);
- databaseMaintainer = new DatabaseMaintainer(controller, maintenanceInterval, jobControl);
}
public Upgrader upgrader() { return upgrader; }
@@ -102,7 +100,6 @@ public class ControllerMaintenance extends AbstractComponent {
osVersionStatusUpdater.deconstruct();
jobRunner.deconstruct();
contactInformationMaintainer.deconstruct();
- databaseMaintainer.deconstruct();
}
/** Create one OS upgrader per cloud found in the zone registry of controller */
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainer.java
deleted file mode 100644
index ac368b00b82..00000000000
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainer.java
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.hosted.controller.maintenance;
-
-import com.yahoo.vespa.hosted.controller.Application;
-import com.yahoo.vespa.hosted.controller.Controller;
-
-import java.time.Duration;
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
- * Runs maintenance operations for the controller database, such as removing stale entries.
- *
- * @author mpolden
- */
-public class DatabaseMaintainer extends Maintainer {
-
- public DatabaseMaintainer(Controller controller, Duration interval, JobControl jobControl) {
- super(controller, interval, jobControl);
- }
-
- @Override
- protected void maintain() {
- removePullRequestInstances();
- }
-
- /** Pull request instances are no longer created. This removes all existing entries */
- // TODO: Remove after 2018-11-01
- // TODO: Remove ApplicationList#notPullRequest and its usages
- private void removePullRequestInstances() {
- List<Application> pullRequestInstances = controller().applications().asList().stream()
- .filter(a -> a.id().instance().value().matches("^(default-pr)?\\d+$"))
- .collect(Collectors.toList());
-
- pullRequestInstances.forEach(application -> {
- controller().applications().lockIfPresent(application.id(), (lockedApplication) -> controller().curator().removeApplication(lockedApplication.get().id()));
- });
- }
-
-}
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainerTest.java
deleted file mode 100644
index bdb55d0b546..00000000000
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/DatabaseMaintainerTest.java
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.hosted.controller.maintenance;
-
-import com.yahoo.config.provision.ApplicationId;
-import com.yahoo.config.provision.Environment;
-import com.yahoo.vespa.hosted.controller.Application;
-import com.yahoo.vespa.hosted.controller.application.ApplicationPackage;
-import com.yahoo.vespa.hosted.controller.deployment.ApplicationPackageBuilder;
-import com.yahoo.vespa.hosted.controller.deployment.DeploymentTester;
-import org.junit.Test;
-
-import java.time.Duration;
-import java.time.Instant;
-
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-/**
- * @author mpolden
- */
-public class DatabaseMaintainerTest {
-
- @Test
- public void remove_pull_request_instances() {
- DeploymentTester tester = new DeploymentTester();
- DatabaseMaintainer maintainer = new DatabaseMaintainer(tester.controller(), Duration.ofDays(1), new JobControl(tester.controller().curator()));
-
- // Deploy regular application
- Application app1 = tester.createApplication("app1", "tenant1", 1, 1);
- ApplicationPackage applicationPackage = new ApplicationPackageBuilder()
- .environment(Environment.prod)
- .region("us-east-3")
- .build();
- tester.deployCompletely(app1, applicationPackage);
-
- // Create pr instance (no longer permitted through ApplicationController so we have to cheat)
- Application app2 = new Application(ApplicationId.from("tenant1", "app1", "default-pr1"), Instant.now());
- tester.controller().curator().writeApplication(app2);
- assertTrue(tester.applications().get(app2.id()).isPresent());
-
- maintainer.maintain();
- assertTrue("Regular application is not deleted", tester.applications().get(app1.id()).isPresent());
- assertFalse("PR instance is deleted", tester.applications().get(app2.id()).isPresent());
- }
-
-}
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/controller/responses/maintenance.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/controller/responses/maintenance.json
index 707b71b772f..6a71e524ae4 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/controller/responses/maintenance.json
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/controller/responses/maintenance.json
@@ -13,9 +13,6 @@
"name": "ContactInformationMaintainer"
},
{
- "name": "DatabaseMaintainer"
- },
- {
"name": "DefaultOsUpgrader"
},
{