bf2343b7e4
Integration Tests - MySQL + Elasticsearch / Detect Changes (push) Waiting to run
Integration Tests - MySQL + Elasticsearch / integration-tests-mysql-elasticsearch (push) Blocked by required conditions
Integration Tests - PostgreSQL + Elasticsearch + Redis / Detect Changes (push) Waiting to run
Integration Tests - PostgreSQL + Elasticsearch + Redis / integration-tests-postgres-elasticsearch-redis (push) Blocked by required conditions
Integration Tests - PostgreSQL + OpenSearch / Detect Changes (push) Waiting to run
Integration Tests - PostgreSQL + OpenSearch / integration-tests-postgres-opensearch (push) Blocked by required conditions
Java Checkstyle / java-checkstyle (push) Waiting to run
Maven Collate Tests / maven-collate-ci (push) Waiting to run
OpenMetadata Service Unit Tests / Detect Changes (push) Waiting to run
OpenMetadata Service Unit Tests / openmetadata-service-unit-tests (push) Blocked by required conditions
OpenMetadata Service Unit Tests / k8s_operator-unit-tests (push) Blocked by required conditions
OpenMetadata Service Unit Tests / openmetadata-service-unit-tests-status (push) Blocked by required conditions
Publish Package to Maven Central Repository / publish-maven-packages (push) Waiting to run
292 lines
11 KiB
XML
292 lines
11 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">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<parent>
|
|
<groupId>org.open-metadata</groupId>
|
|
<artifactId>platform</artifactId>
|
|
<version>2.0.0-SNAPSHOT</version>
|
|
</parent>
|
|
|
|
<artifactId>openmetadata-sdk</artifactId>
|
|
<name>OpenMetadata SDK</name>
|
|
<description>Official Java SDK for OpenMetadata API - Stripe-style implementation</description>
|
|
|
|
<properties>
|
|
<okhttp.version>4.12.0</okhttp.version>
|
|
<junit.version>${org.junit.jupiter.version}</junit.version>
|
|
<junit-platform.version>${org.junit.platform.version}</junit-platform.version>
|
|
<mockito.version>5.5.0</mockito.version>
|
|
<slf4j.version>2.0.9</slf4j.version>
|
|
<lombok.version>1.18.30</lombok.version>
|
|
<testcontainers.version>1.21.4</testcontainers.version>
|
|
<jwt.version>4.4.0</jwt.version>
|
|
<flyway.version>9.22.3</flyway.version>
|
|
<json.version>20240303</json.version>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<!-- OpenMetadata Generated Models -->
|
|
<dependency>
|
|
<groupId>org.open-metadata</groupId>
|
|
<artifactId>openmetadata-spec</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<!-- HTTP Client -->
|
|
<dependency>
|
|
<groupId>com.squareup.okhttp3</groupId>
|
|
<artifactId>okhttp</artifactId>
|
|
<version>${okhttp.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Logging -->
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
<version>${slf4j.version}</version>
|
|
</dependency>
|
|
|
|
<!-- JSON Patch -->
|
|
<dependency>
|
|
<groupId>com.flipkart.zjsonpatch</groupId>
|
|
<artifactId>zjsonpatch</artifactId>
|
|
<version>0.4.14</version>
|
|
</dependency>
|
|
|
|
<!-- Lombok -->
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Socket.io Client for WebSocket notifications -->
|
|
<dependency>
|
|
<groupId>io.socket</groupId>
|
|
<artifactId>socket.io-client</artifactId>
|
|
<version>2.1.1</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.json</groupId>
|
|
<artifactId>json</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<!-- org.json with security fixes (excluded from socket.io-client) -->
|
|
<dependency>
|
|
<groupId>org.json</groupId>
|
|
<artifactId>json</artifactId>
|
|
<version>${json.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Test-utility-only deps used by org.openmetadata.sdk.test.*. These are marked
|
|
<optional>true</optional> so consumers of the core SDK don't inherit JWT, JAX-RS
|
|
client, Apache HttpClient, jakarta.json, or JUnit transitively. Projects that
|
|
actually use the test utilities must redeclare these on their own classpath. -->
|
|
|
|
<!-- Auth0 JWT - used by org.openmetadata.sdk.test.auth.JwtAuthProvider -->
|
|
<dependency>
|
|
<groupId>com.auth0</groupId>
|
|
<artifactId>java-jwt</artifactId>
|
|
<version>${jwt.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
|
|
<!-- JAX-RS client for org.openmetadata.sdk.test.util.RestClient -->
|
|
<dependency>
|
|
<groupId>jakarta.ws.rs</groupId>
|
|
<artifactId>jakarta.ws.rs-api</artifactId>
|
|
<version>3.1.0</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.core</groupId>
|
|
<artifactId>jersey-client</artifactId>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.connectors</groupId>
|
|
<artifactId>jersey-apache-connector</artifactId>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.httpcomponents</groupId>
|
|
<artifactId>httpclient</artifactId>
|
|
<version>4.5.14</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>jakarta.json</groupId>
|
|
<artifactId>jakarta.json-api</artifactId>
|
|
<version>2.1.3</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.parsson</groupId>
|
|
<artifactId>parsson</artifactId>
|
|
<version>1.1.7</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
|
|
<!-- JUnit 5 — required to compile the org.openmetadata.sdk.test.* classes but not
|
|
needed by consumers that only use the core SDK. -->
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-api</artifactId>
|
|
<version>${junit.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
|
|
<!-- Test Dependencies -->
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-engine</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<version>${mockito.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
|
|
|
|
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<configuration>
|
|
<source>21</source>
|
|
<target>21</target>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.1.2</version>
|
|
<configuration>
|
|
<includes>
|
|
<include>**/*Test.java</include>
|
|
</includes>
|
|
<!-- Enable parallel test execution -->
|
|
<parallel>methods</parallel>
|
|
<threadCount>4</threadCount>
|
|
<perCoreThreadCount>true</perCoreThreadCount>
|
|
<useUnlimitedThreads>false</useUnlimitedThreads>
|
|
<!-- Reuse JVM forks for better performance -->
|
|
<reuseForks>true</reuseForks>
|
|
<forkCount>2</forkCount>
|
|
<!-- System properties for test configuration -->
|
|
<systemPropertyVariables>
|
|
<test.parallel.enabled>true</test.parallel.enabled>
|
|
<test.cleanup.enabled>false</test.cleanup.enabled>
|
|
<test.containers.stop>false</test.containers.stop>
|
|
<testcontainers.reuse.enable>true</testcontainers.reuse.enable>
|
|
</systemPropertyVariables>
|
|
<!-- Skip integration tests by default, run with -DskipITs=false -->
|
|
<skipTests>${skipTests}</skipTests>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<!-- Failsafe plugin for integration tests -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>3.1.2</version>
|
|
<configuration>
|
|
<includes>
|
|
<include>**/*IntegrationTest.java</include>
|
|
<include>**/*IT.java</include>
|
|
</includes>
|
|
<!-- Enable parallel test execution -->
|
|
<parallel>classes</parallel>
|
|
<threadCount>4</threadCount>
|
|
<perCoreThreadCount>true</perCoreThreadCount>
|
|
<!-- System properties -->
|
|
<systemPropertyVariables>
|
|
<test.parallel.enabled>true</test.parallel.enabled>
|
|
<test.database>${test.database}</test.database>
|
|
<test.server.url>${test.server.url}</test.server.url>
|
|
<testcontainers.reuse.enable>true</testcontainers.reuse.enable>
|
|
</systemPropertyVariables>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<!-- Maven Profiles for different test configurations -->
|
|
<profiles>
|
|
<!-- MySQL Profile (default) -->
|
|
<profile>
|
|
<id>mysql</id>
|
|
<activation>
|
|
<activeByDefault>true</activeByDefault>
|
|
</activation>
|
|
<properties>
|
|
<test.database>mysql</test.database>
|
|
</properties>
|
|
</profile>
|
|
|
|
<!-- PostgreSQL Profile -->
|
|
<profile>
|
|
<id>postgresql</id>
|
|
<properties>
|
|
<test.database>postgresql</test.database>
|
|
</properties>
|
|
</profile>
|
|
|
|
<!-- Integration Tests Profile -->
|
|
<profile>
|
|
<id>integration-tests</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<configuration>
|
|
<skipITs>false</skipITs>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
|
|
<!-- Parallel Tests Profile -->
|
|
<profile>
|
|
<id>parallel</id>
|
|
<properties>
|
|
<test.parallel.enabled>true</test.parallel.enabled>
|
|
</properties>
|
|
</profile>
|
|
</profiles>
|
|
|
|
<!-- Maven Central Publishing - handled by central-publishing-maven-plugin in parent POM -->
|
|
</project> |