DBZ-2159 Move Revapi configuration into the support/ structure.

This commit is contained in:
Lukas Krejci 2020-06-08 17:05:33 +02:00 committed by Gunnar Morling
parent a4689611f5
commit 64355674ee
4 changed files with 78 additions and 28 deletions

47
pom.xml
View File

@ -167,6 +167,7 @@
<modules>
<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>
@ -658,6 +659,18 @@
<groupId>org.revapi</groupId>
<artifactId>revapi-maven-plugin</artifactId>
<version>${version.revapi.plugin}</version>
<dependencies>
<dependency>
<groupId>io.debezium</groupId>
<artifactId>debezium-revapi</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.revapi</groupId>
<artifactId>revapi-java</artifactId>
<version>${version.revapi-java.plugin}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
@ -866,44 +879,26 @@
<plugin>
<groupId>org.revapi</groupId>
<artifactId>revapi-maven-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.revapi</groupId>
<artifactId>revapi-java</artifactId>
<version>${version.revapi-java.plugin}</version>
</dependency>
</dependencies>
<configuration>
<failOnMissingConfigurationFiles>false</failOnMissingConfigurationFiles>
<!-- Consider changes from the latest .Final version, not from the latest non-snapshot. -->
<versionFormat>\d+\.\d+\.\d+\.Final</versionFormat>
<ignoreSuggestionsFormat>xml</ignoreSuggestionsFormat>
<analysisConfiguration>
<revapi.semver.ignore>
<!-- Automatically ignore changes that are OK according to the semver rules. -->
<enabled>true</enabled>
</revapi.semver.ignore>
<revapi.java.filter.annotated>
<exclude>
<!-- Don't break on changes in the incubating API. -->
<item>@io.debezium.common.annotation.Incubating</item>
</exclude>
</revapi.java.filter.annotated>
</analysisConfiguration>
<analysisConfigurationFiles>
<configurationFile>
<!--
Each API checked module can have a file detailing the intentional API changes
in the form of a configuration for Revapi.
-->
<path>${basedir}/src/chore/intentional-api-changes.xml</path>
<!-- common API checking configuration -->
<resource>revapi/revapi-configuration.xml</resource>
</configurationFile>
<configurationFile>
<!-- API changes recorded in the support/revapi module -->
<resource>revapi/debezium-api-changes.xml</resource>
<roots>
<!--
The XML file has "<revapi-configuration>" root node, underneath which
The XML file has "<analysisConfiguration>" root node, underneath which
there are nodes named after each version.
This way we only need a single file for all releases of Debezium.
-->
<root>revapi-configuration/version-${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}</root>
<root>analysisConfiguration/version-${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}</root>
</roots>
</configurationFile>
</analysisConfigurationFiles>

40
support/revapi/pom.xml Normal file
View File

@ -0,0 +1,40 @@
<?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>
<groupId>org.jboss</groupId>
<artifactId>jboss-parent</artifactId>
<version>35</version>
<!-- same as parent POM -->
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>io.debezium</groupId>
<artifactId>debezium-revapi</artifactId>
<version>1.2.0-SNAPSHOT</version>
<name>Debezium Revapi Rules</name>
<description>Contains the configuration of the Revapi API checker and the list of the API changes in the Debezium APIs.</description>
<properties>
<!-- Instruct the build to use only UTF-8 encoding for source code -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<version.jar.plugin>3.0.2</version.jar.plugin>
<version.compiler.plugin>3.8.1</version.compiler.plugin>
</properties>
<build>
<plugins>
<!--
This is not deployed into a Maven repository. It is merely installed into the local Maven repository
during a local build.
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@ -1,4 +1,5 @@
<revapi-configuration>
<?xml version='1.0' encoding='UTF-8'?>
<analysisConfiguration>
<!-- No changes as of yet. This is just an example of how to tell Revapi to ignore intentional changes.
<version-1.2.0>
<revapi.ignore>
@ -7,4 +8,4 @@
</revapi.ignore>
</version-1.2.0>
-->
</revapi-configuration>
</analysisConfiguration>

View File

@ -0,0 +1,14 @@
<?xml version='1.0' encoding='UTF-8'?>
<!-- The basic configuration for Revapi API checks in all modules that have API checks enabled. -->
<analysisConfiguration>
<revapi.semver.ignore>
<!-- Automatically ignore changes that are OK according to the semver rules. -->
<enabled>true</enabled>
</revapi.semver.ignore>
<revapi.java.filter.annotated>
<exclude>
<!-- Don't break on changes in the incubating API. -->
<item>@io.debezium.common.annotation.Incubating</item>
</exclude>
</revapi.java.filter.annotated>
</analysisConfiguration>