diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2022-02-22 16:04:16 +0100 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2022-02-22 16:04:16 +0100 |
commit | 5d606e1287e754b427cca21c6e5565cb78a36ba0 (patch) | |
tree | 50c06b3465312e3ccdc37fbf9b0c43cf1bfd2633 /controller-server/src/main/java/com/yahoo | |
parent | dac253d8882407898cbeb0e57339e18135c8defd (diff) |
Add NO_TESTS status to simplify detecting that no tests are available
Diffstat (limited to 'controller-server/src/main/java/com/yahoo')
-rw-r--r-- | controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java index 532f19eee21..0b96b19128f 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java @@ -153,8 +153,8 @@ public class InternalStepRunner implements StepRunner { case installTester: return installTester(id, logger); case installReal: return installReal(id, logger); case startStagingSetup: return startTests(id, true, logger); - case endStagingSetup: - case endTests: return endTests(id, logger); + case endStagingSetup: return endTests(id, true, logger); + case endTests: return endTests(id, false, logger); case startTests: return startTests(id, false, logger); case copyVespaLogs: return copyVespaLogs(id, logger); case deactivateReal: return deactivateReal(id, logger); @@ -634,7 +634,7 @@ public class InternalStepRunner implements StepRunner { return Optional.of(running); } - private Optional<RunStatus> endTests(RunId id, DualLogger logger) { + private Optional<RunStatus> endTests(RunId id, boolean isSetup, DualLogger logger) { Optional<Deployment> deployment = deployment(id.application(), id.type()); if (deployment.isEmpty()) { logger.log(INFO, "Deployment expired before tests could complete."); @@ -673,6 +673,13 @@ public class InternalStepRunner implements StepRunner { logger.log(INFO, "Tester failed running its tests!"); controller.jobController().updateTestReport(id); return Optional.of(error); + case NO_TESTS: + TesterCloud.Suite suite = TesterCloud.Suite.of(id.type(), isSetup); + logger.log(INFO, "No tests were found in the test package, for test suite '" + suite + "'"); + logger.log(INFO, "The test package must either contain basic HTTP tests under 'tests/<suite-name>/', " + + "or a Java test bundle under 'components/' with at least one test with the annotation " + + "for this suite. See docs.vespa.ai/en/testing.html for details."); + return Optional.of(testFailure); case SUCCESS: logger.log("Tests completed successfully."); controller.jobController().updateTestReport(id); |