mirror of
https://github.com/open-metadata/OpenMetadata
synced 2026-05-24 09:39:11 +00:00
jersey-client and jersey-apache-connector were pinned to 3.1.9 in openmetadata-sdk and openmetadata-integration-tests. The root pom.xml jersey-bom already manages all org.glassfish.jersey.* artifacts at 3.1.11. Removing the explicit pins lets both modules inherit 3.1.11 from the BOM, consistent with the rest of the project.
1024 lines
44 KiB
XML
1024 lines
44 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<parent>
|
|
<artifactId>platform</artifactId>
|
|
<groupId>org.open-metadata</groupId>
|
|
<version>1.12.0-SNAPSHOT</version>
|
|
</parent>
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<artifactId>openmetadata-integration-tests</artifactId>
|
|
<name>OpenMetadata Integration Tests</name>
|
|
<packaging>jar</packaging>
|
|
<properties>
|
|
<maven.surefire.version>3.1.2</maven.surefire.version>
|
|
<maven.failsafe.version>3.1.2</maven.failsafe.version>
|
|
<junit.jupiter.version>${org.junit.jupiter.version}</junit.jupiter.version>
|
|
<junit.platform.version>${org.junit.platform.version}</junit.platform.version>
|
|
<dockerjava.version>3.4.2</dockerjava.version>
|
|
</properties>
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.github.docker-java</groupId>
|
|
<artifactId>docker-java-bom</artifactId>
|
|
<version>${dockerjava.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
<dependencies>
|
|
<!-- Force commons-compress 1.27+ so Apache POI 5.4.1's call to
|
|
ZipArchiveOutputStream#putArchiveEntry(ZipArchiveEntry) resolves.
|
|
The transitive version from Testcontainers is 1.24 which predates that overload. -->
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-compress</artifactId>
|
|
<version>1.27.1</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- SDK client -->
|
|
<dependency>
|
|
<groupId>org.open-metadata</groupId>
|
|
<artifactId>openmetadata-sdk</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<!-- Service (for config types + app class) -->
|
|
<dependency>
|
|
<groupId>org.open-metadata</groupId>
|
|
<artifactId>openmetadata-service</artifactId>
|
|
<version>${project.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- Service test utilities (for RDF tests) -->
|
|
<dependency>
|
|
<groupId>org.open-metadata</groupId>
|
|
<artifactId>openmetadata-service</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>test-jar</type>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- Testcontainers for infra -->
|
|
<dependency>
|
|
<groupId>org.testcontainers</groupId>
|
|
<artifactId>testcontainers</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>mysql</artifactId>
|
|
<version>1.21.4</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.opensearch</groupId>
|
|
<artifactId>opensearch-testcontainers</artifactId>
|
|
<version>2.1.1</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.testcontainers</groupId>
|
|
<artifactId>k3s</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>
|
|
<!-- Kubernetes client for K8s integration tests -->
|
|
<dependency>
|
|
<groupId>io.kubernetes</groupId>
|
|
<artifactId>client-java</artifactId>
|
|
<version>24.0.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.fabric8</groupId>
|
|
<artifactId>kubernetes-client</artifactId>
|
|
<version>6.12.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- OMJob operator model for K8s integration tests -->
|
|
<dependency>
|
|
<groupId>org.open-metadata</groupId>
|
|
<artifactId>openmetadata-k8s-operator</artifactId>
|
|
<version>${project.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- MCP module for MCP integration tests -->
|
|
<dependency>
|
|
<groupId>org.open-metadata</groupId>
|
|
<artifactId>openmetadata-mcp</artifactId>
|
|
<version>${project.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- AssertJ for fluent assertions -->
|
|
<dependency>
|
|
<groupId>org.assertj</groupId>
|
|
<artifactId>assertj-core</artifactId>
|
|
<version>3.27.7</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- Dropwizard testing harness -->
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-testing</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- JUnit 5 -->
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter</artifactId>
|
|
<version>${junit.jupiter.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- JUnit Platform Launcher (for LauncherSessionListener) -->
|
|
<dependency>
|
|
<groupId>org.junit.platform</groupId>
|
|
<artifactId>junit-platform-launcher</artifactId>
|
|
<version>${junit.platform.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- Awaitility for eventual consistency -->
|
|
<dependency>
|
|
<groupId>org.awaitility</groupId>
|
|
<artifactId>awaitility</artifactId>
|
|
<version>4.2.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- JWT signing -->
|
|
<dependency>
|
|
<groupId>com.auth0</groupId>
|
|
<artifactId>java-jwt</artifactId>
|
|
<version>4.4.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!--
|
|
REST client dependencies for org.openmetadata.sdk.test.util.RestClient.
|
|
openmetadata-sdk declares these as <optional>true</optional> so generic SDK
|
|
consumers do not inherit a heavy JAX-RS stack; integration-tests actually uses
|
|
RestClient, so the optional deps must be re-declared here.
|
|
-->
|
|
<dependency>
|
|
<groupId>jakarta.ws.rs</groupId>
|
|
<artifactId>jakarta.ws.rs-api</artifactId>
|
|
<version>3.1.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.core</groupId>
|
|
<artifactId>jersey-client</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.connectors</groupId>
|
|
<artifactId>jersey-apache-connector</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.httpcomponents</groupId>
|
|
<artifactId>httpclient</artifactId>
|
|
<version>4.5.14</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>jakarta.json</groupId>
|
|
<artifactId>jakarta.json-api</artifactId>
|
|
<version>2.1.3</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.parsson</groupId>
|
|
<artifactId>parsson</artifactId>
|
|
<version>1.1.7</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- RDF support (Apache Jena) for RDF tests. Version unified with
|
|
openmetadata-service via the root pom's <jena.version> property —
|
|
previously this module was on 5.0.0 while openmetadata-service was
|
|
on 4.10.0, which forced the production code to abstract over Jena 4
|
|
vs 5 API drift. -->
|
|
<dependency>
|
|
<groupId>org.apache.jena</groupId>
|
|
<artifactId>jena-core</artifactId>
|
|
<version>${jena.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.jena</groupId>
|
|
<artifactId>jena-arq</artifactId>
|
|
<version>${jena.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.docker-java</groupId>
|
|
<artifactId>docker-java-api</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.docker-java</groupId>
|
|
<artifactId>docker-java-transport-zerodep</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- Source: https://mvnrepository.com/artifact/org.junit-pioneer/junit-pioneer -->
|
|
<dependency>
|
|
<groupId>org.junit-pioneer</groupId>
|
|
<artifactId>junit-pioneer</artifactId>
|
|
<version>2.3.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- Required by DriveFileUploadIT (test fixture generation: PDF + XLSX). -->
|
|
<dependency>
|
|
<groupId>org.apache.pdfbox</groupId>
|
|
<artifactId>pdfbox</artifactId>
|
|
<version>2.0.31</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.poi</groupId>
|
|
<artifactId>poi</artifactId>
|
|
<version>5.4.1</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.poi</groupId>
|
|
<artifactId>poi-ooxml</artifactId>
|
|
<version>5.4.1</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
<profiles>
|
|
<!-- MySQL + Elasticsearch (default) -->
|
|
<profile>
|
|
<id>mysql-elasticsearch</id>
|
|
<activation>
|
|
<activeByDefault>true</activeByDefault>
|
|
</activation>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<!-- Run sequential tests -->
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<databaseType>mysql</databaseType>
|
|
<databaseImage>mysql:8.3.0</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Run parallel tests -->
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<databaseType>mysql</databaseType>
|
|
<databaseImage>mysql:8.3.0</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Verify phase: Fails the build if any tests failed -->
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<!-- PostgreSQL + OpenSearch -->
|
|
<profile>
|
|
<id>postgres-opensearch</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<!-- Run sequential tests -->
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/PatchTableEmbeddingIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>opensearch</searchType>
|
|
<searchImage>opensearchproject/opensearch:3.4.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Run parallel tests -->
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/PatchTableEmbeddingIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>opensearch</searchType>
|
|
<searchImage>opensearchproject/opensearch:3.4.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Verify phase: Fails the build if any tests failed -->
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<!-- PostgreSQL + OpenSearch + Redis cache enabled. Mirror of postgres-opensearch but
|
|
every IT runs against the Redis-fronted code path so we can spot any test that
|
|
depends on always-fresh-from-DB reads. -->
|
|
<profile>
|
|
<id>postgres-os-redis</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/PatchTableEmbeddingIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>opensearch</searchType>
|
|
<searchImage>opensearchproject/opensearch:3.4.0</searchImage>
|
|
<cacheProvider>redis</cacheProvider>
|
|
<redisImage>redis:7-alpine</redisImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/PatchTableEmbeddingIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>opensearch</searchType>
|
|
<searchImage>opensearchproject/opensearch:3.4.0</searchImage>
|
|
<cacheProvider>redis</cacheProvider>
|
|
<redisImage>redis:7-alpine</redisImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<!-- PostgreSQL + Elasticsearch -->
|
|
<profile>
|
|
<id>postgres-elasticsearch</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<!-- Run sequential tests -->
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Run parallel tests -->
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Verify phase: Fails the build if any tests failed -->
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<!-- MySQL + OpenSearch -->
|
|
<profile>
|
|
<id>mysql-opensearch</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<!-- Run sequential tests -->
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/PatchTableEmbeddingIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<databaseType>mysql</databaseType>
|
|
<databaseImage>mysql:8.3.0</databaseImage>
|
|
<searchType>opensearch</searchType>
|
|
<searchImage>opensearchproject/opensearch:3.4.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Run parallel tests -->
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/PatchTableEmbeddingIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<databaseType>mysql</databaseType>
|
|
<databaseImage>mysql:8.3.0</databaseImage>
|
|
<searchType>opensearch</searchType>
|
|
<searchImage>opensearchproject/opensearch:3.4.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Verify phase: Fails the build if any tests failed -->
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<!-- MySQL + Elasticsearch + Redis (Redis cache enabled) -->
|
|
<profile>
|
|
<id>mysql-elasticsearch-redis</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<databaseType>mysql</databaseType>
|
|
<databaseImage>mysql:8.3.0</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
<cacheProvider>redis</cacheProvider>
|
|
<redisImage>redis:7-alpine</redisImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<databaseType>mysql</databaseType>
|
|
<databaseImage>mysql:8.3.0</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
<cacheProvider>redis</cacheProvider>
|
|
<redisImage>redis:7-alpine</redisImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<!-- Full integration test suite with postgres + elasticsearch + redis cache enabled.
|
|
Same shape as mysql-elasticsearch (sequential + parallel) but with cacheProvider=redis
|
|
so every test exercises the cache code paths too — catches stale-data and
|
|
invalidation bugs across the whole codebase, not just cache/* tests. -->
|
|
<profile>
|
|
<id>cache-tests</id>
|
|
<!--
|
|
Full integration test suite with postgres + elasticsearch + redis cache enabled.
|
|
Mirrors the mysql-elasticsearch profile shape (sequential + parallel executions)
|
|
so every test that runs without the cache also runs WITH the cache. Catches
|
|
cache-correctness regressions across the whole codebase, not just the dedicated
|
|
cache/* test classes.
|
|
|
|
Locally, target only cache/* with `-Dit.test='**/cache/*IT'` on top of this
|
|
profile when validating cache layer changes in isolation.
|
|
-->
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<!-- Run sequential tests -->
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/PatchTableEmbeddingIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:16-alpine</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
<cacheProvider>redis</cacheProvider>
|
|
<redisImage>redis:7-alpine</redisImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Run parallel tests -->
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/PatchTableEmbeddingIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:16-alpine</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
<cacheProvider>redis</cacheProvider>
|
|
<redisImage>redis:7-alpine</redisImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Verify phase: Fails the build if any tests failed -->
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<!-- RDF integration tests profile -->
|
|
<profile>
|
|
<id>postgres-rdf-tests</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${maven.failsafe.version}</version>
|
|
<executions>
|
|
<!-- Run sequential tests -->
|
|
<execution>
|
|
<id>sequential-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/TagRecognizerFeedbackIT.java</include>
|
|
<include>**/WorkflowDefinitionResourceIT.java</include>
|
|
<include>**/AppsResourceIT.java</include>
|
|
<include>**/SystemResourceIT.java</include>
|
|
<include>**/VectorEmbeddingIntegrationIT.java</include>
|
|
<include>**/GlossaryOntologyExportIT.java</include>
|
|
</includes>
|
|
<systemPropertyVariables>
|
|
<enableRdf>true</enableRdf>
|
|
<rdfContainerImage>secoresearch/fuseki:5.5.0</rdfContainerImage>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>false</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Run parallel tests -->
|
|
<execution>
|
|
<id>parallel-tests</id>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
</goals>
|
|
<configuration>
|
|
<forkCount>1</forkCount>
|
|
<reuseForks>true</reuseForks>
|
|
<argLine>-Xmx4096m -XX:+UseG1GC</argLine>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/TagRecognizerFeedbackIT.java</exclude>
|
|
<exclude>**/WorkflowDefinitionResourceIT.java</exclude>
|
|
<exclude>**/AppsResourceIT.java</exclude>
|
|
<exclude>**/SystemResourceIT.java</exclude>
|
|
<exclude>**/VectorEmbeddingIntegrationIT.java</exclude>
|
|
<exclude>**/GlossaryOntologyExportIT.java</exclude>
|
|
</excludes>
|
|
<systemPropertyVariables>
|
|
<enableRdf>true</enableRdf>
|
|
<rdfContainerImage>secoresearch/fuseki:5.5.0</rdfContainerImage>
|
|
<databaseType>postgres</databaseType>
|
|
<databaseImage>postgres:15</databaseImage>
|
|
<searchType>elasticsearch</searchType>
|
|
<searchImage>docker.elastic.co/elasticsearch/elasticsearch:9.3.0</searchImage>
|
|
|
|
<junit.jupiter.extensions.autodetection.enabled>true</junit.jupiter.extensions.autodetection.enabled>
|
|
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
|
|
</systemPropertyVariables>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<reportFormat>plain</reportFormat>
|
|
<useFile>true</useFile>
|
|
</configuration>
|
|
</execution>
|
|
<!-- Verify phase: Fails the build if any tests failed -->
|
|
<execution>
|
|
<id>verify</id>
|
|
<goals>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|