aboutsummaryrefslogtreecommitdiffstats
path: root/configserver/src/test/java/com
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-10-13 14:30:07 +0200
committerGitHub <noreply@github.com>2022-10-13 14:30:07 +0200
commit918adc0fa08d999a151a5d07a83d99f54567c1bd (patch)
tree1d51aacee160da1312763b9ff30b91b67ef002ab /configserver/src/test/java/com
parent7969913ee302ec4a19c38c529b99ce12edddb5b7 (diff)
parent11fb09016d44de8514019d29908dfb7d4c623840 (diff)
Merge pull request #24406 from vespa-engine/bratseth/instance-tags
Add instance tags [run-systemtest]
Diffstat (limited to 'configserver/src/test/java/com')
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java3
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClientTest.java3
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java2
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java9
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/session/PrepareParamsTest.java15
5 files changed, 27 insertions, 5 deletions
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java
index 99487230c5d..b185bb5915d 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java
@@ -17,6 +17,7 @@ import com.yahoo.config.provision.HostFilter;
import com.yahoo.config.provision.HostSpec;
import com.yahoo.config.provision.InstanceName;
import com.yahoo.config.provision.NetworkPorts;
+import com.yahoo.config.provision.Tags;
import com.yahoo.config.provision.TenantName;
import com.yahoo.config.provision.exception.ActivationConflictException;
import com.yahoo.container.jdisc.HttpResponse;
@@ -847,7 +848,7 @@ public class ApplicationRepositoryTest {
}
private long createSession(ApplicationId applicationId, TimeoutBudget timeoutBudget, File app) {
- return applicationRepository.createSession(applicationId, timeoutBudget, app, new BaseDeployLogger());
+ return applicationRepository.createSession(applicationId, Tags.empty(), timeoutBudget, app, new BaseDeployLogger());
}
private long createSessionFromExisting(ApplicationId applicationId, TimeoutBudget timeoutBudget) {
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClientTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClientTest.java
index fd6440a9632..653753c97e7 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClientTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/ZooKeeperClientTest.java
@@ -13,6 +13,7 @@ import com.yahoo.config.model.application.provider.MockFileRegistry;
import com.yahoo.config.provision.AllocatedHosts;
import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.HostSpec;
+import com.yahoo.config.provision.Tags;
import com.yahoo.path.Path;
import com.yahoo.text.Utf8;
import com.yahoo.vespa.config.server.zookeeper.ZKApplicationPackage;
@@ -59,6 +60,7 @@ public class ZooKeeperClientTest {
ApplicationPackage app = FilesApplicationPackage.fromFileWithDeployData(new File("src/test/apps/zkfeed"),
new DeployData("/bar/baz",
ApplicationId.from("default", "appName", "default"),
+ Tags.fromString("tag1 tag2"),
1345L,
true,
3L,
@@ -121,6 +123,7 @@ public class ZooKeeperClientTest {
assertTrue(metaData.getChecksum().length() > 0);
assertTrue(metaData.isInternalRedeploy());
assertEquals("/bar/baz", metaData.getDeployPath());
+ assertEquals(Tags.fromString("tag1 tag2"), metaData.getTags());
assertEquals(1345, metaData.getDeployTimestamp().longValue());
assertEquals(3, metaData.getGeneration().longValue());
assertEquals(2, metaData.getPreviousActiveGeneration());
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java
index 1c71ef0b7fb..816f7e3dcec 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java
@@ -6,6 +6,7 @@ import com.yahoo.component.Version;
import com.yahoo.config.application.api.ApplicationMetaData;
import com.yahoo.config.model.application.provider.BaseDeployLogger;
import com.yahoo.config.provision.ApplicationId;
+import com.yahoo.config.provision.Tags;
import com.yahoo.config.provision.TenantName;
import com.yahoo.config.provision.Zone;
import com.yahoo.container.jdisc.HttpResponse;
@@ -131,6 +132,7 @@ public class SessionActiveHandlerTest {
void invoke() {
long sessionId = applicationRepository.createSession(applicationId(),
+ Tags.empty(),
new TimeoutBudget(clock, Duration.ofSeconds(10)),
testApp,
new BaseDeployLogger());
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java
index 8e39460db71..525a969ed1e 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java
@@ -10,6 +10,7 @@ import com.yahoo.config.provision.ApplicationName;
import com.yahoo.config.provision.DockerImage;
import com.yahoo.config.provision.InstanceName;
import com.yahoo.config.provision.NodeAllocationException;
+import com.yahoo.config.provision.Tags;
import com.yahoo.config.provision.TenantName;
import com.yahoo.container.jdisc.HttpResponse;
import com.yahoo.jdisc.http.HttpRequest;
@@ -187,7 +188,7 @@ public class SessionPrepareHandlerTest extends SessionHandlerTest {
}
@Test
- public void require_that_preparing_with_multiple_tenants_work() throws Exception {
+ public void prepare_with_multiple_tenants() throws Exception {
SessionHandler handler = createHandler();
TenantName defaultTenant = TenantName.from("test2");
@@ -206,7 +207,7 @@ public class SessionPrepareHandlerTest extends SessionHandlerTest {
assertEquals(sessionId, sessionId2); // Want to test when they are equal (but for different tenants)
pathPrefix = "/application/v2/tenant/" + tenant + "/session/" + sessionId2 +
- "/prepared?applicationName=" + applicationName;
+ "/prepared?applicationName=" + applicationName;
response = handler.handle(SessionHandlerTest.createTestRequest(pathPrefix));
assertNotNull(response);
assertEquals(SessionHandlerTest.getRenderedString(response), OK, response.getStatus());
@@ -214,7 +215,7 @@ public class SessionPrepareHandlerTest extends SessionHandlerTest {
ApplicationId applicationId3 = ApplicationId.from(tenant.value(), applicationName, "quux");
long sessionId3 = createSession(applicationId3);
pathPrefix = "/application/v2/tenant/" + tenant + "/session/" + sessionId3 +
- "/prepared?applicationName=" + applicationName + "&instance=quux";
+ "/prepared?applicationName=" + applicationName + "&instance=quux";
response = handler.handle(SessionHandlerTest.createTestRequest(pathPrefix));
assertNotNull(response);
assertEquals(SessionHandlerTest.getRenderedString(response), OK, response.getStatus());
@@ -324,7 +325,7 @@ public class SessionPrepareHandlerTest extends SessionHandlerTest {
}
private long createSession(ApplicationId applicationId) {
- return applicationRepository.createSession(applicationId, timeoutBudget, app, new BaseDeployLogger());
+ return applicationRepository.createSession(applicationId, Tags.empty(), timeoutBudget, app, new BaseDeployLogger());
}
private static class FailingSessionPrepareHandler extends SessionPrepareHandler {
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/session/PrepareParamsTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/session/PrepareParamsTest.java
index e5b550fdc1a..34921db1bb7 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/session/PrepareParamsTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/session/PrepareParamsTest.java
@@ -7,6 +7,7 @@ import com.yahoo.config.model.api.EndpointCertificateMetadata;
import com.yahoo.config.model.api.TenantSecretStore;
import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.CloudAccount;
+import com.yahoo.config.provision.Tags;
import com.yahoo.config.provision.TenantName;
import com.yahoo.container.jdisc.HttpRequest;
@@ -62,6 +63,7 @@ public class PrepareParamsTest {
PrepareParams prepareParams = createParams("http://foo:19071/application/v2/", TenantName.defaultName());
assertEquals(ApplicationId.defaultId(), prepareParams.getApplicationId());
+ assertTrue(prepareParams.tags().isEmpty());
assertFalse(prepareParams.isDryRun());
assertFalse(prepareParams.isVerbose());
assertFalse(prepareParams.ignoreValidationErrors());
@@ -72,6 +74,18 @@ public class PrepareParamsTest {
}
@Test
+ public void testTagsParsing() throws IOException {
+ var prepareParams = createParams(request + "&" + PrepareParams.TAGS_PARAM_NAME + "=tag1%20tag2", TenantName.from("foo"));
+ assertEquals(Tags.fromString("tag1 tag2"), prepareParams.tags());
+
+ // Verify using json object
+ var slime = SlimeUtils.jsonToSlime(json);
+ slime.get().setString(PrepareParams.TAGS_PARAM_NAME, "tag1 tag2");
+ PrepareParams prepareParamsJson = PrepareParams.fromJson(SlimeUtils.toJsonBytes(slime), TenantName.from("foo"), Duration.ofSeconds(60));
+ assertPrepareParamsEqual(prepareParams, prepareParamsJson);
+ }
+
+ @Test
public void testCorrectParsingWithContainerEndpoints() throws IOException {
var endpoints = List.of(new ContainerEndpoint("qrs1", ApplicationClusterEndpoint.Scope.global,
List.of("c1.example.com",
@@ -207,6 +221,7 @@ public class PrepareParamsTest {
assertEquals(urlParams.force(), jsonParams.force());
assertEquals(urlParams.waitForResourcesInPrepare(), jsonParams.waitForResourcesInPrepare());
assertEquals(urlParams.getApplicationId(), jsonParams.getApplicationId());
+ assertEquals(urlParams.tags(), jsonParams.tags());
assertEquals(urlParams.getTimeoutBudget().timeout(), jsonParams.getTimeoutBudget().timeout());
assertEquals(urlParams.vespaVersion(), jsonParams.vespaVersion());
assertEquals(urlParams.containerEndpoints(), jsonParams.containerEndpoints());