Ideally, we would be able to run each yaml test with a different cluster setup, but that's currently limited by only supporting a single yaml test suite client. @mark-vieira suggested we may able to support multiple clients that have a method to filter which yaml tests are run. This would also be great for running the same tests under different cluster conditions (single node vs multi node, etc).
test/yaml-rest-runner/src/main/java/org/elasticsearch/test/rest/yaml/ESClientYamlSuiteTestCase.java
}
        }
        if (validationException != null) {
            throw validationException;
        }
        List<Object[]> tests = new ArrayList<>();
        for (ClientYamlTestSuite yamlTestSuite : suites) {
            for (ClientYamlTestSection testSection : yamlTestSuite.getTestSections()) {
                tests.add(new Object[] { new ClientYamlTestCandidate(yamlTestSuite, testSection) });
            }
        }
        
        tests.sort(Comparator.comparing(o -> ((ClientYamlTestCandidate) o[0]).getTestPath()));
        return tests;
    }
    
    
    static Map<String, Set<Path>> loadSuites(String... paths) throws Exception {
        Map<String, Set<Path>> files = new HashMap<>();
        Path[] roots = ClasspathUtils.findFilePaths(ESClientYamlSuiteTestCase.class.getClassLoader(), TESTS_PATH);
        for (Path root : roots) {
            for (String strPath : paths) {
                Path path = root.resolve(strPath);
                if (Files.isDirectory(path)) {
                    Files.walk(path).forEach(file -> {
                        if (file.toString().endsWith(".yml")) {
                            addSuite(root, file, files);
                        } else if (file.toString().endsWith(".yaml")) {
                            throw new IllegalArgumentException("yaml files are no longer supported: " + file);
                        }