summaryrefslogtreecommitdiffstats
path: root/tenant-cd
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2020-01-16 15:19:51 +0100
committerJon Marius Venstad <venstad@gmail.com>2020-01-16 15:19:51 +0100
commitbcb8b29b2d6690054f921bb2ebfbefa1fcfec1ec (patch)
treeb7b93ea62f12a281e115e544b5a544232df556ca /tenant-cd
parentd14d26265ef5719264fd9793bee98a90a84f70ce (diff)
Add StagingSetup annotation
Diffstat (limited to 'tenant-cd')
-rw-r--r--tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java2
-rw-r--r--tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java17
-rw-r--r--tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java16
-rw-r--r--tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java26
4 files changed, 10 insertions, 51 deletions
diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java
index a8c8d958cc1..f9dc15df32e 100644
--- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java
+++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java
@@ -16,7 +16,7 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
* Tests which run against a fully operational Vespa deployment to verify its behaviour.
*
- * Examples of integration test types are {@link SystemTest}, {@link StagingTest} and {@link ProductionTest}.
+ * Examples of integration test types are {@link SystemTest}, {@link StagingSetup}, {@link StagingTest}, and {@link ProductionTest}.
*
* @author jonmv
*/
diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java
index a60a8ea0e14..220d0cbd6bb 100644
--- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java
+++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java
@@ -14,13 +14,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
* Tests that verify the health of production deployments of Vespa applications.
*
- * These tests are typically run some time after deployment to a production zone, to ensure
- * the deployment is still healthy and working as expected. When these tests fail, deployment
- * of the tested change is halted until it succeeds, or is superseded by a remedying change.
- *
- * A typical production test is to verify that a set of metrics, measured by the Vespa
- * deployment itself, are within specified parameters, or that some higher-level measure
- * of quality, such as engagement among end users of the application, is as expected.
+ * Test classes annotated with this annotation are run during declared production tests.
+ * See <a href="https://cloud.vespa.ai/automated-deployments.html#production-tests">Vespa cloud documentation</a>.
*
* @author jonmv
*/
@@ -28,10 +23,4 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
@Retention(RUNTIME)
@IntegrationTest
@Tag("production")
-public @interface ProductionTest {
-
- // Want to verify metrics (Vespa).
- // Want to verify external metrics (YAMAS, other).
- // May want to verify search gives expected results.
-
-}
+public @interface ProductionTest { }
diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java
index 93a5780da25..4ecc3ce5722 100644
--- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java
+++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java
@@ -14,15 +14,9 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
* Tests that assert continuity of behaviour for Vespa application deployments, through upgrades.
*
- * These tests are run whenever a change is pushed to a Vespa application, and whenever the Vespa platform
- * is upgraded, and before any deployments to production zones. When these tests fails, the tested change to
- * the Vespa application is not rolled out.
- *
- * A typical upgrade test is to do some operations against a test deployment prior to upgrade, like feed and
- * search for some documents, perhaps recording some metrics from the deployment, and then to upgrade it,
- * repeat the exercise, and compare the results from pre and post upgrade.
- *
- * TODO Split in platform upgrades and application upgrades?
+ * Test classes annotated with this annotation are run in the second phase of automated staging tests,
+ * to verify the upgraded deployment.
+ * See <a href="https://cloud.vespa.ai/automated-deployments.html#staging-tests">Vespa cloud documentation</a>.
*
* @author jonmv
*/
@@ -31,8 +25,4 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
@IntegrationTest
@Tag("staging")
public @interface StagingTest {
-
- // Want to verify documents are not damaged by upgrade.
- // May want to verify metrics during upgrade.
-
}
diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java
index ccaf0765768..4712c1b41ef 100644
--- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java
+++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java
@@ -16,13 +16,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
* Tests that compare the behaviour of a Vespa application deployment against a fixed specification.
*
- * These tests are run whenever a change is pushed to a Vespa application, and whenever the Vespa platform
- * is upgraded, and before any deployments to production zones. When these tests fails, the tested change to
- * the Vespa application is not rolled out.
- *
- * A typical system test is to feed some documents, optionally verifying that the documents have been processed
- * as expected, and then to see that queries give the expected results. Another common use is to verify integration
- * with external services.
+ * Test classes annotated with this annotation are run against a fresh deployment during automated system tests.
+ * See <a href="https://cloud.vespa.ai/automated-deployments.html#system-tests">Vespa cloud documentation</a>.
*
* @author jonmv
*/
@@ -30,19 +25,4 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
@Retention(RUNTIME)
@IntegrationTest
@Tag("system")
-public @interface SystemTest {
-
- // Want to feed some documents.
- // Want to verify document processing and routing is as expected.
- // Want to check recall on those documents.
- // Want to verify queries give expected documents.
- // Want to verify searchers.
- // Want to verify updates.
- // Want to verify deletion.
- // May want to verify reprocessing.
- // Must likely delete documents between tests.
- // Must be able to feed documents, setting route.
- // Must be able to search.
- // Must be able to visit.
-
-}
+public @interface SystemTest { }