Description
Currently the examples in the Elasticsearch documentation are tested using the functionality described here: https://github.com/elastic/elasticsearch/tree/master/docs#snippet-testing
Tests that take a lot of setup make for very slow gradle checks. For example:
./gradlew :docs:check
BUILD SUCCESSFUL in 18m 8s
That is already slow but if we re-enable code testing for machine learning examples, it will grow even slower. For example, for machine learning anomaly detection, you need to add data, create a data feed, create a job, start the data feed, open the job, then wait for the processing of data before you can get results or stats or anything interesting).
Ideally, long-running tests can be tested asynchronously and not block other PRs (e.g. once per day).
Per @colings86, in the Elasticsearch unit and integration tests there is the concept of "slow" tests that are only run on CI (not on a PR build or local build) and "nightly" test which are run only once a day, though neither of these options are currently available for documentation tests.