diff options
author | Morten Tokle <mortent@verizonmedia.com> | 2019-11-15 12:55:33 +0100 |
---|---|---|
committer | Morten Tokle <mortent@verizonmedia.com> | 2019-11-15 12:55:33 +0100 |
commit | 519e504b3128a6b7caf26fca2df93af13235ed1d (patch) | |
tree | 95134371d78bdf06f996ca38b1c5180c4bc5b8bd /service-monitor | |
parent | 296196dfd5103bd14fcea0f2e6a8663e023c42fc (diff) |
Support infrastructure applications on devhosts
Diffstat (limited to 'service-monitor')
-rw-r--r-- | service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java | 13 | ||||
-rw-r--r-- | service-monitor/src/main/java/com/yahoo/vespa/service/duper/DuperModelManager.java | 14 |
2 files changed, 24 insertions, 3 deletions
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 new file mode 100644 index 00000000000..56f7274b61f --- /dev/null +++ b/service-monitor/src/main/java/com/yahoo/vespa/service/duper/DevHostApplication.java @@ -0,0 +1,13 @@ +// Copyright 2019 Oath Inc. 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.config.provision.NodeType; + +/** + * @author mortent + */ +public class DevHostApplication extends HostAdminApplication { + public DevHostApplication() { + super("dev-host", NodeType.devhost); + } +} 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 2b72a775b24..ada180cb333 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,6 +9,7 @@ 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.DuperModelInfraApi; import com.yahoo.vespa.service.monitor.InfraApplicationApi; @@ -35,6 +36,7 @@ public class DuperModelManager implements DuperModelInfraApi { static final ConfigServerApplication configServerApplication = new ConfigServerApplication(); static final ProxyHostApplication proxyHostApplication = new ProxyHostApplication(); static final TenantHostApplication tenantHostApplication = new TenantHostApplication(); + static final DevHostApplication devHostApplicaton = new DevHostApplication(); private final Map<ApplicationId, InfraApplication> supportedInfraApplications; @@ -48,14 +50,20 @@ public class DuperModelManager implements DuperModelInfraApi { public DuperModelManager(ConfigserverConfig configServerConfig, FlagSource flagSource, SuperModelProvider superModelProvider) { this(configServerConfig.multitenant(), configServerConfig.serverNodeType() == ConfigserverConfig.ServerNodeType.Enum.controller, - superModelProvider, new DuperModel(), flagSource); + superModelProvider, new DuperModel(), flagSource, SystemName.from(configServerConfig.system())); } /** For testing */ - DuperModelManager(boolean multitenant, boolean isController, SuperModelProvider superModelProvider, DuperModel duperModel, FlagSource flagSource) { + DuperModelManager(boolean multitenant, boolean isController, SuperModelProvider superModelProvider, DuperModel duperModel, FlagSource flagSource, SystemName system) { this.duperModel = duperModel; - if (multitenant) { + if (system == SystemName.dev) { + supportedInfraApplications = + (isController ? + Stream.of(devHostApplicaton, controllerApplication) : + Stream.of(devHostApplicaton, configServerApplication) + ).collect(Collectors.toUnmodifiableMap(InfraApplication::getApplicationId, Function.identity())); + } else if (multitenant) { supportedInfraApplications = (isController ? Stream.of(controllerHostApplication, controllerApplication) : |