aboutsummaryrefslogtreecommitdiffstats
path: root/configserver/src/test/java/com/yahoo
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2018-05-22 12:21:28 +0200
committerMartin Polden <mpolden@mpolden.no>2018-05-22 12:21:28 +0200
commit5d4c84e00f512ed2f096c57edd761451310fc54a (patch)
tree32dd4b57b91eac9a73fd2c08b55c3662f4f0fa63 /configserver/src/test/java/com/yahoo
parent00f4225c4f1943d6b7ba5d5fb4c699a2425b7f83 (diff)
Stop upgrading hosted-vespa applications in manually deployed environments
Diffstat (limited to 'configserver/src/test/java/com/yahoo')
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java20
1 files changed, 20 insertions, 0 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 17cbe41fde5..058e39eea9b 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
@@ -1,9 +1,12 @@
// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.config.server;
+import com.yahoo.component.Version;
+import com.yahoo.component.Vtag;
import com.yahoo.config.model.application.provider.FilesApplicationPackage;
import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.ApplicationName;
+import com.yahoo.config.provision.Environment;
import com.yahoo.config.provision.InstanceName;
import com.yahoo.config.provision.Provisioner;
import com.yahoo.config.provision.TenantName;
@@ -90,6 +93,23 @@ public class ApplicationRepositoryTest {
assertEquals(tenantName, applicationRepository.removeUnusedTenants().iterator().next());
}
+ @Test
+ public void decideVersion() {
+ ApplicationId regularApp = ApplicationId.from("tenant1", "application1", "default");
+ ApplicationId systemApp = ApplicationId.from("hosted-vespa", "routing", "default");
+ Version targetVersion = Version.fromString("5.0");
+
+ // Always use target for system application
+ assertEquals(targetVersion, ApplicationRepository.decideVersion(systemApp, Environment.prod, targetVersion));
+ assertEquals(targetVersion, ApplicationRepository.decideVersion(systemApp, Environment.dev, targetVersion));
+ assertEquals(targetVersion, ApplicationRepository.decideVersion(systemApp, Environment.perf, targetVersion));
+
+ // Target for regular application depends on environment
+ assertEquals(targetVersion, ApplicationRepository.decideVersion(regularApp, Environment.prod, targetVersion));
+ assertEquals(Vtag.currentVersion, ApplicationRepository.decideVersion(regularApp, Environment.dev, targetVersion));
+ assertEquals(Vtag.currentVersion, ApplicationRepository.decideVersion(regularApp, Environment.perf, targetVersion));
+ }
+
private PrepareResult prepareAndActivateApp(File application) throws IOException {
FilesApplicationPackage appDir = FilesApplicationPackage.fromFile(application);
long sessionId = applicationRepository.createSession(applicationId(), timeoutBudget, appDir.getAppDir());