<?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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>de.cuioss</groupId>
        <artifactId>cui-java-parent</artifactId>
        <version>1.4.0</version>
        <relativePath />
    </parent>
    <groupId>de.cuioss.test</groupId>
    <artifactId>cui-test-keycloak-integration</artifactId>
    <name>Keycloak Integration Testing</name>
    <version>1.3.0</version>
    <description>Simple project unifying / configuring integration tests using testcontainers and keycloak. Or to put it
        another way: Copy-Paste-Prevention.
    </description>
    <packaging>jar</packaging>
    <url>https://github.com/cuioss/cui-test-keycloak-integration/</url>
    <scm>
        <url>https://github.com/cuioss/cui-test-keycloak-integration/</url>
        <connection>
            scm:git:https://github.com/cuioss/cui-test-keycloak-integration.git
        </connection>
        <developerConnection>
            scm:git:https://github.com/cuioss/cui-test-keycloak-integration/
        </developerConnection>
        <tag>1.3.0</tag>
    </scm>
    <issueManagement>
        <url>https://github.com/cuioss/cui-test-keycloak-integration/issues</url>
        <system>GitHub Issues</system>
    </issueManagement>
    <properties>
        <maven.jar.plugin.automatic.module.name>de.cuioss.test.keycloakit</maven.jar.plugin.automatic.module.name>
        <version.testcontainers-keycloak>4.1.1</version.testcontainers-keycloak>
        <version.testcontainer>2.0.3</version.testcontainer>
        <!-- Fixes the problem:
    Error: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.21.0:site (default-site) on project portal.authentication.token: Failed to render site: Error generating maven-javadoc-plugin:3.11.1:javadoc report: Unable to derive module descriptor for /home/runner/.m2/repository/org/jboss/shrinkwrap/shrinkwrap-impl-base/2.0.0-beta-2/shrinkwrap-impl-base-2.0.0-beta-2.jar: Provider class implementingClassName=org.jboss.shrinkwrap.impl.base.importer.zip.ZipImporterImpl not in module -> [Help 1]-->
        <maven.javadoc.plugin.legacyMode>true</maven.javadoc.plugin.legacyMode>
        <!-- For some reason, the fix above will be ignored by the mvn-site-plugin-->
        <maven.site.plugin.generateReports>false</maven.site.plugin.generateReports>
        <sonar.coverage.exclusions>src/main/java/de/cuioss/test/keycloakit/TestRealm.java
        </sonar.coverage.exclusions>
    </properties>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.testcontainers</groupId>
                <artifactId>testcontainers</artifactId>
                <version>${version.testcontainer}</version>
            </dependency>
            <dependency>
                <groupId>com.github.dasniko</groupId>
                <artifactId>testcontainers-keycloak</artifactId>
                <version>${version.testcontainers-keycloak}</version>
            </dependency>
            <dependency>
                <groupId>org.testcontainers</groupId>
                <artifactId>testcontainers-junit-jupiter</artifactId>
                <version>${version.testcontainer}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>de.cuioss</groupId>
                <artifactId>java-ee-orthogonal</artifactId>
                <version>${version.cui.parent}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <dependency>
            <groupId>de.cuioss</groupId>
            <artifactId>cui-java-tools</artifactId>
        </dependency>
        <dependency>
            <groupId>com.github.dasniko</groupId>
            <artifactId>testcontainers-keycloak</artifactId>
            <!-- Here we need 'compile', because we create a usable baseclass-->
            <!-- The alternative 'provided' would force the client to declare both dependencies -->
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.testcontainers</groupId>
            <artifactId>testcontainers</artifactId>
            <!-- See testcontainers-keycloak-->
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.testcontainers</groupId>
            <artifactId>testcontainers-junit-jupiter</artifactId>
            <!-- See testcontainers-keycloak-->
            <scope>compile</scope>
        </dependency>
        <!-- Test -->
        <dependency>
            <groupId>io.rest-assured</groupId>
            <artifactId>rest-assured</artifactId>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
        </dependency>
        <!-- Simple implementation that is actually a bridge to juli logging. Used for test-containers slf4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jdk14</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- Bridge jakarta-commons logging  to slf4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>
