Add Elasticsearch index prefix configuration (#891)

* Add Elasticsearch configuration section to application.yaml

* Add configuration for reindexing resources upon search parameter change

* Add Elasticsearch client configuration for testing

* Update logback dependencies because of a security issue and enable resource filtering in pom.xml

* Add application name and tester configuration to application.yaml. Refactor hibernate properties

* Add custom Elasticsearch configuration to create ElasticsearchClient bean

* Add index prefix configuration for Elasticsearch indices

* Fix Elasticsearch URI format in test initialization

* Refactor ElasticsearchConfig for improved readability and code style consistency (spotless:apply)

* Refactor ElasticsearchConfig for improved readability and code style consistency (spotless:apply)

* Update index prefix in application.yaml for Elasticsearch configuration

* Enhance index prefix validation and add sanitization method for Elasticsearch index names

* Merged with master in upstream

* Refactor ElasticsearchBootSvcImpl and ElasticsearchConfig for improved readability (mvn spotless)

* Comment out custom_content_path in application.yaml for clarity

* - Refactor application.yaml for improved structure and readability;
- Add PostgresLucenePatientIT integration test; and
- Update testcontainers dependencies to avoid compatibility issues with newer Docker APIs.

* Refactor PostgresLucenePatientIT to use external configuration file for test properties

* Add integration tests for PostgreSQL and Elasticsearch with dynamic configuration

* Increase socket timeout in CdsHooksServletIT for improved stability during tests

* Remove deprecated tester configuration from application.yaml
This commit is contained in:
darth.cav
2026-01-20 15:32:24 +01:00
committed by GitHub
parent bf7f6a3b6a
commit b81e2abe81
12 changed files with 476 additions and 19 deletions

33
pom.xml
View File

@@ -204,13 +204,16 @@
<!-- HAPI-FHIR uses Logback for logging support. The logback library is included automatically by Maven as a part of the hapi-fhir-base dependency, but you also need to include a logging library. Logback
is used here, but log4j would also be fine. -->
<!-- Fixes CVE-2025-11226 -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.5.19</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.5.19</version>
</dependency>
<!-- Needed for JEE/Servlet support -->
@@ -308,16 +311,25 @@
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
<version>2.0.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>elasticsearch</artifactId>
<version>1.21.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>postgresql</artifactId>
<version>1.21.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>junit-jupiter</artifactId>
<version>1.21.4</version>
<scope>test</scope>
</dependency>
@@ -443,6 +455,14 @@
<build>
<!-- Enabling resource filtering -->
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<pluginManagement>
<plugins>
<plugin>
@@ -485,6 +505,19 @@
</executions>
</plugin>
<!-- Resources plugin: sets custom delimiter '@' for placeholder substitutions -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.3.1</version>
<configuration>
<delimiters>
<delimiter>@</delimiter>
</delimiters>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
<!-- Tell Maven which Java source version you want to use -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>