455 lines
18 KiB
XML
455 lines
18 KiB
XML
<?xml version="1.0"?>
|
|
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<parent>
|
|
<groupId>org.jboss</groupId>
|
|
<artifactId>jboss-parent</artifactId>
|
|
<version>36</version>
|
|
</parent>
|
|
|
|
<groupId>io.debezium</groupId>
|
|
<artifactId>debezium-build-parent</artifactId>
|
|
<version>1.9.0-SNAPSHOT</version>
|
|
<name>Debezium Build Aggregator</name>
|
|
<description>Debezium is an open source change data capture platform</description>
|
|
<packaging>pom</packaging>
|
|
<url>https://debezium.io</url>
|
|
|
|
<scm>
|
|
<connection>scm:git:git@github.com:debezium/debezium.git</connection>
|
|
<developerConnection>scm:git:git@github.com:debezium/debezium.git</developerConnection>
|
|
<url>https://github.com/debezium/debezium</url>
|
|
<tag>HEAD</tag>
|
|
</scm>
|
|
|
|
<issueManagement>
|
|
<system>jira</system>
|
|
<url>http://issues.jboss.org/browse/DBZ</url>
|
|
</issueManagement>
|
|
|
|
<licenses>
|
|
<license>
|
|
<name>Apache Software License 2.0</name>
|
|
<url>http://www.apache.org/licenses/LICENSE-2.0</url>
|
|
<distribution>repo</distribution>
|
|
</license>
|
|
</licenses>
|
|
<developers>
|
|
<developer>
|
|
<id>rhauch</id>
|
|
<name>Randall Hauch</name>
|
|
<organization>Red Hat</organization>
|
|
<organizationUrl>http://redhat.com</organizationUrl>
|
|
<timezone>-6</timezone>
|
|
</developer>
|
|
<developer>
|
|
<id>gunnarmorling</id>
|
|
<name>Gunnar Morling</name>
|
|
<organization>Red Hat</organization>
|
|
<organizationUrl>http://redhat.com</organizationUrl>
|
|
<timezone>+2</timezone>
|
|
</developer>
|
|
</developers>
|
|
<properties>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
|
|
<!-- Can't use the (generally preferable) release option yet, as the
|
|
Cassandra connector still needs to be built with Java 1.8 which
|
|
isn't aware of this option -->
|
|
<maven.compiler.source>1.8</maven.compiler.source>
|
|
<maven.compiler.target>1.8</maven.compiler.target>
|
|
|
|
<!-- Enforce JDK 11 for building (handled via JBoss parent POM)-->
|
|
<jdk.min.version>11</jdk.min.version>
|
|
|
|
<!-- Maven Plugins -->
|
|
<version.compiler.plugin>3.8.1</version.compiler.plugin>
|
|
<version.resources.plugin>3.1.0</version.resources.plugin>
|
|
<version.dependency.plugin>3.1.1</version.dependency.plugin>
|
|
<version.enforcer.plugin>3.0.0-M2</version.enforcer.plugin>
|
|
|
|
<version.jar.plugin>3.0.2</version.jar.plugin>
|
|
<version.source.plugin>3.1.0</version.source.plugin>
|
|
<version.assembly.plugin>3.1.1</version.assembly.plugin>
|
|
<version.war.plugin>2.5</version.war.plugin>
|
|
<version.google.formatter.plugin>0.4</version.google.formatter.plugin>
|
|
<version.docker.maven.plugin>0.31.0</version.docker.maven.plugin>
|
|
<version.staging.plugin>1.6.8</version.staging.plugin>
|
|
<version.protoc.maven.plugin>3.8.0</version.protoc.maven.plugin>
|
|
<version.javadoc.plugin>3.1.1</version.javadoc.plugin>
|
|
<version.code.formatter>2.16.0</version.code.formatter>
|
|
<version.surefire.plugin>3.0.0-M3</version.surefire.plugin>
|
|
<version.checkstyle.plugin>3.1.1</version.checkstyle.plugin>
|
|
<version.release.plugin>2.5.3</version.release.plugin>
|
|
<version.impsort>1.6.2</version.impsort>
|
|
<version.failsafe.plugin>${version.surefire.plugin}</version.failsafe.plugin>
|
|
<version.checkstyle>8.32</version.checkstyle>
|
|
<version.revapi.plugin>0.11.5</version.revapi.plugin>
|
|
<version.jandex>1.0.8</version.jandex>
|
|
<version.revapi-java.plugin>0.21.0</version.revapi-java.plugin>
|
|
<version.build-helper.plugin>1.9.1</version.build-helper.plugin>
|
|
|
|
<!-- Which Maven Central infra should be used -->
|
|
<release.endpoint>https://s01.oss.sonatype.org/</release.endpoint>
|
|
|
|
<!-- Kafka and it's dependencies MUST reflect what the Kafka version uses -->
|
|
<version.kafka>3.1.0</version.kafka>
|
|
<version.zookeeper>3.6.3</version.zookeeper>
|
|
<version.jackson>2.12.3</version.jackson>
|
|
<version.jackson.databind>2.12.3</version.jackson.databind>
|
|
<version.org.slf4j>1.7.30</version.org.slf4j>
|
|
<version.log4j>1.2.17</version.log4j>
|
|
<version.netty>4.1.68.Final</version.netty>
|
|
|
|
<!-- Scala version used to build Kafka -->
|
|
<version.kafka.scala>2.13</version.kafka.scala>
|
|
|
|
<!-- ANTLR -->
|
|
<!-- Align with Antlr runtime version pulled in via Quarkus -->
|
|
<version.antlr>4.8</version.antlr>
|
|
<version.antlr4test.plugin>1.18</version.antlr4test.plugin>
|
|
|
|
<!-- Quarkus -->
|
|
<!-- Must be aligned with Apicurio version below -->
|
|
<quarkus.version>2.7.1.Final</quarkus.version>
|
|
|
|
<!-- Apicurio -->
|
|
<version.apicurio>2.1.5.Final</version.apicurio>
|
|
|
|
<!-- Database drivers, should align with databases -->
|
|
<version.postgresql.driver>42.3.2</version.postgresql.driver>
|
|
<version.mysql.driver>8.0.28</version.mysql.driver>
|
|
<version.mysql.binlog>0.25.5</version.mysql.binlog>
|
|
<version.mongo.driver>4.3.3</version.mongo.driver>
|
|
<version.sqlserver.driver>9.4.1.jre8</version.sqlserver.driver>
|
|
<version.oracle.driver>21.1.0.0</version.oracle.driver>
|
|
<version.db2.driver>11.5.0.0</version.db2.driver>
|
|
<version.cassandra.driver>3.11.0</version.cassandra.driver>
|
|
|
|
<!-- Databases, should align with database drivers -->
|
|
<version.mysql.server>5.7</version.mysql.server>
|
|
<version.mongo.server>3.6</version.mongo.server>
|
|
<version.cassandra>3.11.10</version.cassandra>
|
|
|
|
<!-- Required in protoc plug-in config, too; can't be in BOM therefore -->
|
|
<version.com.google.protobuf>3.19.2</version.com.google.protobuf>
|
|
</properties>
|
|
|
|
<modules>
|
|
<module>debezium-bom</module>
|
|
<module>debezium-parent</module>
|
|
<module>support/checkstyle</module>
|
|
<module>support/ide-configs</module>
|
|
<module>support/revapi</module>
|
|
<module>debezium-api</module>
|
|
<module>debezium-ddl-parser</module>
|
|
<module>debezium-assembly-descriptors</module>
|
|
<module>debezium-core</module>
|
|
<module>debezium-embedded</module>
|
|
<module>debezium-connector-mysql</module>
|
|
<module>debezium-connector-postgres</module>
|
|
<module>debezium-connector-mongodb</module>
|
|
<module>debezium-connector-sqlserver</module>
|
|
<module>debezium-microbenchmark</module>
|
|
<module>debezium-quarkus-outbox</module>
|
|
<module>debezium-scripting</module>
|
|
<module>debezium-server</module>
|
|
<module>debezium-testing</module>
|
|
<module>debezium-connect-rest-extension</module>
|
|
<module>debezium-schema-generator</module>
|
|
</modules>
|
|
|
|
<distributionManagement>
|
|
<repository>
|
|
<id>ossrh</id>
|
|
<name>Sonatype Staging Repository</name>
|
|
<url>${release.endpoint}/service/local/staging/deploy/maven2</url>
|
|
</repository>
|
|
<snapshotRepository>
|
|
<id>ossrh</id>
|
|
<name>OSS Sonatype Nexus Snapshots</name>
|
|
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
|
|
</snapshotRepository>
|
|
</distributionManagement>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>confluent</id>
|
|
<name>Confluent</name>
|
|
<url>https://packages.confluent.io/maven/</url>
|
|
<snapshots>
|
|
<enabled>true</enabled>
|
|
<updatePolicy>never</updatePolicy>
|
|
</snapshots>
|
|
</repository>
|
|
<repository>
|
|
<id>ossrh</id>
|
|
<name>OSS Sonatype Nexus</name>
|
|
<url>${release.endpoint}/content/groups/public/</url>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<updatePolicy>never</updatePolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>true</enabled>
|
|
<updatePolicy>never</updatePolicy>
|
|
</snapshots>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<build>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<version>${version.enforcer.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${version.compiler.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<version>${version.source.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>${version.javadoc.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-release-plugin</artifactId>
|
|
<version>${version.release.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.sonatype.plugins</groupId>
|
|
<artifactId>nexus-staging-maven-plugin</artifactId>
|
|
<version>${version.staging.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>${version.surefire.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>${version.checkstyle.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-report-plugin</artifactId>
|
|
<version>${version.surefire.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<version>${version.resources.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>${version.dependency.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-gpg-plugin</artifactId>
|
|
<version>${version.gpg.plugin}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>build-helper-maven-plugin</artifactId>
|
|
<version>${version.build-helper.plugin}</version>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-release-plugin</artifactId>
|
|
<configuration>
|
|
<pushChanges>false</pushChanges>
|
|
<releaseProfiles>docs,assembly,release-sign-artifacts,release</releaseProfiles>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.sonatype.plugins</groupId>
|
|
<artifactId>nexus-staging-maven-plugin</artifactId>
|
|
<extensions>true</extensions>
|
|
<configuration>
|
|
<serverId>ossrh</serverId>
|
|
<nexusUrl>${release.endpoint}</nexusUrl>
|
|
<autoReleaseAfterClose>false</autoReleaseAfterClose>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<configuration>
|
|
<source>${maven.compiler.source}</source>
|
|
<target>${maven.compiler.target}</target>
|
|
<encoding>${project.build.sourceEncoding}</encoding>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<configuration>
|
|
<encoding>${project.build.sourceEncoding}</encoding>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>enforce-maven</id>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<requireMavenVersion>
|
|
<version>3.6.3</version>
|
|
</requireMavenVersion>
|
|
</rules>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
<profiles>
|
|
<profile>
|
|
<id>qa</id>
|
|
<activation>
|
|
<property>
|
|
<name>!quick</name>
|
|
</property>
|
|
</activation>
|
|
</profile>
|
|
<profile>
|
|
<id>quick</id>
|
|
<activation>
|
|
<activeByDefault>false</activeByDefault>
|
|
<property>
|
|
<name>quick</name>
|
|
</property>
|
|
</activation>
|
|
<properties>
|
|
<skipTests>true</skipTests>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>assembly</id>
|
|
<properties>
|
|
<skipLongRunningTests>false</skipLongRunningTests>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>release</id>
|
|
<properties>
|
|
<skipLongRunningTests>false</skipLongRunningTests>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>performance</id>
|
|
<properties>
|
|
<skipLongRunningTests>false</skipLongRunningTests>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>docs</id>
|
|
<activation>
|
|
<activeByDefault>false</activeByDefault>
|
|
<property>
|
|
<name>docs</name>
|
|
<value>true</value>
|
|
</property>
|
|
</activation>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>${version.javadoc.plugin}</version>
|
|
<configuration>
|
|
<show>private</show>
|
|
<nohelp>true</nohelp>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-javadocs</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>attach-test-javadocs</id>
|
|
<goals>
|
|
<goal>test-jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<profile>
|
|
<id>release-sign-artifacts</id>
|
|
<activation>
|
|
<property>
|
|
<name>performRelease</name>
|
|
<value>true</value>
|
|
</property>
|
|
</activation>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-gpg-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>sign-artifacts</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>sign</goal>
|
|
</goals>
|
|
<configuration>
|
|
<gpgArguments>
|
|
<arg>--pinentry-mode</arg>
|
|
<arg>loopback</arg>
|
|
</gpgArguments>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<profile>
|
|
<id>jdk11</id>
|
|
<activation>
|
|
<jdk>11</jdk>
|
|
</activation>
|
|
<properties>
|
|
<modules.argline>--illegal-access=permit</modules.argline>
|
|
<maven.compiler.release>8</maven.compiler.release>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>oracle</id>
|
|
<modules>
|
|
<module>debezium-connector-oracle</module>
|
|
<module>debezium-microbenchmark-oracle</module>
|
|
</modules>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|