aboutsummaryrefslogtreecommitdiffstats
path: root/configserver/src/test/java/com/yahoo
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2021-01-20 13:55:51 +0100
committerHarald Musum <musum@verizonmedia.com>2021-01-20 13:55:51 +0100
commit34def165401f453ef09f0b4512bde09c61fa8a21 (patch)
treed8eb76058fc92588479f4d20d04bbaea42d029f7 /configserver/src/test/java/com/yahoo
parenta0d7822978d83bebb173887da4bf30319f37f216 (diff)
Move provisioner out of GlobalComponentRegistry
Diffstat (limited to 'configserver/src/test/java/com/yahoo')
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java3
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java16
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java13
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationHandlerTest.java4
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java9
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/maintenance/MaintainerTester.java7
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java2
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRepositoryTest.java5
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TestTenantRepository.java17
9 files changed, 40 insertions, 36 deletions
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java
index a651f947136..9665e0095e9 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java
@@ -55,14 +55,12 @@ public class InjectedGlobalComponentRegistryTest {
new FileServer(temporaryFolder.newFolder("filereferences")),
new NoopRpcAuthorizer(), new RpcRequestHandlerProvider());
defRepo = new StaticConfigDefinitionRepo();
- HostProvisionerProvider hostProvisionerProvider = HostProvisionerProvider.withProvisioner(new MockProvisioner());
zone = Zone.defaultZone();
globalComponentRegistry =
new InjectedGlobalComponentRegistry(modelFactoryRegistry,
rpcServer,
configserverConfig,
defRepo,
- hostProvisionerProvider,
zone,
new ConfigServerDB(configserverConfig));
}
@@ -75,7 +73,6 @@ public class InjectedGlobalComponentRegistryTest {
assertThat(globalComponentRegistry.getTenantListener().hashCode(), is(rpcServer.hashCode()));
assertThat(globalComponentRegistry.getStaticConfigDefinitionRepo(), is(defRepo));
assertThat(globalComponentRegistry.getZone(), is(zone));
- assertTrue(globalComponentRegistry.getHostProvisioner().isPresent());
}
}
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java b/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java
index c2571fbf224..24f59ee8675 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java
@@ -4,7 +4,6 @@ package com.yahoo.vespa.config.server;
import com.yahoo.cloud.config.ConfigserverConfig;
import com.yahoo.config.model.NullConfigModelRegistry;
import com.yahoo.config.model.api.ConfigDefinitionRepo;
-import com.yahoo.config.provision.Provisioner;
import com.yahoo.config.provision.Zone;
import com.yahoo.vespa.config.server.application.TenantApplicationsTest;
import com.yahoo.vespa.config.server.modelfactory.ModelFactoryRegistry;
@@ -15,7 +14,6 @@ import com.yahoo.vespa.model.VespaModelFactory;
import java.nio.file.Files;
import java.time.Clock;
import java.util.Collections;
-import java.util.Optional;
import static com.yahoo.yolean.Exceptions.uncheck;
@@ -29,14 +27,12 @@ public class TestComponentRegistry implements GlobalComponentRegistry {
private final ReloadListener reloadListener;
private final TenantListener tenantListener;
private final ModelFactoryRegistry modelFactoryRegistry;
- private final Optional<Provisioner> hostProvisioner;
private final Zone zone;
private final Clock clock;
private final ConfigServerDB configServerDB;
private TestComponentRegistry(ModelFactoryRegistry modelFactoryRegistry,
ConfigserverConfig configserverConfig,
- Optional<Provisioner> hostProvisioner,
ConfigDefinitionRepo defRepo,
ReloadListener reloadListener,
TenantListener tenantListener,
@@ -47,7 +43,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry {
this.tenantListener = tenantListener;
this.defRepo = defRepo;
this.modelFactoryRegistry = modelFactoryRegistry;
- this.hostProvisioner = hostProvisioner;
this.zone = zone;
this.clock = clock;
this.configServerDB = new ConfigServerDB(configserverConfig);
@@ -63,7 +58,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry {
private ReloadListener reloadListener = new TenantApplicationsTest.MockReloadListener();
private final MockTenantListener tenantListener = new MockTenantListener();
private ModelFactoryRegistry modelFactoryRegistry = new ModelFactoryRegistry(Collections.singletonList(new VespaModelFactory(new NullConfigModelRegistry())));
- private Optional<Provisioner> hostProvisioner = Optional.empty();
private Zone zone = Zone.defaultZone();
private Clock clock = Clock.systemUTC();
@@ -77,11 +71,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry {
return this;
}
- public Builder provisioner(Provisioner provisioner) {
- this.hostProvisioner = Optional.ofNullable(provisioner);
- return this;
- }
-
public Builder zone(Zone zone) {
this.zone = zone;
return this;
@@ -105,7 +94,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry {
public TestComponentRegistry build() {
return new TestComponentRegistry(modelFactoryRegistry,
configserverConfig,
- hostProvisioner,
defRepo,
reloadListener,
tenantListener,
@@ -125,10 +113,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry {
@Override
public ModelFactoryRegistry getModelFactoryRegistry() { return modelFactoryRegistry; }
@Override
- public Optional<Provisioner> getHostProvisioner() {
- return hostProvisioner;
- }
- @Override
public Zone getZone() {
return zone;
}
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java
index 9e21bcc315d..eb8f633f4ba 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java
@@ -30,6 +30,7 @@ import com.yahoo.vespa.config.server.filedistribution.MockFileDistributionFactor
import com.yahoo.vespa.config.server.http.v2.PrepareResult;
import com.yahoo.vespa.config.server.modelfactory.ModelFactoryRegistry;
import com.yahoo.vespa.config.server.monitoring.Metrics;
+import com.yahoo.vespa.config.server.provision.HostProvisionerProvider;
import com.yahoo.vespa.config.server.session.PrepareParams;
import com.yahoo.vespa.config.server.session.Session;
import com.yahoo.vespa.config.server.tenant.Tenant;
@@ -287,14 +288,16 @@ public class DeployTester {
.configServerConfig(configserverConfig)
.modelFactoryRegistry(new ModelFactoryRegistry(modelFactories))
.zone(zone);
- if (configserverConfig.hostedVespa()) testComponentRegistryBuilder.provisioner(provisioner);
- TenantRepository tenantRepository = new TestTenantRepository.Builder()
- .withComponentRegistry(testComponentRegistryBuilder.build())
+ TestTenantRepository.Builder builder = new TestTenantRepository.Builder()
+ .withComponentRegistry(testComponentRegistryBuilder.build())
.withCurator(curator)
.withMetrics(Optional.ofNullable(metrics).orElse(Metrics.createTestMetrics()))
- .withFileDistributionFactory(new MockFileDistributionFactory(configserverConfig))
- .build();
+ .withFileDistributionFactory(new MockFileDistributionFactory(configserverConfig));
+
+ if (configserverConfig.hostedVespa()) builder.withHostProvisionerProvider(HostProvisionerProvider.withProvisioner(provisioner, true));
+
+ TenantRepository tenantRepository = builder.build();
tenantRepository.addTenant(tenantName);
ApplicationRepository applicationRepository = new ApplicationRepository.Builder()
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationHandlerTest.java
index 05b09fb4204..0e0fd5babd5 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationHandlerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationHandlerTest.java
@@ -110,17 +110,17 @@ public class ApplicationHandlerTest {
.fileReferencesDir(temporaryFolder.newFolder().getAbsolutePath())
.build();
TestComponentRegistry componentRegistry = new TestComponentRegistry.Builder()
- .provisioner(provisioner)
.modelFactoryRegistry(new ModelFactoryRegistry(modelFactories))
.configServerConfig(configserverConfig)
.clock(clock)
.build();
+ provisioner = new MockProvisioner();
tenantRepository = new TestTenantRepository.Builder()
.withComponentRegistry(componentRegistry)
.withFileDistributionFactory(new MockFileDistributionFactory(configserverConfig))
+ .withHostProvisionerProvider(HostProvisionerProvider.withProvisioner(provisioner, false))
.build();
tenantRepository.addTenant(mytenantName);
- provisioner = new MockProvisioner();
orchestrator = new OrchestratorMock();
applicationRepository = new ApplicationRepository.Builder()
.withTenantRepository(tenantRepository)
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java
index 80ff70120c1..d32734cd571 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/HttpGetConfigHandlerTest.java
@@ -17,6 +17,7 @@ import com.yahoo.vespa.config.server.http.HandlerTest;
import com.yahoo.vespa.config.server.http.HttpConfigRequest;
import com.yahoo.vespa.config.server.http.HttpErrorResponse;
import com.yahoo.vespa.config.server.http.SessionHandlerTest;
+import com.yahoo.vespa.config.server.provision.HostProvisionerProvider;
import com.yahoo.vespa.config.server.session.PrepareParams;
import com.yahoo.vespa.config.server.tenant.TenantRepository;
import com.yahoo.vespa.config.server.tenant.TestTenantRepository;
@@ -67,11 +68,15 @@ public class HttpGetConfigHandlerTest {
.configDefinitionRepo(new TestConfigDefinitionRepo())
.configServerConfig(configserverConfig)
.build();
- TenantRepository tenantRepository = new TestTenantRepository.Builder().withComponentRegistry(componentRegistry).build();
+ MockProvisioner provisioner = new MockProvisioner();
+ TenantRepository tenantRepository = new TestTenantRepository.Builder()
+ .withComponentRegistry(componentRegistry)
+ .withHostProvisionerProvider(HostProvisionerProvider.withProvisioner(provisioner, false))
+ .build();
tenantRepository.addTenant(tenant);
ApplicationRepository applicationRepository = new ApplicationRepository.Builder()
.withTenantRepository(tenantRepository)
- .withProvisioner(new MockProvisioner())
+ .withProvisioner(provisioner)
.withOrchestrator(new OrchestratorMock())
.withConfigserverConfig(configserverConfig)
.build();
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/maintenance/MaintainerTester.java b/configserver/src/test/java/com/yahoo/vespa/config/server/maintenance/MaintainerTester.java
index 2803747bb59..3e9cbc042bd 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/maintenance/MaintainerTester.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/maintenance/MaintainerTester.java
@@ -12,6 +12,7 @@ import com.yahoo.vespa.config.server.TestComponentRegistry;
import com.yahoo.vespa.config.server.application.OrchestratorMock;
import com.yahoo.vespa.config.server.deploy.DeployTester;
import com.yahoo.vespa.config.server.modelfactory.ModelFactoryRegistry;
+import com.yahoo.vespa.config.server.provision.HostProvisionerProvider;
import com.yahoo.vespa.config.server.session.PrepareParams;
import com.yahoo.vespa.config.server.tenant.TenantRepository;
import com.yahoo.vespa.config.server.tenant.TestTenantRepository;
@@ -43,10 +44,12 @@ class MaintainerTester {
GlobalComponentRegistry componentRegistry = new TestComponentRegistry.Builder()
.clock(clock)
.configServerConfig(configserverConfig)
- .provisioner(provisioner)
.modelFactoryRegistry(new ModelFactoryRegistry(List.of(new DeployTester.CountingModelFactory(clock))))
.build();
- tenantRepository = new TestTenantRepository.Builder().withComponentRegistry(componentRegistry).build();
+ tenantRepository = new TestTenantRepository.Builder()
+ .withComponentRegistry(componentRegistry)
+ .withHostProvisionerProvider(HostProvisionerProvider.withProvisioner(provisioner, true))
+ .build();
applicationRepository = new ApplicationRepository.Builder()
.withTenantRepository(tenantRepository)
.withProvisioner(provisioner)
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java
index 3c44d304de5..c719efd7645 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java
@@ -347,7 +347,7 @@ public class SessionPreparerTest {
@Test(expected = LoadBalancerServiceException.class)
public void require_that_conflict_is_returned_when_creating_load_balancer_fails() throws IOException {
- preparer = createPreparer(HostProvisionerProvider.withProvisioner(new MockProvisioner().transientFailureOnPrepare()));
+ preparer = createPreparer(HostProvisionerProvider.withProvisioner(new MockProvisioner().transientFailureOnPrepare(), true));
var params = new PrepareParams.Builder().applicationId(applicationId("test")).build();
prepare(new File("src/test/resources/deploy/hosted-app"), params);
}
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRepositoryTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRepositoryTest.java
index ab6b50dce2b..c843b5f6119 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRepositoryTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRepositoryTest.java
@@ -15,6 +15,7 @@ import com.yahoo.config.provision.SystemName;
import com.yahoo.config.provision.TenantName;
import com.yahoo.config.provision.Zone;
import com.yahoo.vespa.config.server.GlobalComponentRegistry;
+import com.yahoo.vespa.config.server.MockProvisioner;
import com.yahoo.vespa.config.server.MockSecretStore;
import com.yahoo.vespa.config.server.ServerCache;
import com.yahoo.vespa.config.server.TestComponentRegistry;
@@ -26,6 +27,7 @@ import com.yahoo.vespa.config.server.filedistribution.FileDistributionFactory;
import com.yahoo.vespa.config.server.host.HostRegistry;
import com.yahoo.vespa.config.server.monitoring.MetricUpdater;
import com.yahoo.vespa.config.server.monitoring.Metrics;
+import com.yahoo.vespa.config.server.provision.HostProvisionerProvider;
import com.yahoo.vespa.curator.Curator;
import com.yahoo.vespa.curator.mock.MockCurator;
import com.yahoo.vespa.flags.InMemoryFlagSource;
@@ -215,7 +217,8 @@ public class TenantRepositoryTest {
new FileDistributionFactory(new ConfigserverConfig.Builder().build()),
new InMemoryFlagSource(),
new InThreadExecutorService(),
- new MockSecretStore());
+ new MockSecretStore(),
+ HostProvisionerProvider.withProvisioner(new MockProvisioner(), false));
}
@Override
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TestTenantRepository.java b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TestTenantRepository.java
index 0faae9762fa..b4922e1f163 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TestTenantRepository.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TestTenantRepository.java
@@ -8,6 +8,7 @@ import com.yahoo.vespa.config.server.MockSecretStore;
import com.yahoo.vespa.config.server.filedistribution.FileDistributionFactory;
import com.yahoo.vespa.config.server.host.HostRegistry;
import com.yahoo.vespa.config.server.monitoring.Metrics;
+import com.yahoo.vespa.config.server.provision.HostProvisionerProvider;
import com.yahoo.vespa.curator.Curator;
import com.yahoo.vespa.curator.mock.MockCurator;
import com.yahoo.vespa.flags.FlagSource;
@@ -24,7 +25,8 @@ public class TestTenantRepository extends TenantRepository {
Curator curator,
Metrics metrics,
FileDistributionFactory fileDistributionFactory,
- FlagSource flagSource) {
+ FlagSource flagSource,
+ HostProvisionerProvider hostProvisionerProvider) {
super(componentRegistry,
hostRegistry,
curator,
@@ -33,7 +35,8 @@ public class TestTenantRepository extends TenantRepository {
fileDistributionFactory,
flagSource,
new InThreadExecutorService(),
- new MockSecretStore());
+ new MockSecretStore(),
+ hostProvisionerProvider);
}
public static class Builder {
@@ -44,7 +47,7 @@ public class TestTenantRepository extends TenantRepository {
Metrics metrics = Metrics.createTestMetrics();
FileDistributionFactory fileDistributionFactory = null;
FlagSource flagSource = new InMemoryFlagSource();
-
+ HostProvisionerProvider hostProvisionerProvider = HostProvisionerProvider.empty();
public Builder withFlagSource(FlagSource flagSource) {
this.flagSource = flagSource;
@@ -76,6 +79,11 @@ public class TestTenantRepository extends TenantRepository {
return this;
}
+ public Builder withHostProvisionerProvider(HostProvisionerProvider hostProvisionerProvider) {
+ this.hostProvisionerProvider = hostProvisionerProvider;
+ return this;
+ }
+
public TenantRepository build() {
if (fileDistributionFactory == null)
fileDistributionFactory = new FileDistributionFactory(componentRegistry.getConfigserverConfig());
@@ -84,7 +92,8 @@ public class TestTenantRepository extends TenantRepository {
curator,
metrics,
fileDistributionFactory,
- flagSource);
+ flagSource,
+ hostProvisionerProvider);
}
}