quarkusio / quarkus

Quarkus: Supersonic Subatomic Java.
https://quarkus.io
Apache License 2.0
13.49k stars 2.59k forks source link

Move Elasticsearch dev service to its own Maven module #25486

Open yrodiere opened 2 years ago

yrodiere commented 2 years ago

Description

Dev services for databases all have their own module under extensions/devservices. Elasticsearch propbably should, as well.

Implementation ideas

No response

quarkus-bot[bot] commented 2 years ago

/cc @gsmet, @loicmathieu, @quarkusio/devtools

yrodiere commented 2 years ago

While we're at it, we could also be more consistent with dev services for databases when it comes to the default image.

Elasticsearch dev services use a version hardcoded in their configuration class:

https://github.com/quarkusio/quarkus/blob/31c2513099eaa20bcf7f21ad54e093c47cb5b6ca/extensions/elasticsearch-rest-client-common/deployment/src/main/java/io/quarkus/elasticsearch/restclient/common/deployment/ElasticsearchDevServicesBuildTimeConfig.java#L32

This is odds with the more sophisticated solutions we have for relational datasources, which relies on a properties file using interpolation to inject Maven properties:

https://github.com/quarkusio/quarkus/blob/36f8e56ea9220833a8a35895fdd7ad02eb016a0f/extensions/devservices/postgresql/src/main/java/io/quarkus/devservices/postgresql/deployment/PostgresqlDevServicesProcessor.java#L72

https://github.com/quarkusio/quarkus/blob/b7fad49f8338fdeffff1fbe643dd2460b4e888a1/extensions/devservices/postgresql/src/main/resources/postgresql-devservice.properties#L1