pom.xml

805 lines | 44.264 kB Blame History Raw Download
<?xml version="1.0"?>
<!--
~ Copyright 2016 Red Hat, Inc. and/or its affiliates
~ and other contributors as indicated by the @author tags.
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->

<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">
    <parent>
        <groupId>org.keycloak.testsuite</groupId>
        <artifactId>integration-arquillian-servers-auth-server</artifactId>
        <version>2.5.9.Final-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <packaging>pom</packaging>

    <artifactId>integration-arquillian-servers-auth-server-jboss</artifactId>

    <name>Auth Server - JBoss</name>

    <properties>
        <common.resources>${project.parent.basedir}/common</common.resources>
        <assembly.xml>${project.parent.basedir}/assembly.xml</assembly.xml>

        <!--server-dist-->
        <auth.server.dist.groupId>org.keycloak</auth.server.dist.groupId>
        <auth.server.dist.artifactId>keycloak-server-dist</auth.server.dist.artifactId>
        <auth.server.dist.version>${project.version}</auth.server.dist.version>
        <auth.server.dist.unpacked.folder.name>keycloak-${auth.server.dist.version}</auth.server.dist.unpacked.folder.name>

        <!--server-overlay-->
        <auth.server.overlay.groupId>org.keycloak</auth.server.overlay.groupId>
        <auth.server.overlay.artifactId>keycloak-server-overlay</auth.server.overlay.artifactId>
        <auth.server.overlay.version>${project.version}</auth.server.overlay.version>

        <overlaid.container.groupId>org.wildfly</overlaid.container.groupId>
        <overlaid.container.artifactId>wildfly-dist</overlaid.container.artifactId>
        <overlaid.container.version>${wildfly.version}</overlaid.container.version>
        <overlaid.container.unpacked.folder.name>wildfly-${overlaid.container.version}</overlaid.container.unpacked.folder.name>

        <!--actual unpacked artifact: server-dist by default, overriden in server-overlay profile-->
        <unpacked.artifact.groupId>${auth.server.dist.groupId}</unpacked.artifact.groupId>
        <unpacked.artifact.artifactId>${auth.server.dist.artifactId}</unpacked.artifact.artifactId>
        <unpacked.artifact.version>${auth.server.dist.version}</unpacked.artifact.version>

        <auth.server.home>${project.build.directory}/unpacked/${auth.server.dist.unpacked.folder.name}</auth.server.home>

        <!--used in profile auth-server-cluster. profile jpa sets this to true-->
        <skip.h2.tcp>false</skip.h2.tcp>

        <security.xsl>security.xsl</security.xsl>
    </properties>

    <profiles>

        <profile>
            <id>auth-server-jboss-submodules</id>
            <activation>
                <file>
                    <exists>src</exists>
                </file>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-deploy-plugin</artifactId>
                        <configuration>
                            <skip>true</skip>
                        </configuration>
                    </plugin>
                    <plugin>
                        <artifactId>maven-dependency-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>unpack-server-or-overlay</id>
                                <phase>generate-resources</phase>
                                <goals>
                                    <goal>unpack</goal>
                                </goals>
                                <configuration>
                                    <artifactItems>
                                        <artifactItem>
                                            <groupId>${unpacked.artifact.groupId}</groupId>
                                            <artifactId>${unpacked.artifact.artifactId}</artifactId>
                                            <version>${unpacked.artifact.version}</version>
                                            <type>zip</type>
                                            <outputDirectory>${project.build.directory}/unpacked</outputDirectory>
                                        </artifactItem>
                                    </artifactItems>
                                    <excludes>**/product.conf</excludes>
                                </configuration>
                            </execution>
                            <execution>
                                <id>copy-testsuite-providers</id>
                                <phase>generate-resources</phase>
                                <goals>
                                    <goal>copy</goal>
                                </goals>
                                <configuration>
                                    <artifactItems>
                                        <artifactItem>
                                            <groupId>org.keycloak.testsuite</groupId>
                                            <artifactId>integration-arquillian-testsuite-providers</artifactId>
                                            <version>${project.version}</version>
                                            <type>jar</type>
                                            <overWrite>false</overWrite>
                                            <outputDirectory>${auth.server.home}/modules/org/keycloak/testsuite/integration-arquillian-testsuite-providers/main</outputDirectory>
                                        </artifactItem>
                                    </artifactItems>
                                </configuration>
                            </execution>
                            <execution>
                                <id>install-testsuite-providers-module</id>
                                <phase>generate-resources</phase>
                                <goals>
                                    <goal>unpack</goal>
                                </goals>
                                <configuration>
                                    <artifactItems>
                                        <artifactItem>
                                            <groupId>org.keycloak.testsuite</groupId>
                                            <artifactId>integration-arquillian-testsuite-providers</artifactId>
                                            <version>${project.version}</version>
                                            <type>jar</type>
                                            <outputDirectory>${auth.server.home}/modules</outputDirectory>
                                            <includes>**/module.xml</includes>
                                        </artifactItem>
                                    </artifactItems>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-enforcer-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>xml-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>io-worker-threads</id>
                                <phase>process-resources</phase>
                                <goals>
                                    <goal>transform</goal>
                                </goals>
                                <configuration>
                                    <transformationSets>
                                        <transformationSet>
                                            <dir>${auth.server.home}/standalone/configuration</dir>
                                            <includes>
                                                <include>standalone.xml</include>
                                                <include>standalone-ha.xml</include>
                                            </includes>
                                            <stylesheet>${common.resources}/io.xsl</stylesheet>
                                            <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                            <parameters>
                                                <parameter>
                                                    <name>worker.io-threads</name>
                                                    <value>${auth.server.worker.io-threads}</value>
                                                </parameter>
                                                <parameter>
                                                    <name>worker.task-max-threads</name>
                                                    <value>${auth.server.worker.task-max-threads}</value>
                                                </parameter>
                                            </parameters>
                                        </transformationSet>
                                    </transformationSets>
                                </configuration>
                            </execution>
                            <execution>
                                <id>inject-provider-and-truststore</id>
                                <phase>process-resources</phase>
                                <goals>
                                    <goal>transform</goal>
                                </goals>
                                <configuration>
                                    <transformationSets>
                                        <transformationSet>
                                            <dir>${auth.server.home}/standalone/configuration</dir>
                                            <includes>
                                                <include>standalone.xml</include>
                                            </includes>
                                            <stylesheet>${common.resources}/keycloak-server-subsystem.xsl</stylesheet>
                                            <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                        </transformationSet>
                                    </transformationSets>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-resources-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>enable-jboss-mgmt-admin</id>
                                <phase>process-resources</phase>
                                <goals>
                                    <goal>copy-resources</goal>
                                </goals>
                                <configuration>
                                    <outputDirectory>${auth.server.home}/standalone/configuration</outputDirectory>
                                    <resources>
                                        <resource>
                                            <directory>${common.resources}</directory>
                                            <includes>
                                                <include>mgmt-users.properties</include>
                                            </includes>
                                        </resource>
                                    </resources>
                                    <overwrite>true</overwrite>
                                </configuration>
                            </execution>
                            <execution>
                                <id>copy-keystore</id>
                                <phase>process-resources</phase>
                                <goals>
                                    <goal>copy-resources</goal>
                                </goals>
                                <configuration>
                                    <outputDirectory>${auth.server.home}/standalone/configuration</outputDirectory>
                                    <resources>
                                        <resource>
                                            <directory>${common.resources}/keystore</directory>
                                            <includes>
                                                <include>keycloak.jks</include>
                                                <include>keycloak.truststore</include>
                                            </includes>
                                        </resource>
                                    </resources>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>exec-maven-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>create-zip</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>single</goal>
                                </goals>
                                <configuration>
                                    <descriptors>
                                        <descriptor>${assembly.xml}</descriptor>
                                    </descriptors>
                                    <appendAssemblyId>false</appendAssemblyId>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <!-- OPT-IN -->
        <profile>
            <id>server-overlay</id>
            <activation>
                <property>
                    <name>server-overlay</name>
                </property>
            </activation>
            <properties>
                <!--override default unpacked artifact with server-overlay-->
                <unpacked.artifact.groupId>${overlaid.container.groupId}</unpacked.artifact.groupId>
                <unpacked.artifact.artifactId>${overlaid.container.artifactId}</unpacked.artifact.artifactId>
                <unpacked.artifact.version>${overlaid.container.version}</unpacked.artifact.version>
                <auth.server.home>${project.build.directory}/unpacked/${overlaid.container.unpacked.folder.name}</auth.server.home>
            </properties>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <artifactId>maven-dependency-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>unpack-overlaid-container</id>
                                    <phase>generate-resources</phase>
                                    <goals>
                                        <goal>unpack</goal>
                                    </goals>
                                    <configuration>
                                        <artifactItems>
                                            <artifactItem>
                                                <groupId>${auth.server.overlay.groupId}</groupId>
                                                <artifactId>${auth.server.overlay.artifactId}</artifactId>
                                                <version>${auth.server.overlay.version}</version>
                                                <type>zip</type>
                                                <overWrite>true</overWrite>
                                                <outputDirectory>${project.build.directory}/unpacked/${overlaid.container.unpacked.folder.name}</outputDirectory>
                                            </artifactItem>
                                        </artifactItems>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                        <plugin>
                            <groupId>org.codehaus.mojo</groupId>
                            <artifactId>exec-maven-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>install-server-overlay</id>
                                    <phase>generate-resources</phase>
                                    <goals>
                                        <goal>exec</goal>
                                    </goals>
                                </execution>
                            </executions>
                            <configuration>
                                <executable>${common.resources}/install-keycloak.${script.suffix}</executable>
                                <workingDirectory>${auth.server.home}/bin</workingDirectory>
                                <environmentVariables>
                                    <JAVA_HOME>${auth.server.java.home}</JAVA_HOME>
                                    <JBOSS_HOME>${auth.server.home}</JBOSS_HOME>
                                </environmentVariables>
                            </configuration>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>

        <profile>
            <id>ssl</id>
            <activation>
                <property>
                    <name>auth.server.ssl.required</name>
                </property>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.codehaus.mojo</groupId>
                            <artifactId>xml-maven-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>configure-adapter-subsystem-security</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>transform</goal>
                                    </goals>
                                    <configuration>
                                        <transformationSets>
                                            <transformationSet>
                                                <dir>${auth.server.home}/standalone/configuration</dir>
                                                <includes>
                                                    <include>standalone.xml</include>
                                                </includes>
                                                <stylesheet>${common.resources}/${security.xsl}</stylesheet>
                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                            </transformationSet>
                                        </transformationSets>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                        <plugin>
                            <artifactId>maven-resources-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>copy-keystore</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>copy-resources</goal>
                                    </goals>
                                    <configuration>
                                        <outputDirectory>${auth.server.home}/standalone/configuration</outputDirectory>
                                        <resources>
                                            <resource>
                                                <directory>${common.resources}/keystore</directory>
                                                <includes>
                                                    <include>keycloak.jks</include>
                                                    <include>keycloak.truststore</include>
                                                </includes>
                                            </resource>
                                        </resources>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>

        <profile>
            <id>jpa</id>
            <properties>
                <jdbc.mvn.driver.deployment.dir>${auth.server.home}/modules/system/layers/base/com/${jdbc.mvn.artifactId}/main</jdbc.mvn.driver.deployment.dir>
                <skip.h2.tcp>true</skip.h2.tcp>
            </properties>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <artifactId>maven-enforcer-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>enforce-properties</id>
                                    <goals>
                                        <goal>enforce</goal>
                                    </goals>
                                    <configuration>
                                        <rules>
                                            <requireProperty>
                                                <property>jdbc.mvn.groupId</property>
                                            </requireProperty>
                                            <requireProperty>
                                                <property>jdbc.mvn.artifactId</property>
                                            </requireProperty>
                                            <requireProperty>
                                                <property>jdbc.mvn.version</property>
                                            </requireProperty>
                                            <requireProperty>
                                                <property>keycloak.connectionsJpa.user</property>
                                            </requireProperty>
                                            <requireProperty>
                                                <property>keycloak.connectionsJpa.password</property>
                                            </requireProperty>
                                            <requireProperty>
                                                <property>keycloak.connectionsJpa.url</property>
                                            </requireProperty>
                                        </rules>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                        <plugin>
                            <artifactId>maven-dependency-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>jdbc-driver</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>copy</goal>
                                    </goals>
                                    <configuration>
                                        <artifactItems>
                                            <artifactItem>
                                                <groupId>${jdbc.mvn.groupId}</groupId>
                                                <artifactId>${jdbc.mvn.artifactId}</artifactId>
                                                <version>${jdbc.mvn.version}</version>
                                                <type>jar</type>
                                            </artifactItem>
                                        </artifactItems>
                                        <outputDirectory>${jdbc.mvn.driver.deployment.dir}</outputDirectory>
                                        <overWriteIfNewer>true</overWriteIfNewer>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                        <plugin>
                            <groupId>org.codehaus.mojo</groupId>
                            <artifactId>xml-maven-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>configure-wildfly-datasource</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>transform</goal>
                                    </goals>
                                    <configuration>
                                        <transformationSets>
                                            <!-- create module.xml in modules -->
                                            <transformationSet>
                                                <dir>${auth.server.home}/modules/system/layers/base/com/h2database/h2/main</dir>
                                                <stylesheet>src/main/resources/xslt/module.xsl</stylesheet>
                                                <includes>
                                                    <include>module.xml</include>
                                                </includes>
                                                <outputDir>${jdbc.mvn.driver.deployment.dir}</outputDir>
                                                <parameters>
                                                    <parameter>
                                                        <name>database</name>
                                                        <value>${jdbc.mvn.artifactId}</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>version</name>
                                                        <value>${jdbc.mvn.version}</value>
                                                    </parameter>
                                                </parameters>
                                            </transformationSet>
                                            <!-- add datasource to standalone.xml -->
                                            <transformationSet>
                                                <dir>${auth.server.home}/standalone/configuration</dir>
                                                <stylesheet>${common.resources}/datasource.xsl</stylesheet>
                                                <includes>
                                                    <include>standalone.xml</include>
                                                    <include>standalone-ha.xml</include>
                                                </includes>
                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                                <parameters>
                                                    <parameter>
                                                        <name>db.jdbc_url</name>
                                                        <value>${keycloak.connectionsJpa.url}</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>driver</name>
                                                        <value>${jdbc.mvn.artifactId}</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>username</name>
                                                        <value>${keycloak.connectionsJpa.user}</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>password</name>
                                                        <value>${keycloak.connectionsJpa.password}</value>
                                                    </parameter>
                                                </parameters>
                                            </transformationSet>
                                            <!-- add logger for org.hibernate.dialect.Dialect -->
                                            <transformationSet>
                                                <dir>${auth.server.home}/standalone/configuration</dir>
                                                <stylesheet>${common.resources}/add-dialect-logger.xsl</stylesheet>
                                                <includes>
                                                    <include>standalone.xml</include>
                                                </includes>
                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                            </transformationSet>
                                        </transformationSets>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>
        
        <profile>
            <id>migration-manual</id>
            <activation>
                <property>
                    <name>migration.mode</name>
                    <value>manual</value>
                </property>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.codehaus.mojo</groupId>
                            <artifactId>xml-maven-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>set-manual-migration-strategy</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>transform</goal>
                                    </goals>
                                    <configuration>
                                        <skip></skip>
                                        <transformationSets>
                                            <transformationSet>
                                                <dir>${auth.server.home}/standalone/configuration</dir>
                                                <includes>
                                                    <include>standalone.xml</include>
                                                </includes>
                                                <stylesheet>${common.resources}/migration-strategy.xsl</stylesheet>
                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                                <parameters>
                                                    <parameter>
                                                        <name>migration.strategy</name>
                                                        <value>manual</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>initialize.empty</name>
                                                        <value>false</value>
                                                    </parameter>
                                                </parameters>
                                            </transformationSet>
                                        </transformationSets>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                
                    </plugins>
                </pluginManagement>
            </build>
        </profile>
        
        <profile>
            <id>auth-server-apply-patch</id>
            <activation>
                <property>
                    <name>auth.server.patch.zips</name>
                </property>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.codehaus.mojo</groupId>
                            <artifactId>exec-maven-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>install-patch</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>exec</goal>
                                    </goals>
                                </execution>
                            </executions>
                            <configuration>
                                <executable>${common.resources}/install-patch.${script.suffix}</executable>
                                <workingDirectory>${auth.server.home}/bin</workingDirectory>
                                <environmentVariables>
                                    <JAVA_HOME>${auth.server.java.home}</JAVA_HOME>
                                    <JBOSS_HOME>${auth.server.home}</JBOSS_HOME>
                                    <AUTH_PATCH_ZIPS>${auth.server.patch.zips}</AUTH_PATCH_ZIPS>
                                </environmentVariables>
                            </configuration>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>
        <profile>
            <id>auth-server-cluster</id>
            <properties>
                <session.cache.owners>1</session.cache.owners>
                <offline.session.cache.owners>1</offline.session.cache.owners>
                <login.failure.cache.owners>1</login.failure.cache.owners>

                <load.metric>simple</load.metric>
                <!-- The default value 'simple' configures mod-cluster with simple-load-provider.
                Any other value configures it with dynamic-load-provider using the particular `load.metric`.
                Supported metrics: https://docs.jboss.org/mod_cluster/1.2.0/html/java.AS7config.html#LoadMetric -->

            </properties>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.codehaus.mojo</groupId>
                            <artifactId>xml-maven-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>jpa-h2-tcp</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>transform</goal>
                                    </goals>
                                    <configuration>
                                        <transformationSets>
                                            <transformationSet>
                                                <dir>${auth.server.home}/standalone/configuration</dir>
                                                <includes>
                                                    <include>standalone-ha.xml</include>
                                                </includes>
                                                <stylesheet>${common.resources}/datasource-jdbc-url.xsl</stylesheet>
                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                                <parameters>
                                                    <parameter>
                                                        <name>pool.name</name>
                                                        <value>KeycloakDS</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>jdbc.url</name>
                                                        <value>jdbc:h2:tcp://${jboss.bind.address:localhost}:9092/mem:keycloak;DB_CLOSE_DELAY=-1</value>
                                                    </parameter>
                                                </parameters>
                                            </transformationSet>
                                        </transformationSets>
                                        <skip>${skip.h2.tcp}</skip>
                                    </configuration>
                                </execution>
                                <execution>
                                    <id>keycloak-ispn-caches</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>transform</goal>
                                    </goals>
                                    <configuration>
                                        <transformationSets>
                                            <transformationSet>
                                                <dir>${auth.server.home}/standalone/configuration</dir>
                                                <includes>
                                                    <include>standalone-ha.xml</include>
                                                </includes>
                                                <stylesheet>${common.resources}/ispn-cache-owners.xsl</stylesheet>
                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                                <parameters>
                                                    <parameter>
                                                        <name>sessionCacheOwners</name>
                                                        <value>${session.cache.owners}</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>offlineSessionCacheOwners</name>
                                                        <value>${offline.session.cache.owners}</value>
                                                    </parameter>
                                                    <parameter>
                                                        <name>loginFailureCacheOwners</name>
                                                        <value>${login.failure.cache.owners}</value>
                                                    </parameter>
                                                </parameters>
                                            </transformationSet>
                                        </transformationSets>
                                    </configuration>
                                </execution>
                                <execution>
                                    <id>mod-cluster-configuration</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>transform</goal>
                                    </goals>
                                    <configuration>
                                        <transformationSets>
                                            <transformationSet>
                                                <dir>${auth.server.home}/standalone/configuration</dir>
                                                <includes>
                                                    <include>standalone-ha.xml</include>
                                                </includes>
                                                <stylesheet>${common.resources}/mod_cluster.xsl</stylesheet>
                                                <outputDir>${auth.server.home}/standalone/configuration</outputDir>
                                                <parameters>
                                                    <parameter>
                                                        <name>load.metric</name>
                                                        <value>${load.metric}</value>
                                                    </parameter>
                                                </parameters>
                                            </transformationSet>
                                        </transformationSets>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>

        <profile>
            <id>admin</id>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <artifactId>maven-resources-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>copy-keycloak-add-user-json</id>
                                    <phase>process-resources</phase>
                                    <goals>
                                        <goal>copy-resources</goal>
                                    </goals>
                                    <configuration>
                                        <outputDirectory>${auth.server.home}/standalone/configuration</outputDirectory>
                                        <resources>
                                            <resource>
                                                <directory>${common.resources}</directory>
                                                <includes>
                                                    <include>keycloak-add-user.json</include>
                                                </includes>
                                            </resource>
                                        </resources>
                                        <overwrite>true</overwrite>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>

        <profile>
            <id>auth-server-wildfly</id>
            <properties>
                <security.xsl>security-wildfly.xsl</security.xsl>
            </properties>
            <modules>
                <module>wildfly</module>
            </modules>
        </profile>
        <profile>
            <id>auth-server-eap</id>
            <modules>
                <module>eap</module>
            </modules>
        </profile>

    </profiles>
</project>