summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHÃ¥kon Hallingstad <hakon.hallingstad@gmail.com>2022-01-17 23:16:11 +0100
committerGitHub <noreply@github.com>2022-01-17 23:16:11 +0100
commit5fe129740c835f0e552bd6492cb2e110e9d5f0f3 (patch)
tree1d9e86eb7cde66e300c6b65233824da7f5bebce2
parent7e0c5b69ff9e99447dd7cf223321e760f4f2a130 (diff)
Revert "Revert "Remove dev system""
-rw-r--r--application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java10
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/NodeType.java5
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/SystemName.java7
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/Policy.java4
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ControllerMaintenance.java2
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/ContainerNetworkMode.java5
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureVersions.java1
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/NodeSerializer.java2
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java5
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeResourceLimits.java1
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodeSerializer.java2
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/HostCapacityTest.java20
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java13
-rw-r--r--orchestrator/src/test/java/com/yahoo/vespa/orchestrator/OrchestratorTest.java2
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java13
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/duper/DuperModelManager.java16
-rw-r--r--service-monitor/src/test/java/com/yahoo/vespa/service/duper/DuperModelManagerTest.java3
17 files changed, 15 insertions, 96 deletions
diff --git a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java
index 704217843fb..ad73905c395 100644
--- a/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java
+++ b/application-model/src/main/java/com/yahoo/vespa/applicationmodel/InfrastructureApplication.java
@@ -5,7 +5,6 @@ import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.NodeType;
import java.util.List;
-import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
@@ -20,17 +19,14 @@ public enum InfrastructureApplication {
CONFIG_SERVER("zone-config-servers", NodeType.config),
PROXY_HOST("proxy-host", NodeType.proxyhost),
PROXY("routing", NodeType.proxy),
- TENANT_HOST("tenant-host", NodeType.host),
- DEV_HOST("dev-host", NodeType.devhost);
+ TENANT_HOST("tenant-host", NodeType.host);
private final ApplicationId id;
private final NodeType nodeType;
/** Returns all applications that MAY be encountered in hosted Vespa, e.g. not DEV_HOST. */
- public static List<InfrastructureApplication> inHosted() {
- return Stream.of(values())
- .filter(application -> application != DEV_HOST)
- .collect(Collectors.toList());
+ public static List<InfrastructureApplication> toList() {
+ return List.of(values());
}
public static InfrastructureApplication withNodeType(NodeType nodeType) {
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/NodeType.java b/config-provisioning/src/main/java/com/yahoo/config/provision/NodeType.java
index a617c7bcea3..25ec7485c24 100644
--- a/config-provisioning/src/main/java/com/yahoo/config/provision/NodeType.java
+++ b/config-provisioning/src/main/java/com/yahoo/config/provision/NodeType.java
@@ -32,10 +32,7 @@ public enum NodeType {
controller("Controller node"),
/** Host of a controller node */
- controllerhost("Controller host", controller),
-
- /** Host capable of running multiple node types, only used in {@link SystemName#dev} */
- devhost("Dev host", config, controller, tenant);
+ controllerhost("Controller host", controller);
private final String description;
private final List<NodeType> childNodeTypes;
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/SystemName.java b/config-provisioning/src/main/java/com/yahoo/config/provision/SystemName.java
index e2349f6f63f..fef5babc806 100644
--- a/config-provisioning/src/main/java/com/yahoo/config/provision/SystemName.java
+++ b/config-provisioning/src/main/java/com/yahoo/config/provision/SystemName.java
@@ -24,10 +24,7 @@ public enum SystemName {
Public(true, false),
/** Continuous deployment system for testing the Public system */
- PublicCd(true, true),
-
- /** Local development system */
- dev(false, false);
+ PublicCd(true, true);
private final boolean isPublic;
private final boolean isCd;
@@ -43,7 +40,6 @@ public enum SystemName {
public static SystemName from(String value) {
switch (value.toLowerCase()) {
- case "dev": return dev;
case "cd": return cd;
case "main": return main;
case "public": return Public;
@@ -54,7 +50,6 @@ public enum SystemName {
public String value() {
switch (this) {
- case dev: return "dev";
case cd: return "cd";
case main: return "main";
case Public: return "public";
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/Policy.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/Policy.java
index 5768a7a3b3b..d40027d91a7 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/Policy.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/Policy.java
@@ -49,7 +49,7 @@ enum Policy {
/** Access to create a user tenant in select systems. */
user(Privilege.grant(Action.create, Action.update)
.on(PathGroup.user)
- .in(SystemName.main, SystemName.cd, SystemName.dev)),
+ .in(SystemName.main, SystemName.cd)),
/** Access to create a tenant. */
tenantCreate(Privilege.grant(Action.create)
@@ -130,7 +130,7 @@ enum Policy {
/** Read access to all information in select systems. */
classifiedRead(Privilege.grant(Action.read)
.on(PathGroup.allExcept(PathGroup.classifiedOperator))
- .in(SystemName.main, SystemName.cd, SystemName.dev)),
+ .in(SystemName.main, SystemName.cd)),
/** Read access to public info. */
publicRead(Privilege.grant(Action.read)
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 913d6dfeab8..f7dfadbffbc 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
@@ -135,7 +135,7 @@ public class ControllerMaintenance extends AbstractComponent {
public Intervals(SystemName system) {
this.system = Objects.requireNonNull(system);
- this.defaultInterval = duration(system.isCd() || system == SystemName.dev ? 1 : 5, MINUTES);
+ this.defaultInterval = duration(system.isCd() ? 1 : 5, MINUTES);
this.outstandingChangeDeployer = duration(3, MINUTES);
this.versionStatusUpdater = duration(3, MINUTES);
this.readyJobsTrigger = duration(1, MINUTES);
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/ContainerNetworkMode.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/ContainerNetworkMode.java
index 56e690864ac..6e88a41b8c6 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/ContainerNetworkMode.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/ContainerNetworkMode.java
@@ -14,10 +14,7 @@ public enum ContainerNetworkMode {
NPT("vespa-bridge"),
/** A host running a single container in the host network namespace. */
- HOST_NETWORK("host"),
-
- /** A host running multiple containers in a shared local network. */
- LOCAL("vespa-bridge");
+ HOST_NETWORK("host");
private final String networkName;
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureVersions.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureVersions.java
index 4f913bb55dd..a1f36a4f1a5 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureVersions.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureVersions.java
@@ -88,7 +88,6 @@ public class InfrastructureVersions {
case controllerhost:
case proxyhost:
case host:
- case devhost:
break;
default:
throw new IllegalArgumentException("Target version for type " + nodeType + " is not allowed");
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/NodeSerializer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/NodeSerializer.java
index 543972a9cb3..cd1b786afd1 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/NodeSerializer.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/NodeSerializer.java
@@ -554,7 +554,6 @@ public class NodeSerializer {
case "confighost": return NodeType.confighost;
case "controller": return NodeType.controller;
case "controllerhost": return NodeType.controllerhost;
- case "devhost": return NodeType.devhost;
default : throw new IllegalArgumentException("Unknown node type '" + typeString + "'");
}
}
@@ -569,7 +568,6 @@ public class NodeSerializer {
case confighost: return "confighost";
case controller: return "controller";
case controllerhost: return "controllerhost";
- case devhost: return "devhost";
}
throw new IllegalArgumentException("Serialized form of '" + type + "' not defined");
}
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java
index 4088d717a67..290a3f8f947 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java
@@ -7,7 +7,6 @@ import com.yahoo.config.provision.ClusterResources;
import com.yahoo.config.provision.ClusterSpec;
import com.yahoo.config.provision.Environment;
import com.yahoo.config.provision.NodeResources;
-import com.yahoo.config.provision.SystemName;
import com.yahoo.config.provision.Zone;
import com.yahoo.vespa.flags.PermanentFlags;
import com.yahoo.vespa.hosted.provision.NodeRepository;
@@ -72,10 +71,6 @@ public class CapacityPolicies {
public NodeResources defaultNodeResources(ClusterSpec.Type clusterType) {
if (clusterType == ClusterSpec.Type.admin) {
- if (zone.system() == SystemName.dev) {
- // Use small logserver in dev system
- return new NodeResources(0.1, 1, 10, 0.3);
- }
return zone.getCloud().dynamicProvisioning() && ! sharedHosts.apply(clusterType) ?
new NodeResources(0.5, 4, 50, 0.3) :
new NodeResources(0.5, 2, 50, 0.3);
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeResourceLimits.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeResourceLimits.java
index d5dbe08dca9..310f921367e 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeResourceLimits.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeResourceLimits.java
@@ -71,7 +71,6 @@ public class NodeResourceLimits {
}
private double minAdvertisedMemoryGb(ClusterSpec.Type clusterType) {
- if (zone().system() == SystemName.dev) return 1; // Allow small containers in dev system
if (clusterType == ClusterSpec.Type.admin) return 1;
return 4;
}
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodeSerializer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodeSerializer.java
index be011c886a5..6282c072001 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodeSerializer.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodeSerializer.java
@@ -53,7 +53,6 @@ public class NodeSerializer {
case "confighost": return NodeType.confighost;
case "controller": return NodeType.controller;
case "controllerhost": return NodeType.controllerhost;
- case "devhost": return NodeType.devhost;
default: throw new IllegalArgumentException("Unknown node type '" + nodeType + "'");
}
}
@@ -68,7 +67,6 @@ public class NodeSerializer {
case confighost: return "confighost";
case controller: return "controller";
case controllerhost: return "controllerhost";
- case devhost: return "devhost";
default: throw new IllegalArgumentException("Unknown node type '" + type.name() + "'");
}
}
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/HostCapacityTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/HostCapacityTest.java
index 390df571b04..31643b2ac79 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/HostCapacityTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/HostCapacityTest.java
@@ -128,26 +128,6 @@ public class HostCapacityTest {
}
@Test
- public void devhostCapacityTest() {
- // Dev host can assign both configserver and tenant containers.
-
- var nodeFlavors = FlavorConfigBuilder.createDummies("devhost", "container");
- var devHost = Node.create("devhost", new IP.Config(Set.of("::1"), createIps(2, 10)), "devhost", nodeFlavors.getFlavorOrThrow("devhost"), NodeType.devhost).build();
-
- var cfg = Node.reserve(Set.of("::2"), "cfg", "devhost", resources0, NodeType.config).build();
-
- var nodes = new ArrayList<>(List.of(cfg));
- var capacity = new HostCapacity(new LockedNodeList(nodes, () -> {}), hostResourcesCalculator);
- assertTrue(capacity.hasCapacity(devHost, resources0));
-
- var container1 = Node.reserve(Set.of("::3"), "container1", "devhost", resources0, NodeType.tenant).build();
- nodes = new ArrayList<>(List.of(cfg, container1));
- capacity = new HostCapacity(new LockedNodeList(nodes, () -> {}), hostResourcesCalculator);
- assertFalse(capacity.hasCapacity(devHost, resources0));
-
- }
-
- @Test
public void verifyCapacityFromAddresses() {
Node nodeA = Node.reserve(Set.of("::2"), "nodeA", "host1", resources0, NodeType.tenant).build();
Node nodeB = Node.reserve(Set.of("::3"), "nodeB", "host1", resources0, NodeType.tenant).build();
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java
index 95f25612dd7..c9b384b95a6 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java
@@ -871,19 +871,6 @@ public class ProvisioningTest {
}
@Test
- public void devsystem_application_deployment_on_devhost() {
- ProvisioningTester tester = new ProvisioningTester.Builder().zone(new Zone(SystemName.dev, Environment.dev, RegionName.from("no-central"))).build();
-
- tester.makeReadyNodes(4, defaultResources, NodeType.devhost, 1);
- tester.prepareAndActivateInfraApplication(ProvisioningTester.applicationId(), NodeType.devhost);
-
- ApplicationId application = ProvisioningTester.applicationId();
- SystemState state = prepare(application, 2, 2, 3, 3, defaultResources, tester);
- assertEquals(4, state.allHosts.size());
- tester.activate(application, state.allHosts);
- }
-
- @Test
public void allocates_reserved_nodes_for_type_spec_deployment() {
ProvisioningTester tester = new ProvisioningTester.Builder().build();
Function<InfraApplication, Collection<HostSpec>> prepareAndActivate = app -> tester.activate(app.getApplicationId(),
diff --git a/orchestrator/src/test/java/com/yahoo/vespa/orchestrator/OrchestratorTest.java b/orchestrator/src/test/java/com/yahoo/vespa/orchestrator/OrchestratorTest.java
index 698c7b544b3..a88e6766050 100644
--- a/orchestrator/src/test/java/com/yahoo/vespa/orchestrator/OrchestratorTest.java
+++ b/orchestrator/src/test/java/com/yahoo/vespa/orchestrator/OrchestratorTest.java
@@ -61,7 +61,7 @@ public class OrchestratorTest {
var zone = new Zone(SystemName.cd, Environment.prod, RegionName.from("cd-us-east-1"));
this.superModelManager = new MySuperModelProvider();
var duperModel = new DuperModel();
- this.duperModelManager = new DuperModelManager(true, false, superModelManager, duperModel, flagSource, zone.system());
+ this.duperModelManager = new DuperModelManager(true, false, superModelManager, duperModel);
this.monitorManager = mock(UnionMonitorManager.class);
var metric = mock(Metric.class);
var serviceMonitor = new ServiceMonitorImpl(duperModelManager, monitorManager, metric, timer, zone);
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java
deleted file mode 100644
index e522b736290..00000000000
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java
+++ /dev/null
@@ -1,13 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.service.duper;
-
-import com.yahoo.vespa.applicationmodel.InfrastructureApplication;
-
-/**
- * @author mortent
- */
-public class DevHostApplication extends HostAdminApplication {
- public DevHostApplication() {
- super(InfrastructureApplication.DEV_HOST);
- }
-}
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DuperModelManager.java b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DuperModelManager.java
index 67d54091adc..9215581a2b9 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DuperModelManager.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DuperModelManager.java
@@ -9,8 +9,6 @@ import com.yahoo.config.model.api.SuperModelListener;
import com.yahoo.config.model.api.SuperModelProvider;
import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.HostName;
-import com.yahoo.config.provision.SystemName;
-import com.yahoo.vespa.flags.FlagSource;
import com.yahoo.vespa.service.monitor.CriticalRegion;
import com.yahoo.vespa.service.monitor.DuperModelInfraApi;
import com.yahoo.vespa.service.monitor.DuperModelListener;
@@ -45,7 +43,6 @@ public class DuperModelManager implements DuperModelProvider, DuperModelInfraApi
static final ConfigServerApplication configServerApplication = new ConfigServerApplication();
static final ProxyHostApplication proxyHostApplication = new ProxyHostApplication();
static final TenantHostApplication tenantHostApplication = new TenantHostApplication();
- static final DevHostApplication devHostApplication = new DevHostApplication();
private final Map<ApplicationId, InfraApplication> supportedInfraApplications;
@@ -61,23 +58,18 @@ public class DuperModelManager implements DuperModelProvider, DuperModelInfraApi
private boolean infraApplicationsIsComplete = false;
@Inject
- public DuperModelManager(ConfigserverConfig configServerConfig, FlagSource flagSource, SuperModelProvider superModelProvider) {
+ public DuperModelManager(ConfigserverConfig configServerConfig, SuperModelProvider superModelProvider) {
this(configServerConfig.multitenant(),
configServerConfig.serverNodeType() == ConfigserverConfig.ServerNodeType.Enum.controller,
- superModelProvider, new DuperModel(), flagSource, SystemName.from(configServerConfig.system()));
+ superModelProvider, new DuperModel());
}
/** Non-private for testing */
public DuperModelManager(boolean multitenant, boolean isController, SuperModelProvider superModelProvider,
- DuperModel duperModel, FlagSource flagSource, SystemName system) {
+ DuperModel duperModel) {
this.duperModel = duperModel;
- if (system == SystemName.dev) {
- // TODO (mortent): Support controllerApplication in dev system
- supportedInfraApplications =
- Stream.of(devHostApplication, configServerApplication)
- .collect(Collectors.toUnmodifiableMap(InfraApplication::getApplicationId, Function.identity()));
- } else if (multitenant) {
+ if (multitenant) {
supportedInfraApplications =
(isController ?
Stream.of(controllerHostApplication, controllerApplication) :
diff --git a/service-monitor/src/test/java/com/yahoo/vespa/service/duper/DuperModelManagerTest.java b/service-monitor/src/test/java/com/yahoo/vespa/service/duper/DuperModelManagerTest.java
index 8b0cc621358..a3af44ec911 100644
--- a/service-monitor/src/test/java/com/yahoo/vespa/service/duper/DuperModelManagerTest.java
+++ b/service-monitor/src/test/java/com/yahoo/vespa/service/duper/DuperModelManagerTest.java
@@ -33,13 +33,12 @@ public class DuperModelManagerTest {
private final SuperModelProvider superModelProvider = mock(SuperModelProvider.class);
private final SuperModel superModel = mock(SuperModel.class);
private final DuperModel duperModel = mock(DuperModel.class);
- private final InMemoryFlagSource flagSource = new InMemoryFlagSource();
private DuperModelManager manager;
private SuperModelListener superModelListener;
private void makeManager(boolean isController) {
- manager = new DuperModelManager(true, isController, superModelProvider, duperModel, flagSource, SystemName.cd);
+ manager = new DuperModelManager(true, isController, superModelProvider, duperModel);
when(superModelProvider.getSuperModel()).thenReturn(superModel);
verify(duperModel, times(0)).add(any());