DBZ-23 Simplified PosgreSQL Connector's use of Docker plugin
This commit is contained in:
parent
42e531dbe9
commit
046fc83850
@ -20,16 +20,32 @@
|
|||||||
<groupId>org.postgresql</groupId>
|
<groupId>org.postgresql</groupId>
|
||||||
<artifactId>postgresql</artifactId>
|
<artifactId>postgresql</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.kafka</groupId>
|
||||||
|
<artifactId>connect-api</artifactId>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.slf4j</groupId>
|
<groupId>org.slf4j</groupId>
|
||||||
<artifactId>slf4j-api</artifactId>
|
<artifactId>slf4j-api</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- Testing -->
|
<!-- Testing -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>io.debezium</groupId>
|
<groupId>io.debezium</groupId>
|
||||||
<artifactId>debezium-core</artifactId>
|
<artifactId>debezium-core</artifactId>
|
||||||
<type>test-jar</type>
|
<type>test-jar</type>
|
||||||
</dependency>
|
</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>
|
<dependency>
|
||||||
<groupId>org.slf4j</groupId>
|
<groupId>org.slf4j</groupId>
|
||||||
<artifactId>slf4j-log4j12</artifactId>
|
<artifactId>slf4j-log4j12</artifactId>
|
||||||
@ -56,12 +72,17 @@
|
|||||||
<database.port>5432</database.port>
|
<database.port>5432</database.port>
|
||||||
<database.user>postgres</database.user>
|
<database.user>postgres</database.user>
|
||||||
<database.password>postgres</database.password>
|
<database.password>postgres</database.password>
|
||||||
|
<!--
|
||||||
|
By default, we should use the default Docker image. This propery is changed with different profiles.
|
||||||
|
-->
|
||||||
|
<docker.image>postgres:${version.postgresql.server}</docker.image>
|
||||||
|
<docker.skip>false</docker.skip>
|
||||||
</properties>
|
</properties>
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
<!-- Build a Docker image of our PostgreSQL installation, and run it as a container for our integration tests -->
|
<!-- Build a Docker image of our PostgreSQL installation, and run it as a container for our integration tests -->
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.jolokia</groupId>
|
<groupId>io.fabric8</groupId>
|
||||||
<artifactId>docker-maven-plugin</artifactId>
|
<artifactId>docker-maven-plugin</artifactId>
|
||||||
<configuration>
|
<configuration>
|
||||||
<watchInterval>500</watchInterval>
|
<watchInterval>500</watchInterval>
|
||||||
@ -70,21 +91,16 @@
|
|||||||
<autoPull>always</autoPull>
|
<autoPull>always</autoPull>
|
||||||
<images>
|
<images>
|
||||||
<image>
|
<image>
|
||||||
<name>debezium-pg94-server</name>
|
<name>postgres:${version.postgresql.server}</name>
|
||||||
<alias>database</alias>
|
<alias>database</alias>
|
||||||
<build>
|
|
||||||
<assembly>
|
|
||||||
<basedir>/docker-entrypoint-initdb.d</basedir>
|
|
||||||
<dockerFileDir>${project.basedir}/src/test/docker</dockerFileDir>
|
|
||||||
</assembly>
|
|
||||||
</build>
|
|
||||||
<run>
|
<run>
|
||||||
<namingStrategy>alias</namingStrategy>
|
<namingStrategy>alias</namingStrategy>
|
||||||
<!--volumes>
|
<volumes>
|
||||||
<bind>
|
<bind>
|
||||||
|
<volume>${project.basedir}/src/test/docker/init:/docker-entrypoint-initdb.d</volume>
|
||||||
<volume>${project.build.directory}/data:/var/lib/postgresql/data</volume>
|
<volume>${project.build.directory}/data:/var/lib/postgresql/data</volume>
|
||||||
</bind>
|
</bind>
|
||||||
</volumes-->
|
</volumes>
|
||||||
<env>
|
<env>
|
||||||
<POSTGRES_USER>${database.user}</POSTGRES_USER>
|
<POSTGRES_USER>${database.user}</POSTGRES_USER>
|
||||||
<POSTGRES_PASSWORD>${database.password}</POSTGRES_PASSWORD>
|
<POSTGRES_PASSWORD>${database.password}</POSTGRES_PASSWORD>
|
||||||
@ -150,13 +166,15 @@
|
|||||||
</execution>
|
</execution>
|
||||||
</executions>
|
</executions>
|
||||||
<configuration>
|
<configuration>
|
||||||
<skipTests>${skipITs</skipTests>
|
<skipTests>${skipITs}</skipTests>
|
||||||
|
<enableAssertions>true</enableAssertions>
|
||||||
<systemPropertyVariables>
|
<systemPropertyVariables>
|
||||||
<!-- Make these available to the tests via system properties -->
|
<!-- Make these available to the tests via system properties -->
|
||||||
<database.hostname>${docker.host.address}</database.hostname>
|
<database.hostname>${docker.host.address}</database.hostname>
|
||||||
<database.port>${database.port}</database.port>
|
<database.port>${database.port}</database.port>
|
||||||
<database.user>${database.user}</database.user>
|
<database.user>${database.user}</database.user>
|
||||||
<database.password>${database.password}</database.password>
|
<database.password>${database.password}</database.password>
|
||||||
|
<skipLongRunningTests>${skipLongRunningTests}</skipLongRunningTests>
|
||||||
</systemPropertyVariables>
|
</systemPropertyVariables>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
@ -183,4 +201,55 @@
|
|||||||
</testResource>
|
</testResource>
|
||||||
</testResources>
|
</testResources>
|
||||||
</build>
|
</build>
|
||||||
|
<!--
|
||||||
|
Define several useful profiles
|
||||||
|
-->
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>assembly</id>
|
||||||
|
<activation>
|
||||||
|
<activeByDefault>false</activeByDefault>
|
||||||
|
</activation>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
<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>
|
||||||
|
<descriptorRef>connector-distribution</descriptorRef>
|
||||||
|
</descriptorRefs>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</profile>
|
||||||
|
|
||||||
|
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
Do not perform any Docker-related functionality
|
||||||
|
To use, specify "-DskipITs" on the Maven command line.
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
<profile>
|
||||||
|
<id>skip-integration-tests</id>
|
||||||
|
<activation>
|
||||||
|
<activeByDefault>false</activeByDefault>
|
||||||
|
<property>
|
||||||
|
<name>skipITs</name>
|
||||||
|
</property>
|
||||||
|
</activation>
|
||||||
|
<properties>
|
||||||
|
<docker.skip>true</docker.skip>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
</project>
|
</project>
|
1
pom.xml
1
pom.xml
@ -54,6 +54,7 @@
|
|||||||
|
|
||||||
<!-- Databases -->
|
<!-- Databases -->
|
||||||
<version.postgresql.driver>9.4-1205-jdbc42</version.postgresql.driver>
|
<version.postgresql.driver>9.4-1205-jdbc42</version.postgresql.driver>
|
||||||
|
<version.postgresql.server>9.4</version.postgresql.server>
|
||||||
<version.mysql.server>5.7</version.mysql.server>
|
<version.mysql.server>5.7</version.mysql.server>
|
||||||
<version.mysql.driver>5.1.37</version.mysql.driver>
|
<version.mysql.driver>5.1.37</version.mysql.driver>
|
||||||
<version.mysql.binlog>0.2.4</version.mysql.binlog>
|
<version.mysql.binlog>0.2.4</version.mysql.binlog>
|
||||||
|
Loading…
Reference in New Issue
Block a user