# Could not running Yaml IT in my own repository plugin project

**URL:** <https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782>\
**Category:** Elasticsearch\
**Created:** [November 28, 2019, 3:28am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782 "2019-11-28T03:28:16Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ethan-Zhang](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ethan-zhang/32/54812_2.png) [@Ethan-Zhang](https://discuss.elastic.co/u/Ethan-Zhang)\
**Post date:** [November 28, 2019, 3:28am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/1 "2019-11-28T03:28:16Z")

</div>

```
org.elasticsearch.repositories.cos.RepositoryCosClientYamlTestSuiteIT > initializationError FAILED
java.lang.NullPointerException
    at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.loadSuites(ESClientYamlSuiteTestCase.java:235)
    at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.createParameters(ESClientYamlSuiteTestCase.java:188)
    at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.createParameters(ESClientYamlSuiteTestCase.java:180)
    at org.elasticsearch.repositories.cos.RepositoryCosClientYamlTestSuiteIT.parameters(RepositoryCosClientYamlTestSuiteIT.java:16)

Suite: Test class org.elasticsearch.repositories.cos.RepositoryCosClientYamlTestSuiteIT
2> java.lang.NullPointerException
    at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.loadSuites(ESClientYamlSuiteTestCase.java:235)
    at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.createParameters(ESClientYamlSuiteTestCase.java:188)
    at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.createParameters(ESClientYamlSuiteTestCase.java:180)
    at org.elasticsearch.repositories.cos.RepositoryCosClientYamlTestSuiteIT.parameters(RepositoryCosClientYamlTestSuiteIT.java:16)

1 test completed, 1 failed

```

I wrote my own YamlTestSuitIT class and could not runing in my own plugin project. As it's showed in the error msg, I guess the reason is that the ES test files `rest-api-spec` was not including in the jar package.

Is there any good ideas for running YamlTestSuiteIT out side the ES project?

---

<div class="post-metadata">

**Author:** ![spinscale](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/spinscale/32/25011_2.png) [@spinscale](https://discuss.elastic.co/u/spinscale)\
**Post date:** [November 28, 2019, 9:09am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/2 "2019-11-28T09:09:18Z")

</div>

can you share the directory structure of your project, especially the `test` directory?

---

<div class="post-metadata">

**Author:** ![Ethan-Zhang](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ethan-zhang/32/54812_2.png) [@Ethan-Zhang](https://discuss.elastic.co/u/Ethan-Zhang)\
**Post date:** [November 28, 2019, 9:24am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/3 "2019-11-28T09:24:49Z")

</div>

![image](https://us1.discourse-cdn.com/elastic/original/3X/4/0/4083fef52f00b812cb67dd0cb5dac8829550809c.png)

```
package org.elasticsearch.repositories.cos;

import com.carrotsearch.randomizedtesting.annotations.Name;
import com.carrotsearch.randomizedtesting.annotations.ParametersFactory;
import org.elasticsearch.test.rest.yaml.ClientYamlTestCandidate;
import org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase;

public class RepositoryCosClientYamlTestSuiteIT extends ESClientYamlSuiteTestCase {

    public RepositoryCosClientYamlTestSuiteIT(@Name("yaml")ClientYamlTestCandidate testCandidate) {
        super(testCandidate);
    }

    @ParametersFactory
    public static Iterable<Object[]> parameters() throws Exception {
        return ESClientYamlSuiteTestCase.createParameters();
    }
}
```

---

<div class="post-metadata">

**Author:** ![spinscale](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/spinscale/32/25011_2.png) [@spinscale](https://discuss.elastic.co/u/spinscale)\
**Post date:** [November 28, 2019, 9:29am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/4 "2019-11-28T09:29:42Z")

</div>

please use something on the command line like `tree` to show this, as I now still don't know how the directory structure looks like, just like intellij is showing it 🙂

I'm especially interested where your `.yml` files are placed exactly.

---

<div class="post-metadata">

**Author:** ![Ethan-Zhang](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ethan-zhang/32/54812_2.png) [@Ethan-Zhang](https://discuss.elastic.co/u/Ethan-Zhang)\
**Post date:** [November 28, 2019, 9:39am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/5 "2019-11-28T09:39:41Z")

</div>

![image](https://us1.discourse-cdn.com/elastic/original/3X/e/3/e3f24f90c8841fedc5f70d9340c1553e5630bab9.png)

---

<div class="post-metadata">

**Author:** ![spinscale](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/spinscale/32/25011_2.png) [@spinscale](https://discuss.elastic.co/u/spinscale)\
**Post date:** [November 28, 2019, 9:42am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/6 "2019-11-28T09:42:00Z")

</div>

the rest-api-spec directory should not contain dots, but have subdirectories like `test/resources/rest-api-spec/test/repository_cos/10_basic.yml`

---

<div class="post-metadata">

**Author:** ![Ethan-Zhang](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ethan-zhang/32/54812_2.png) [@Ethan-Zhang](https://discuss.elastic.co/u/Ethan-Zhang)\
**Post date:** [November 28, 2019, 9:49am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/7 "2019-11-28T09:49:48Z")

</div>

cool, it works. thx Alex:+1:t2:

---

<div class="post-metadata">

**Author:** ![Ethan-Zhang](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ethan-zhang/32/54812_2.png) [@Ethan-Zhang](https://discuss.elastic.co/u/Ethan-Zhang)\
**Post date:** [November 28, 2019, 1:40pm UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/8 "2019-11-28T13:40:34Z")

</div>

Alex, another question 😂

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/6/e/6e990812246fdf95c59729ba5f45a9c724182f93.png)

I wrote my own rest-api-spec above, and I want to replace the ${} from in gradle build

```
  processTestResources {
  Map<String, Object> expansions = [
        'bucket': cosBucket,
        'base_path': cosBasePath,
 ]
 inputs.properties(expansions)
 MavenFilteringHack.filter(it, expansions)

```

}

And How can I use MavenFilteringHack with my own rest-api-spec yaml file？

---

<div class="post-metadata">

**Author:** ![spinscale](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/spinscale/32/25011_2.png) [@spinscale](https://discuss.elastic.co/u/spinscale)\
**Post date:** [November 29, 2019, 8:41am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/9 "2019-11-29T08:41:59Z")

</div>

this is what is done in the s3 repository plugin tests as well. Can you also share the error, maybe someone with more plugin expertise than me will take a look.

---

<div class="post-metadata">

**Author:** ![Ethan-Zhang](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ethan-zhang/32/54812_2.png) [@Ethan-Zhang](https://discuss.elastic.co/u/Ethan-Zhang)\
**Post date:** [November 29, 2019, 10:52am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/10 "2019-11-29T10:52:12Z")

</div>

> [@Ethan-Zhang](#):
>
> And How can I use MavenFilteringHack with my own rest-api-spec yaml file？

[https://discuss.elastic.co/t/how-to-use-mavenfilteringhack-to-replace-var-from-yaml-files/209959](https://discuss.elastic.co/t/how-to-use-mavenfilteringhack-to-replace-var-from-yaml-files/209959)

THX, I create a new topic

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [December 27, 2019, 10:52am UTC](https://discuss.elastic.co/t/could-not-running-yaml-it-in-my-own-repository-plugin-project/209782/11 "2019-12-27T10:52:14Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
