I was using this library for integration tests and it worked fine locally, but wouldn't start on Jenkins and no real feedback was provided.
Found out that the cause was that the Jenkins user was root, and Elastic refuses to run as root. Elastic gives an error message about this, but the error message is not displayed by embedded-elasticsearch.
I think this can be a problem for many people, with or without Jenkins, and it would make sense to catch this specific error message from Elastic and print it, rather than wait/retry indefinitely without output as the library currently does.
I think it would be nice to put the info about this problem on "Known problems" readme section due to the fact it is a common problem on CI/CD docker image based era.
I was using this library for integration tests and it worked fine locally, but wouldn't start on Jenkins and no real feedback was provided.
Found out that the cause was that the Jenkins user was root, and Elastic refuses to run as root. Elastic gives an error message about this, but the error message is not displayed by embedded-elasticsearch.
I think this can be a problem for many people, with or without Jenkins, and it would make sense to catch this specific error message from Elastic and print it, rather than wait/retry indefinitely without output as the library currently does.