2022-06-27 15:54:45 +00:00
<?xml version="1.0"?>
<project xsi:schemaLocation= "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion > 4.0.0</modelVersion>
2022-01-12 08:06:10 +00:00
<parent >
<artifactId > keycloak-parent</artifactId>
<groupId > org.keycloak</groupId>
2023-03-03 10:11:44 +00:00
<version > 999.0.0-SNAPSHOT</version>
2022-05-10 13:25:01 +00:00
<relativePath > ../pom.xml</relativePath>
2022-01-12 08:06:10 +00:00
</parent>
2022-06-27 15:54:45 +00:00
<name > Keycloak Operator</name>
<artifactId > keycloak-operator</artifactId>
<properties >
<!--
Override versions based on Quarkus dependencies.
Make sure to update these dependencies when Quarkus version changes.
See https://github.com/quarkusio/quarkus/blob/<versionTag > /bom/application/pom.xml
for reference
-->
<wildfly.common.version > 1.5.4.Final-format-001</wildfly.common.version>
2023-06-06 13:58:20 +00:00
<kubernetes-client.version > 6.6.2</kubernetes-client.version>
2022-06-27 15:54:45 +00:00
<compiler-plugin.version > 3.8.1</compiler-plugin.version>
<maven.compiler.parameters > true</maven.compiler.parameters>
<maven.compiler.release > 11</maven.compiler.release>
<maven.compiler.source > 11</maven.compiler.source>
<maven.compiler.target > 11</maven.compiler.target>
<project.build.sourceEncoding > UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding > UTF-8</project.reporting.outputEncoding>
2023-06-30 12:05:02 +00:00
<quarkus.operator.sdk.version > 6.2.0</quarkus.operator.sdk.version>
<quarkus.operator.build.version > 3.2.0.Final</quarkus.operator.build.version>
2022-06-27 15:54:45 +00:00
<quarkus.container-image.group > keycloak</quarkus.container-image.group>
</properties>
<dependencyManagement >
<dependencies >
2023-05-02 16:35:51 +00:00
<dependency >
<groupId > io.quarkiverse.operatorsdk</groupId>
<artifactId > quarkus-operator-sdk-bom</artifactId>
<version > ${quarkus.operator.sdk.version}</version>
<type > pom</type>
<scope > import</scope>
</dependency>
2022-06-27 15:54:45 +00:00
</dependencies>
</dependencyManagement>
<dependencies >
<!-- Fabric8 -->
<dependency >
<groupId > io.fabric8</groupId>
<artifactId > crd-generator-api</artifactId>
<version > ${kubernetes-client.version}</version>
</dependency>
<dependency >
<groupId > io.fabric8</groupId>
<artifactId > crd-generator-apt</artifactId>
<version > ${kubernetes-client.version}</version>
</dependency>
2023-06-29 14:55:11 +00:00
<dependency >
<groupId > io.fabric8</groupId>
<artifactId > kubernetes-junit-jupiter</artifactId>
<version > ${kubernetes-client.version}</version>
<scope > test</scope>
</dependency>
2022-06-27 15:54:45 +00:00
<!-- Quarkus -->
<dependency >
<groupId > io.quarkiverse.operatorsdk</groupId>
<artifactId > quarkus-operator-sdk</artifactId>
</dependency>
2023-05-30 21:01:12 +00:00
<dependency >
<groupId > io.quarkiverse.operatorsdk</groupId>
<artifactId > quarkus-operator-sdk-bundle-generator</artifactId>
</dependency>
2022-06-27 15:54:45 +00:00
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-resteasy-jackson</artifactId>
</dependency>
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-rest-client</artifactId>
</dependency>
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-rest-client-jackson</artifactId>
</dependency>
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-openshift</artifactId>
</dependency>
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-minikube</artifactId>
</dependency>
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-kubernetes-client</artifactId>
</dependency>
2023-04-21 06:32:29 +00:00
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-container-image-docker</artifactId>
</dependency>
2022-06-27 15:54:45 +00:00
<!-- Keycloak -->
<dependency >
<groupId > org.keycloak</groupId>
2023-06-08 14:12:43 +00:00
<artifactId > keycloak-core</artifactId>
2022-06-27 15:54:45 +00:00
</dependency>
2022-08-24 09:51:39 +00:00
<!-- FIXME: Adding BC for now as removing the Bouncycastle dependencies from the operator makes it unusable on K3s and possibly on other kubernetes distributions (e.g. Rancher is based on K3s). -->
<dependency >
<groupId > org.bouncycastle</groupId>
<artifactId > bcprov-jdk15on</artifactId>
</dependency>
<dependency >
<groupId > org.bouncycastle</groupId>
<artifactId > bcpkix-jdk15on</artifactId>
</dependency>
2022-06-27 15:54:45 +00:00
<!-- Test -->
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-test-common</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-junit5</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.assertj</groupId>
<artifactId > assertj-core</artifactId>
<version > ${assertj-core.version}</version>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.awaitility</groupId>
<artifactId > awaitility</artifactId>
<version > ${awaitility.version}</version>
<scope > test</scope>
</dependency>
<dependency >
<groupId > io.rest-assured</groupId>
<artifactId > rest-assured</artifactId>
<scope > test</scope>
</dependency>
</dependencies>
<build >
<pluginManagement >
<plugins >
<plugin >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-maven-plugin</artifactId>
2023-05-18 14:37:55 +00:00
<version > ${quarkus.operator.build.version}</version>
2022-06-27 15:54:45 +00:00
</plugin>
<plugin >
<artifactId > maven-compiler-plugin</artifactId>
<version > ${compiler-plugin.version}</version>
</plugin>
</plugins>
</pluginManagement>
<plugins >
<plugin >
<groupId > io.quarkus</groupId>
<artifactId > quarkus-maven-plugin</artifactId>
2023-05-18 14:37:55 +00:00
<version > ${quarkus.operator.build.version}</version>
2022-06-27 15:54:45 +00:00
<executions >
<execution >
<goals >
<goal > build</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin >
<artifactId > maven-resources-plugin</artifactId>
<executions >
<execution >
<id > copy-resources</id>
<phase > validate</phase>
<goals >
<goal > copy-resources</goal>
</goals>
<configuration >
<outputDirectory > ${basedir}/target</outputDirectory>
<resources >
<resource >
<directory > src/main/kubernetes</directory>
<filtering > true</filtering>
</resource>
</resources>
</configuration>
</execution>
2023-04-21 06:32:29 +00:00
<execution >
<id > copy-ubi-null</id>
<phase > validate</phase>
<goals >
<goal > copy-resources</goal>
</goals>
<configuration >
<outputDirectory > ${project.build.directory}</outputDirectory>
<resources >
<resource >
<directory > ${basedir}/../quarkus/container/</directory>
<includes >
<include > **/ubi-null.sh</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
2022-06-27 15:54:45 +00:00
</executions>
</plugin>
2022-01-27 09:56:46 +00:00
2022-06-27 15:54:45 +00:00
<plugin >
<groupId > org.codehaus.mojo</groupId>
<artifactId > build-helper-maven-plugin</artifactId>
<version > 3.2.0</version>
<executions >
<execution >
<phase > generate-sources</phase>
<goals >
<goal > add-source</goal>
</goals>
<configuration >
<sources >
<source > ${basedir}/target/generated-sources/java</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
2022-01-27 09:56:46 +00:00
2022-06-27 15:54:45 +00:00
<plugin >
<artifactId > maven-surefire-plugin</artifactId>
<executions >
<!--
need to run at "verify" to support testing with images (which are built at "package")
using surefire instead of failsafe to align with rest of the KC project
-->
<execution >
<id > default-test</id>
<phase > verify</phase>
<goals >
<goal > test</goal>
</goals>
</execution>
</executions>
2023-06-01 11:39:41 +00:00
<configuration >
<systemPropertyVariables >
<!-- Used in KeycloakDeploymentTest#testPreconfiguredPodLabels -->
<OPERATOR_TEST_LABEL_EXPRESSION > my-value</OPERATOR_TEST_LABEL_EXPRESSION>
</systemPropertyVariables>
</configuration>
2022-06-27 15:54:45 +00:00
</plugin>
2023-06-08 14:12:43 +00:00
<plugin >
<artifactId > maven-antrun-plugin</artifactId>
<executions >
<execution >
<id > filterEnum</id>
<phase > package</phase>
<configuration >
<target >
<replaceregexp file= "${project.build.directory}/kubernetes/keycloakrealmimports.k8s.keycloak.org-v1.yml"
match="[^\n]*- ENUM\$VALUES\s*\n"
flags="g"
replace=""/>
</target>
</configuration>
<goals >
<goal > run</goal>
</goals>
</execution>
</executions>
</plugin>
2023-04-21 06:32:29 +00:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-assembly-plugin</artifactId>
<executions >
<execution >
2023-05-30 21:01:12 +00:00
<id > assemble-quarkus</id>
2023-04-21 06:32:29 +00:00
<phase > package</phase>
<goals >
<goal > single</goal>
</goals>
<configuration >
<descriptors >
<descriptor > assembly.xml</descriptor>
</descriptors>
<appendAssemblyId > false</appendAssemblyId>
<workDirectory > ${project.build.directory}/assembly/work</workDirectory>
</configuration>
</execution>
2023-05-30 21:01:12 +00:00
<execution >
<id > assemble-bundle</id>
<phase > package</phase>
<goals >
<goal > single</goal>
</goals>
<configuration >
<descriptors >
<descriptor > olm-assembly.xml</descriptor>
</descriptors>
<appendAssemblyId > true</appendAssemblyId>
<workDirectory > ${project.build.directory}/bundle-assembly/work</workDirectory>
</configuration>
</execution>
2023-04-21 06:32:29 +00:00
</executions>
</plugin>
2022-06-27 15:54:45 +00:00
</plugins>
</build>
<profiles >
<profile >
2023-06-01 11:39:41 +00:00
<id > operator-prod</id>
2022-06-27 15:54:45 +00:00
<properties >
2023-06-01 11:39:41 +00:00
<quarkus.profile > rhbk</quarkus.profile>
2022-06-27 15:54:45 +00:00
</properties>
</profile>
</profiles>
2022-01-12 08:06:10 +00:00
</project>