There is now a QoS requirement for functional failures. Each operation must succeed 99.99% of the time. A slow response is not a failure in this context.
The narrowing-in criteria for the findMax runs (single-run and multi-run) now causes the process to stop when the difference between the maxPass and minFail is less than a certain percentage of minFail. The parameter for this is called findMaxStopPct, and has a default value of 0.01. This means that the findMax procedures won't try to narrow-in further if the difference in the result would be less than 1%.
The run harness now gives a message when the maximum passing value would exceed maxUsers. It is now possible to override maxUsers for the fixedConfigs so that they can be rerun with a higher value.
The runWeathervane.pl script now can periodically run an external script at a user-defined interval. This script can be used to refresh the kubeconfig credentials. This approach has been tested on GKE.
The runWeathervane.pl script will now map all files references in the kubeconfig file into the runharness container. Some credentials rely on external authority files.
If all appInstances are running on Kubernetes, then the services will be started in parallel.
When a single-run findMax run is unable to find a maximum at any value over minimumUsers, the run-harness now exits cleanly with a proper error message. The findMax load path no longer will try to run at below minimumUsers.
This pull request contains the following changes: