2018-06-18 11:28:51 +02:00
<?xml version="1.0"?>
2022-11-10 14:29:05 +01:00
<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" >
2018-06-18 11:28:51 +02:00
<parent >
<groupId > io.debezium</groupId>
2021-03-02 19:25:54 +01:00
<artifactId > debezium-parent</artifactId>
2024-08-22 09:23:47 +02:00
<version > 3.0.0-SNAPSHOT</version>
2022-11-01 12:27:48 +01:00
<relativePath > ../debezium-parent/pom.xml</relativePath>
2018-06-18 11:28:51 +02:00
</parent>
<modelVersion > 4.0.0</modelVersion>
<artifactId > debezium-connector-oracle</artifactId>
<name > Debezium Connector for Oracle</name>
<packaging > jar</packaging>
<dependencies >
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-core</artifactId>
</dependency>
2022-06-14 21:49:56 +02:00
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-storage-kafka</artifactId>
</dependency>
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-storage-file</artifactId>
</dependency>
2018-06-18 12:00:19 +02:00
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-ddl-parser</artifactId>
</dependency>
2018-06-18 11:28:51 +02:00
<dependency >
<groupId > org.apache.kafka</groupId>
<artifactId > connect-api</artifactId>
<scope > provided</scope>
</dependency>
2021-01-06 08:19:14 +01:00
<dependency >
<groupId > org.slf4j</groupId>
<artifactId > slf4j-api</artifactId>
<scope > provided</scope>
</dependency>
2018-06-18 11:28:51 +02:00
<dependency >
2020-04-23 12:44:20 +02:00
<groupId > com.oracle.database.jdbc</groupId>
2018-06-18 11:28:51 +02:00
<artifactId > ojdbc8</artifactId>
</dependency>
<dependency >
2022-11-01 12:27:48 +01:00
<groupId > org.antlr</groupId>
<artifactId > antlr4-runtime</artifactId>
2018-06-18 11:28:51 +02:00
</dependency>
2021-07-27 16:19:10 +02:00
<dependency >
<groupId > org.infinispan</groupId>
2024-05-01 15:33:23 +02:00
<artifactId > infinispan-core</artifactId>
2021-07-27 16:19:10 +02:00
</dependency>
2021-11-08 22:26:01 +01:00
<dependency >
<groupId > org.infinispan</groupId>
2024-05-01 15:33:23 +02:00
<artifactId > infinispan-client-hotrod</artifactId>
2021-11-08 22:26:01 +01:00
</dependency>
2021-07-29 10:36:58 +02:00
<dependency >
<groupId > org.infinispan.protostream</groupId>
<artifactId > protostream-processor</artifactId>
</dependency>
2024-04-10 16:58:18 +02:00
<!-- Dependencies for NLS for Internationalization support -->
<dependency >
<groupId > com.oracle.database.nls</groupId>
<artifactId > orai18n</artifactId>
</dependency>
2023-06-30 09:04:06 +02:00
<!-- Dependencies needed for XML support -->
<dependency >
<groupId > com.oracle.database.xml</groupId>
<artifactId > xdb</artifactId>
<scope > provided</scope>
</dependency>
<dependency >
<groupId > com.oracle.database.xml</groupId>
<artifactId > xmlparserv2</artifactId>
<scope > provided</scope>
</dependency>
2023-07-31 12:15:23 +02:00
<!-- Dependencies for OpenLogReplicator -->
<dependency >
<groupId > com.google.protobuf</groupId>
<artifactId > protobuf-java</artifactId>
<version > ${version.com.google.protobuf}</version>
</dependency>
<dependency >
<groupId > com.google.protobuf</groupId>
<artifactId > protobuf-java-util</artifactId>
<version > ${version.com.google.protobuf}</version>
</dependency>
2024-08-20 22:01:50 +02:00
<!-- Ehcache Dependencies -->
2024-08-06 00:40:15 +02:00
<dependency >
<groupId > org.ehcache</groupId>
<artifactId > ehcache</artifactId>
2024-08-21 02:20:54 +02:00
<version > ${version.ehcache}</version>
2024-08-06 00:40:15 +02:00
</dependency>
2024-08-20 22:01:50 +02:00
<dependency >
<groupId > javax.xml.bind</groupId>
<artifactId > jaxb-api</artifactId>
2024-08-21 02:20:54 +02:00
<version > ${version.jaxb}</version>
2024-08-20 22:01:50 +02:00
</dependency>
<dependency >
<groupId > com.sun.xml.bind</groupId>
<artifactId > jaxb-core</artifactId>
2024-08-21 02:20:54 +02:00
<version > ${version.jaxb}</version>
2024-08-20 22:01:50 +02:00
</dependency>
<dependency >
<groupId > com.sun.xml.bind</groupId>
<artifactId > jaxb-impl</artifactId>
2024-08-21 02:20:54 +02:00
<version > ${version.jaxb}</version>
2024-08-20 22:01:50 +02:00
</dependency>
2018-06-18 11:28:51 +02:00
<!-- Testing -->
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-core</artifactId>
<type > test-jar</type>
<scope > test</scope>
</dependency>
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-embedded</artifactId>
<type > test-jar</type>
<scope > test</scope>
</dependency>
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-embedded</artifactId>
<scope > test</scope>
</dependency>
<dependency >
2022-01-11 09:09:09 +01:00
<groupId > ch.qos.logback</groupId>
<artifactId > logback-classic</artifactId>
2018-06-18 11:28:51 +02:00
<scope > test</scope>
</dependency>
<dependency >
<groupId > junit</groupId>
<artifactId > junit</artifactId>
<scope > test</scope>
</dependency>
<dependency >
2022-11-01 17:41:25 +01:00
<groupId > org.assertj</groupId>
<artifactId > assertj-core</artifactId>
2018-06-18 11:28:51 +02:00
<scope > test</scope>
</dependency>
2020-05-04 13:34:47 +02:00
<dependency >
<groupId > org.awaitility</groupId>
<artifactId > awaitility</artifactId>
<scope > test</scope>
</dependency>
2020-07-09 20:35:32 +02:00
<dependency >
<groupId > org.mockito</groupId>
<artifactId > mockito-core</artifactId>
<scope > test</scope>
</dependency>
2023-10-05 13:10:58 +02:00
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-testing-testcontainers</artifactId>
<scope > test</scope>
<exclusions >
<exclusion >
<groupId > org.junit.platform</groupId>
<artifactId > junit-platform-launcher</artifactId>
</exclusion>
<exclusion >
<groupId > org.junit.jupiter</groupId>
<artifactId > junit-jupiter</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency >
<groupId > io.rest-assured</groupId>
<artifactId > rest-assured</artifactId>
<scope > test</scope>
</dependency>
2020-07-09 20:35:32 +02:00
2018-06-18 11:28:51 +02:00
<!-- Required by VerifyRecord -->
<dependency >
<groupId > io.confluent</groupId>
<artifactId > kafka-connect-avro-converter</artifactId>
<scope > test</scope>
</dependency>
2022-11-21 16:42:42 +01:00
<dependency >
<groupId > io.apicurio</groupId>
<artifactId > apicurio-registry-utils-converter</artifactId>
<scope > test</scope>
2023-07-26 17:02:08 +02:00
<exclusions >
<exclusion >
<artifactId > slf4j-jboss-logmanager</artifactId>
<groupId > org.jboss.slf4j</groupId>
</exclusion>
</exclusions>
2022-11-21 16:42:42 +01:00
</dependency>
2022-06-10 01:14:59 +02:00
<!-- Used for unit testing with Kafka -->
<dependency >
<groupId > org.apache.kafka</groupId>
<artifactId > kafka_${version.kafka.scala}</artifactId>
<scope > test</scope>
</dependency>
2023-06-16 22:24:01 +02:00
2018-06-18 11:28:51 +02:00
</dependencies>
2020-07-09 20:35:32 +02:00
<properties >
2021-03-05 23:57:28 +01:00
<adapter.name > logminer</adapter.name>
2021-07-29 10:36:58 +02:00
<log.mining.buffer.type.name > memory</log.mining.buffer.type.name>
2023-01-04 18:09:24 +01:00
<log.mining.read.only.mode > false</log.mining.read.only.mode>
2024-08-21 02:20:54 +02:00
<version.jaxb > 2.3.0</version.jaxb>
<version.ehcache > 3.9.6</version.ehcache>
2021-12-20 06:23:11 +01:00
<version.oracle.server > 19.3.0</version.oracle.server>
2021-11-09 00:48:55 +01:00
2023-09-13 17:25:35 +02:00
<protobuf.output.directory > ${project.basedir}/generated-sources</protobuf.output.directory>
2022-06-22 19:43:36 +02:00
<!--
By default, the Oracle module's tests are not executed but only compiled.
In order to execute tests, the profile "oracle-tests" must be explicitly toggled.
-->
<skipITs > true</skipITs>
2021-11-09 00:48:55 +01:00
<!--
2023-10-05 13:10:58 +02:00
Specify properties used for setting up the Oracle DB container instance/s for integration tests.
Note that the `docker.host.address` property is computed from the IP address of DOCKER_HOST, which will
work on all platforms.
2021-11-09 00:48:55 +01:00
-->
<!-- This should be kept in sync with the infinispan dependencies used -->
<oracle.infinispan.host > ${docker.host.address}</oracle.infinispan.host>
<oracle.infinispan.image > infinispan/server:${version.infinispan.server}</oracle.infinispan.image>
<oracle.infinispan.port > 11222</oracle.infinispan.port>
<oracle.infinispan.user > admin</oracle.infinispan.user>
<oracle.infinispan.password > admin</oracle.infinispan.password>
<docker.skip > false</docker.skip>
<docker.showLogs > true</docker.showLogs>
2021-12-13 13:53:12 +01:00
<connector.assembly.ref > connector-distribution</connector.assembly.ref>
2022-11-01 12:30:21 +01:00
<!-- Apicurion container properties -->
<apicurio.port > 8080</apicurio.port>
<apicurio.init.timeout > 60000</apicurio.init.timeout> <!-- 60 seconds -->
2020-07-09 20:35:32 +02:00
</properties>
2018-06-18 11:28:51 +02:00
<build >
<resources >
<!-- Apply the properties set in the POM to the resource files -->
<resource >
<filtering > true</filtering>
<directory > src/main/resources</directory>
<includes >
<include > *</include>
<include > **/*</include>
</includes>
</resource>
</resources>
<testResources >
<testResource >
<directory > src/test/resources</directory>
<filtering > true</filtering>
<includes >
<include > *</include>
<include > **/*</include>
</includes>
</testResource>
</testResources>
<plugins >
2022-06-22 19:43:36 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<configuration >
<!--
By default we exclude the Xstream sources.
To enable Xstream support, use the "oracle-xstream" profile
-->
<excludes >
<exclude > **/io/debezium/connector/oracle/xstream/**</exclude>
</excludes>
2023-09-28 21:10:15 +02:00
<testExcludes >
<exclude > **/io/debezium/connector/oracle/xstream/**</exclude>
</testExcludes>
2022-06-22 19:43:36 +02:00
</configuration>
</plugin>
2020-12-16 15:45:05 +01:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-surefire-plugin</artifactId>
<configuration >
2023-06-16 22:24:01 +02:00
<argLine > -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl</argLine>
2023-10-05 13:10:58 +02:00
<systemPropertyVariables combine.children= "append" >
<database.connection.adapter > ${adapter.name}</database.connection.adapter>
<log.mining.buffer.type > ${log.mining.buffer.type.name}</log.mining.buffer.type>
<internal.log.mining.read.only > ${log.mining.read.only.mode}</internal.log.mining.read.only>
</systemPropertyVariables>
2020-12-16 15:45:05 +01:00
</configuration>
</plugin>
2018-06-18 11:28:51 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
<executions >
<execution >
<id > integration-test</id>
<goals >
<goal > integration-test</goal>
</goals>
</execution>
<execution >
<id > verify</id>
<goals >
<goal > verify</goal>
</goals>
</execution>
</executions>
<configuration >
<skipTests > ${skipITs}</skipTests>
<enableAssertions > true</enableAssertions>
2023-07-25 11:16:18 +02:00
<forkCount > 0</forkCount>
2023-08-31 22:39:34 +02:00
<argLine > -Djava.library.path=${instantclient.dir} -Ddebezium.embedded.shutdown.pause.before.interrupt.ms=20000</argLine>
2020-07-09 20:35:32 +02:00
<systemPropertyVariables >
<database.connection.adapter > ${adapter.name}</database.connection.adapter>
2021-07-29 10:36:58 +02:00
<log.mining.buffer.type > ${log.mining.buffer.type.name}</log.mining.buffer.type>
2023-01-04 18:09:24 +01:00
<internal.log.mining.read.only > ${log.mining.read.only.mode}</internal.log.mining.read.only>
2023-08-31 22:39:34 +02:00
<javax.xml.parsers.SAXParserFactory > com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl</javax.xml.parsers.SAXParserFactory>
2023-10-05 13:10:58 +02:00
<version.oracle.server > ${version.oracle.server}</version.oracle.server>
2020-07-09 20:35:32 +02:00
</systemPropertyVariables>
2022-12-05 13:00:07 +01:00
<runOrder > ${runOrder}</runOrder>
2018-06-18 11:28:51 +02:00
</configuration>
</plugin>
2022-08-26 19:58:38 +02:00
<plugin >
<groupId > io.debezium</groupId>
<artifactId > debezium-schema-generator</artifactId>
<version > ${project.version}</version>
<executions >
<execution >
<id > generate-connector-metadata</id>
<goals >
<goal > generate-api-spec</goal>
</goals>
<phase > prepare-package</phase>
2023-08-29 19:53:31 +02:00
<configuration >
<outputDirectory > ${project.build.outputDirectory}/META-INF/resources/</outputDirectory>
</configuration>
2022-08-26 19:58:38 +02:00
</execution>
</executions>
</plugin>
2023-07-31 12:15:23 +02:00
<plugin >
2023-08-15 16:13:09 +02:00
<groupId > com.github.os72</groupId>
<artifactId > protoc-jar-maven-plugin</artifactId>
2023-07-31 12:15:23 +02:00
<executions >
<execution >
2023-08-15 16:13:09 +02:00
<phase > generate-sources</phase>
2023-07-31 12:15:23 +02:00
<goals >
2023-08-15 16:13:09 +02:00
<goal > run</goal>
2023-07-31 12:15:23 +02:00
</goals>
2023-08-15 16:13:09 +02:00
<configuration >
<protocArtifact > com.google.protobuf:protoc:${version.com.google.protobuf.protoc}</protocArtifact>
<outputDirectory > ${protobuf.output.directory}</outputDirectory>
<inputDirectories >
<include > src/main/proto</include>
</inputDirectories>
</configuration>
2023-07-31 12:15:23 +02:00
</execution>
</executions>
</plugin>
2018-06-18 11:28:51 +02:00
</plugins>
</build>
<!--
Define several useful profiles
-->
<profiles >
2022-06-22 19:43:36 +02:00
<!--
Profile: oracle-tests
This specifically enables the execution of all integration tests.
By default, integration tests are only compiled but are not executed.
-->
2021-03-30 20:29:16 +02:00
<profile >
2022-06-22 19:43:36 +02:00
<id > oracle-tests</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<properties >
<skipITs > false</skipITs>
</properties>
</profile>
<!--
Profile: oracle-xstream
This is a multi-faceted profile that controls several key points:
1. Adds the Oracle Instant Client & Xstream dependencies to the module
2. Includes the Xstream sources into the build, which are otherwise excluded
3. Enables the ability to execute the test suite for the Xstream adapter
-->
<profile >
<id > oracle-xstream</id>
<properties >
<!-- Point (3) enables the xstream adapter for tests -->
<adapter.name > xstream</adapter.name>
</properties>
2021-03-30 20:29:16 +02:00
<activation >
2022-06-22 19:43:36 +02:00
<activeByDefault > false</activeByDefault>
2021-03-30 20:29:16 +02:00
</activation>
2022-06-22 19:43:36 +02:00
<!-- Point (1) add the Xstream dependencies -->
2021-03-30 20:29:16 +02:00
<dependencies >
<dependency >
<groupId > com.oracle.instantclient</groupId>
<artifactId > xstreams</artifactId>
2021-05-19 15:10:11 +02:00
<scope > provided</scope>
2021-03-30 20:29:16 +02:00
</dependency>
</dependencies>
2022-06-22 19:43:36 +02:00
<build >
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<configuration combine.self= "override" >
<!-- Point (2) add the Xstream sources back into the module -->
<includes >
<include > **</include>
</includes>
2023-09-28 21:10:15 +02:00
<testIncludes >
<include > **</include>
</testIncludes>
2022-06-22 19:43:36 +02:00
</configuration>
</plugin>
</plugins>
</build>
2021-03-30 20:29:16 +02:00
</profile>
2023-07-31 12:15:23 +02:00
<!--
Profile: oracle-olr
This profile should be used to run the connector with the OpenLogReplicator adapter.
-->
<profile >
<id > oracle-olr</id>
<properties >
<adapter.name > olr</adapter.name>
</properties>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
</profile>
2022-06-30 23:30:11 +02:00
<!-- Enables all sources, useful for IDE build or releases -->
2022-06-24 20:51:19 +02:00
<profile >
2022-06-30 23:30:11 +02:00
<id > oracle-all</id>
2022-06-24 20:51:19 +02:00
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<dependencies >
<dependency >
<groupId > com.oracle.instantclient</groupId>
<artifactId > xstreams</artifactId>
<scope > provided</scope>
</dependency>
</dependencies>
<build >
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<configuration combine.self= "override" >
<includes >
<include > **</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
2018-06-18 11:28:51 +02:00
<profile >
<id > assembly</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
2021-03-30 20:29:16 +02:00
<dependencies >
<dependency >
<groupId > com.oracle.instantclient</groupId>
<artifactId > xstreams</artifactId>
2021-05-19 15:10:11 +02:00
<scope > provided</scope>
2021-03-30 20:29:16 +02:00
</dependency>
</dependencies>
2018-06-18 11:28:51 +02:00
<build >
<plugins >
2022-06-22 19:43:36 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<configuration combine.self= "override" >
<!-- include xstream back into the module on assembly builds -->
<includes >
<include > **</include>
</includes>
</configuration>
</plugin>
2018-06-18 11:28:51 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-assembly-plugin</artifactId>
<dependencies >
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-assembly-descriptors</artifactId>
<version > ${project.version}</version>
</dependency>
</dependencies>
<executions >
<execution >
<id > default</id>
<phase > package</phase>
<goals >
<goal > single</goal>
</goals>
<configuration >
<finalName > ${project.artifactId}-${project.version}</finalName>
<attach > true</attach> <!-- we want attach & deploy these to Maven -->
<descriptorRefs >
2021-12-13 13:53:12 +01:00
<descriptorRef > ${connector.assembly.ref}</descriptorRef>
2018-06-18 11:28:51 +02:00
</descriptorRefs>
2020-05-18 12:16:47 +02:00
<tarLongFileMode > posix</tarLongFileMode>
2018-06-18 11:28:51 +02:00
</configuration>
</execution>
</executions>
</plugin>
2023-10-05 13:10:58 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
<version > ${version.failsafe.plugin}</version>
<configuration >
<systemPropertyVariables >
<isAssemblyProfileActive > true</isAssemblyProfileActive>
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile >
<!-- // Testing a connect REST extension in a Debezium Kafka Connect container requires a ` - plugin.tar.gz` assembly package without a dependency to XStreams. // -->
<id > rest-assembly</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<build >
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<configuration combine.self= "override" >
<excludes >
<exclude > **/io/debezium/connector/oracle/xstream/**</exclude>
</excludes>
<testExcludes >
<exclude > **/*IT</exclude>
</testExcludes>
<testIncludes >
<include > **/io/debezium/connector/oracle/rest/**</include>
</testIncludes>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-assembly-plugin</artifactId>
<dependencies >
<dependency >
<groupId > io.debezium</groupId>
<artifactId > debezium-assembly-descriptors</artifactId>
<version > ${project.version}</version>
</dependency>
</dependencies>
<executions >
<execution >
<id > default</id>
<phase > package</phase>
<goals >
<goal > single</goal>
</goals>
<configuration >
<finalName > ${project.artifactId}-${project.version}</finalName>
<attach > false</attach>
<descriptorRefs >
<descriptorRef > ${connector.assembly.ref}</descriptorRef>
</descriptorRefs>
<tarLongFileMode > posix</tarLongFileMode>
</configuration>
</execution>
</executions>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
<version > ${version.failsafe.plugin}</version>
<configuration >
<systemPropertyVariables >
<isAssemblyProfileActive > true</isAssemblyProfileActive>
<database.username > ${database.username}</database.username>
<database.password > ${database.password}</database.password>
<database.dbname > ${database.dbname}</database.dbname>
2023-11-07 20:13:17 +01:00
<database.pdb.name > ${database.pdb.name}</database.pdb.name>
2023-10-05 13:10:58 +02:00
</systemPropertyVariables>
</configuration>
</plugin>
2018-06-18 11:28:51 +02:00
</plugins>
</build>
</profile>
2021-04-21 12:32:40 +02:00
<profile >
<id > quick</id>
2021-04-26 12:56:34 +02:00
<activation >
<activeByDefault > false</activeByDefault>
<property >
<name > quick</name>
</property>
</activation>
2021-04-21 12:32:40 +02:00
<properties >
<skipITs > true</skipITs>
<docker.skip > true</docker.skip>
</properties>
</profile>
2021-12-20 06:23:11 +01:00
<profile >
<id > oracle-docker</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<build >
<plugins >
<plugin >
2022-11-01 12:27:48 +01:00
<groupId > io.fabric8</groupId>
<artifactId > docker-maven-plugin</artifactId>
<configuration >
<watchInterval > 500</watchInterval>
<logDate > default</logDate>
<verbose > true</verbose>
<!-- autoPull>always</autoPull -->
<images >
<!-- A container for the data server replica set -->
<image >
<name > quay.io/rh_integration/dbz-oracle:${version.oracle.server}</name>
<alias > oracle1</alias>
<run >
<namingStrategy > alias</namingStrategy>
<ports >
<port > 1521:1521</port>
</ports>
<log >
<prefix > oracle1</prefix>
<enabled > true</enabled>
<color > yellow</color>
</log>
<wait >
<log > DONE: Executing user defined scripts</log>
<time > 120000</time> <!-- 2 minutes max -->
</wait>
</run>
<external >
<type > properties</type>
<mode > override</mode>
</external>
</image>
</images>
</configuration>
<!--
Connect this plugin to the maven lifecycle around the integration-test phase:
start the container in pre-integration-test and stop it in post-integration-test.
-->
<executions >
<execution >
<id > start</id>
<phase > pre-integration-test</phase>
<goals >
<goal > build</goal>
<goal > start</goal>
</goals>
</execution>
<execution >
<id > stop</id>
<phase > post-integration-test</phase>
<goals >
<goal > stop</goal>
</goals>
</execution>
</executions>
2021-12-20 06:23:11 +01:00
</plugin>
</plugins>
</build>
</profile>
2021-10-19 19:13:01 +02:00
<!-- This profile should be used for testing connector with Infinispan only -->
2021-07-29 10:36:58 +02:00
<profile >
<id > infinispan-buffer</id>
2022-06-22 19:43:36 +02:00
<activation >
<activeByDefault > false</activeByDefault>
</activation>
2021-07-29 10:36:58 +02:00
<properties >
2022-06-08 13:33:57 +02:00
<log.mining.buffer.type.name > infinispan_embedded</log.mining.buffer.type.name>
2021-07-29 10:36:58 +02:00
</properties>
2022-06-22 19:43:36 +02:00
<!-- todo: when using this profile, enforce oracle - xstream being mutually exclusive -->
2021-07-29 10:36:58 +02:00
</profile>
2021-11-08 22:26:01 +01:00
<profile >
<id > infinispan-buffer-remote</id>
2022-06-22 19:43:36 +02:00
<activation >
<activeByDefault > false</activeByDefault>
</activation>
2021-11-08 22:26:01 +01:00
<properties >
<log.mining.buffer.type.name > infinispan_remote</log.mining.buffer.type.name>
</properties>
2022-06-22 19:43:36 +02:00
<!-- todo: when using this profile, enforce oracle - xstream being mutually exclusive -->
2021-11-08 22:26:01 +01:00
<build >
<plugins >
<plugin >
<groupId > io.fabric8</groupId>
<artifactId > docker-maven-plugin</artifactId>
<configuration >
<watchInterval > 500</watchInterval>
<logDate > default</logDate>
<verbose > true</verbose>
<images >
<image >
<!-- A docker image using Infinispan -->
2021-11-09 00:48:55 +01:00
<name > ${oracle.infinispan.image}</name>
2021-11-08 22:26:01 +01:00
<run >
<namingStrategy > none</namingStrategy>
<env >
2021-11-09 00:48:55 +01:00
<USER > ${oracle.infinispan.user}</USER>
<PASS > ${oracle.infinispan.password}</PASS>
2021-11-08 22:26:01 +01:00
</env>
<ports >
2021-11-09 00:48:55 +01:00
<port > ${oracle.infinispan.port}:11222</port>
2021-11-08 22:26:01 +01:00
</ports>
<log >
<prefix > infinispan</prefix>
2021-11-09 00:48:55 +01:00
<enabled > ${docker.showLogs}</enabled>
2021-11-08 22:26:01 +01:00
<color > green</color>
</log>
<wait >
<time > 60000</time> <!-- 60 seconds max -->
<log > Infinispan Server [0-9a-zA-z.]* started</log>
</wait>
</run>
2022-09-27 14:04:00 +02:00
<external >
<type > properties</type>
<mode > override</mode>
</external>
2021-11-08 22:26:01 +01:00
</image>
</images>
</configuration>
<!--
Connect this plugin to the maven lifecycle around the integration-test phase:
start the container in pre-integration-test and stop it in post-integration-test.
-->
<executions >
<execution >
<id > start</id>
<phase > pre-integration-test</phase>
<goals >
<goal > start</goal>
</goals>
</execution>
<execution >
<id > stop</id>
<phase > post-integration-test</phase>
<goals >
<goal > stop</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
2024-08-06 00:40:15 +02:00
<!-- This profile should be used for testing connector with EhCache only -->
<profile >
<id > oracle-ehcache</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<properties >
<log.mining.buffer.type.name > ehcache</log.mining.buffer.type.name>
</properties>
<!-- todo: when using this profile, enforce oracle - xstream being mutually exclusive -->
</profile>
2022-11-01 12:30:21 +01:00
<profile >
<id > apicurio</id>
<activation >
<activeByDefault > false</activeByDefault>
<property >
<name > apicurio</name>
</property>
</activation>
2022-11-03 13:02:49 +01:00
<build >
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
<configuration >
<systemPropertyVariables >
<use.apicurio > true</use.apicurio>
</systemPropertyVariables>
</configuration>
</plugin>
2022-11-29 12:54:47 +01:00
<plugin >
<groupId > io.fabric8</groupId>
<artifactId > docker-maven-plugin</artifactId>
<configuration >
<watchInterval > 500</watchInterval>
<logDate > default</logDate>
<verbose > true</verbose>
<!-- autoPull>always</autoPull -->
<images >
<!-- A container for the data server replica set -->
<image >
<name > apicurio/apicurio-registry-mem:${version.apicurio}</name>
<run >
<namingStrategy > none</namingStrategy>
<ports >
<port > ${apicurio.port}:8080</port>
</ports>
<log >
<prefix > apicurio</prefix>
<enabled > true</enabled>
<color > blue</color>
</log>
<wait >
<log > .*apicurio-registry-app.*started in.*</log>
<time > ${apicurio.init.timeout}</time>
</wait>
</run>
</image>
</images>
</configuration>
<!--
Connect this plugin to the maven lifecycle around the integration-test phase:
start the container in pre-integration-test and stop it in post-integration-test.
-->
<executions >
<execution >
<id > start</id>
<phase > pre-integration-test</phase>
<goals >
<goal > build</goal>
<goal > start</goal>
</goals>
</execution>
<execution >
<id > stop</id>
<phase > post-integration-test</phase>
<goals >
<goal > stop</goal>
</goals>
</execution>
</executions>
</plugin>
2022-11-03 13:02:49 +01:00
</plugins>
</build>
2022-11-01 12:30:21 +01:00
</profile>
2023-01-04 18:09:24 +01:00
<profile >
<id > oracle-read-only</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<properties >
<log.mining.read.only.mode > true</log.mining.read.only.mode>
</properties>
</profile>
2024-01-19 15:21:28 +01:00
<profile >
<id > oracle-23</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<properties >
<version.oracle.driver > 23.3.0.23.09</version.oracle.driver>
<version.oracle.instantclient > 23.3.0.0</version.oracle.instantclient>
</properties>
</profile>
2018-06-18 11:28:51 +02:00
</profiles>
</project>