<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you 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 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">

  <modelVersion>4.0.0</modelVersion>

  <name>Apache Syncope</name>
  <description>Apache Syncope parent POM</description>

  <groupId>org.apache.syncope</groupId>
  <artifactId>syncope</artifactId>
  <version>4.0.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>32</version>
    <relativePath />
  </parent>

  <url>https://syncope.apache.org/</url>

  <inceptionYear>2010</inceptionYear>

  <licenses>
    <license>
      <name>Apache-2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <scm>
    <connection>scm:git:https://gitbox.apache.org/repos/asf/syncope.git</connection>
    <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/syncope.git</developerConnection>
    <url>https://gitbox.apache.org/repos/asf?p=syncope.git</url>
    <tag>HEAD</tag>
  </scm>

  <issueManagement>
    <system>jira</system>
    <url>https://issues.apache.org/jira/browse/SYNCOPE</url>
  </issueManagement>

  <ciManagement>
    <system>Jenkins</system>
    <url>https://ci-builds.apache.org./job/Syncope/</url>
  </ciManagement>

  <distributionManagement>
    <site>
      <id>syncope.website</id>
      <name>Apache Syncope website</name>
      <url>${site.deploymentBaseUrl}</url>
    </site>
  </distributionManagement>

  <mailingLists>
    <mailingList>
      <name>Syncope User List</name>
      <subscribe>user-subscribe@syncope.apache.org</subscribe>
      <unsubscribe>user-unsubscribe@syncope.apache.org</unsubscribe>
      <post>user@syncope.apache.org</post>
      <archive>https://lists.apache.org/list.html?user@syncope.apache.org</archive>
      <otherArchives>
        <otherArchive>https://syncope.markmail.org/</otherArchive>
        <otherArchive>http://www.mail-archive.com/user@syncope.apache.org/</otherArchive>
      </otherArchives>
    </mailingList>
    <mailingList>
      <name>Syncope Developer List</name>
      <subscribe>dev-subscribe@syncope.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@syncope.apache.org</unsubscribe>
      <post>dev@syncope.apache.org</post>
      <archive>https://lists.apache.org/list.html?dev@syncope.apache.org</archive>
      <otherArchives>
        <otherArchive>https://syncope.markmail.org/</otherArchive>
        <otherArchive>http://www.mail-archive.com/dev@syncope.apache.org/</otherArchive>
      </otherArchives>
    </mailingList>
    <mailingList>
      <name>Syncope Commits List</name>
      <subscribe>commits-subscribe@syncope.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@syncope.apache.org</unsubscribe>
      <post>commits@syncope.apache.org</post>
      <archive>https://lists.apache.org/list.html?commits@syncope.apache.org</archive>
      <otherArchives>
        <otherArchive>https://syncope.markmail.org/</otherArchive>
        <otherArchive>http://www.mail-archive.com/commits@syncope.apache.org/</otherArchive>
      </otherArchives>
    </mailingList>
  </mailingLists>

  <developers>
    <developer>
      <id>ilgrosso</id>
      <email>ilgrosso@apache.org</email>
      <name>Francesco Chicchiriccò</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>ASF member</role>
        <role>PMC chair</role>
      </roles>
      <url>http://home.apache.org/~ilgrosso/</url>
    </developer>
    <developer>
      <id>fmartelli</id>
      <name>Fabio Martelli</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~fmartelli/</url>
    </developer>
    <developer>
      <id>mdisabatino</id>
      <name>Marco Di Sabatino Di Diodoro</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~mdisabatino/</url>
    </developer>
    <developer>
      <id>massi</id>
      <name>Massimiliano Perrone</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~massi/</url>
    </developer>
    <developer>
      <id>rene</id>
      <name>René Mulder</name>
      <organization>Everett</organization>
      <organizationUrl>http://www.everett.nl/</organizationUrl>
      <roles>
        <role>committer</role>
      </roles>
      <url>http://people.apache.org/~rene/</url>
    </developer>
    <developer>
      <id>simonetripodi</id>
      <name>Simone Tripodi</name>
      <organization>The Apache Software Foundation</organization>
      <organizationUrl>http://www.apache.org/</organizationUrl>
      <roles>
        <role>ASF member</role>
        <role>Emeritus PMC member</role>
      </roles>
      <url>http://people.apache.org/~simonetripodi/</url>
    </developer>
    <developer>
      <id>elecharny</id>
      <name>Emmanuel Lecharny</name>
      <organization>The Apache Software Foundation</organization>
      <organizationUrl>http://www.apache.org/</organizationUrl>
      <roles>
        <role>ASF member</role>
        <role>Emeritus PMC member</role>
      </roles>
      <url>http://people.apache.org/~elecharny/</url>
    </developer>
    <developer>
      <id>anzelld</id>
      <name>Dino Anzellotti</name>
      <organization>Cambridge Technology Partners</organization>
      <organizationUrl>http://www.ctp.com/</organizationUrl>
      <roles>
        <role>committer</role>
      </roles>
      <url>http://people.apache.org/~anzelld/</url>
    </developer>
    <developer>
      <id>nscendoni</id>
      <name>Nicola Scendoni</name>
      <organization>The Apache Software Foundation</organization>
      <organizationUrl>http://www.apache.org/</organizationUrl>
      <roles>
        <role>committer</role>
      </roles>
    </developer>
    <developer>
      <id>coheigea</id>
      <name>Colm O hEigeartaigh</name>
      <organization>Talend</organization>
      <organizationUrl>http://www.talend.com/</organizationUrl>
      <roles>
        <role>ASF member</role>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~coheigea/</url>
    </developer>
    <developer>
      <id>jbonofre</id>
      <name>Jean-Baptiste Onofré</name>
      <organization>Talend</organization>
      <organizationUrl>http://www.talend.com/</organizationUrl>
      <roles>
        <role>ASF member</role>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~jbonofre/</url>
    </developer>
    <developer>
      <id>jbernhardt</id>
      <name>Jan Bernhardt</name>
      <organization>Talend</organization>
      <organizationUrl>http://www.talend.com/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~jbernhardt/</url>
    </developer>
    <developer>
      <id>ashakirin</id>
      <name>Andrei Shakirin</name>
      <organization>Talend</organization>
      <organizationUrl>http://www.talend.com/</organizationUrl>
      <roles>
        <role>committer</role>
      </roles>
      <url>http://ashakirin.blogspot.de/</url>
    </developer>
    <developer>
      <id>cschneider</id>
      <name>Christian Schneider</name>
      <organization>Talend</organization>
      <organizationUrl>http://www.talend.com/</organizationUrl>
      <roles>
        <role>committer</role>
      </roles>
      <url>http://www.liquid-reality.de/</url>
      <email>chris@die-schneider.net</email>
    </developer>
    <developer>
      <id>gwimmel</id>
      <name>Guido Wimmel</name>
      <organization>Stadtwerke München Services GmbH</organization>
      <organizationUrl>http://www.swm.de/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~gwimmel/</url>
      <email>gwimmel@apache.org</email>
    </developer>
    <developer>
      <id>andreapatricelli</id>
      <name>Andrea Patricelli</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~andreapatricelli/</url>
      <email>andreapatricelli@apache.org</email>
    </developer>
    <developer>
      <id>giacomolm</id>
      <name>Giacomo Lamonaco</name>
      <organization>Hippo, a BloomReach company</organization>
      <organizationUrl>http://www.onehippo.com/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~giacomolm/</url>
      <email>giacomolm@apache.org</email>
    </developer>
    <developer>
      <id>matteodc</id>
      <name>Matteo Di Carlo</name>
      <roles>
        <role>committer</role>
      </roles>
      <url>http://people.apache.org/~matteodc/</url>
      <email>matteodc@apache.org</email>
    </developer>
    <developer>
      <id>skylark17</id>
      <name>Matteo Alessandroni</name>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~skylark17/</url>
      <email>skylark17@apache.org</email>
    </developer>
    <developer>
      <id>loredicola</id>
      <name>Lorenzo Di Cola</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <url>http://people.apache.org/~loredicola/</url>
      <email>loredicola@apache.org</email>
    </developer>
    <developer>
      <id>dimaayash</id>
      <name>Dima Ayash</name>
      <roles>
        <role>committer</role>
      </roles>
      <email>dimaayash@apache.org</email>
    </developer>
    <developer>
      <id>mmoayyed</id>
      <name>Misagh Moayyed</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>committer</role>
      </roles>
      <email>mmoayyed@apache.org</email>
    </developer>
    <developer>
      <id>sgarofalo</id>
      <name>Samuel Garofalo</name>
      <organization>Tirasa</organization>
      <organizationUrl>https://www.tirasa.net/</organizationUrl>
      <roles>
        <role>PMC member</role>
      </roles>
      <email>sgarofalo@apache.org</email>
    </developer>
  </developers>
  <contributors>
    <contributor>
      <name>Denis Signoretto</name>
      <email>denis.signoretto@intesys.it</email>
      <organization>Intesys</organization>
      <organizationUrl>http://www.intesys.it/</organizationUrl>
    </contributor>
    <contributor>
      <name>Bob Lannoy</name>
      <email>bob.lannoy@smals.be</email>
      <organization>Smals</organization>
      <organizationUrl>http://www.smals.be/</organizationUrl>
      <url>http://blogresearch.smalsrech.be/</url>
    </contributor>
    <contributor>
      <name>Bruno Rogério de Moura</name>
      <email>brunormoura@gmail.com</email>
      <organization>Exprivia</organization>
      <organizationUrl>http://www.exprivia.it/home</organizationUrl>
      <url>http://br.linkedin.com/pub/bruno-moura/1b/2a/806</url>
    </contributor>
    <contributor>
      <name>Nicola Baiocco</name>
      <email>nicola.baiocco@intesys.it</email>
      <organization>Intesys</organization>
      <organizationUrl>http://www.intesys.it/</organizationUrl>
    </contributor>
    <contributor>
      <name>Dmitry Berezkin</name>
      <email>berezkin.dmitriy@gmail.com</email>
      <url>http://securny.com</url>
    </contributor>
    <contributor>
      <name>Tushar Mishra</name>
      <email>tusharm567@gmail.com</email>
      <url>http://tusharmishra.in</url>
    </contributor>
    <contributor>
      <name>Dmitriy Brashevets</name>
      <organization>United Security Providers AG</organization>
      <organizationUrl>https://www.united-security-providers.com/</organizationUrl>
    </contributor>
  </contributors>

  <properties>
    <project.build.outputTimestamp>2022-12-26T08:35:28Z</project.build.outputTimestamp>
    <syncope.version>${project.version}</syncope.version>

    <connid.version>1.6.0.0-SNAPSHOT</connid.version>
    <connid.soap.version>1.5.0-SNAPSHOT</connid.soap.version>
    <connid.rest.version>1.1.0-SNAPSHOT</connid.rest.version>
    <connid.db.version>2.3.0</connid.db.version>
    <connid.csvdir.version>0.8.9</connid.csvdir.version>
    <connid.ldap.version>1.5.9</connid.ldap.version>
    <connid.ad.version>1.3.9</connid.ad.version>
    <connid.googleapps.version>1.4.4</connid.googleapps.version>
    <connid.azure.version>2.0.2</connid.azure.version>
    <connid.scim.version>1.0.4</connid.scim.version>
    <connid.servicenow.version>1.0.3</connid.servicenow.version>
    <connid.okta.version>3.0.3</connid.okta.version>
    <connid.cmd.version>0.5</connid.cmd.version>

    <cxf.version>4.0.4</cxf.version>
    <bouncycastle.version>1.78.1</bouncycastle.version>
    <nimbus-jose-jwt.version>9.37.3</nimbus-jose-jwt.version>

    <spring-boot.version>3.2.5</spring-boot.version>
    <spring-cloud-gateway.version>4.1.3</spring-cloud-gateway.version>

    <openjpa.version>4.0.0</openjpa.version>

    <jasypt.version>1.9.3</jasypt.version>

    <groovy.version>5.0.0-alpha-8</groovy.version>

    <flowable.version>7.0.1</flowable.version>
    <flowable-old.version>6.8.1</flowable-old.version>

    <disruptor.version>3.4.4</disruptor.version>

    <elasticsearch.version>8.13.3</elasticsearch.version>
    <opensearch.version>2.13.0</opensearch.version>
    <opensearch-java.version>2.10.1</opensearch-java.version>

    <commons-lang3.version>3.14.0</commons-lang3.version>
    <commons-jexl.version>3.3</commons-jexl.version>
    <commons-text.version>1.12.0</commons-text.version>

    <pac4j.version>6.0.2</pac4j.version>

    <cas.version>7.0.4</cas.version>
    <cas-client.version>4.0.4</cas-client.version>

    <h2.version>2.2.224</h2.version>

    <swagger-core.version>2.2.21</swagger-core.version>
    <swagger-ui.version>5.17.2</swagger-ui.version>

    <jquery-slimscroll.version>1.3.8</jquery-slimscroll.version>
    <jquery-cookie.version>1.4.1-1</jquery-cookie.version>

    <bootbox.version>6.0.0</bootbox.version>
    <bootstrap5-toggle.version>5.0.6</bootstrap5-toggle.version>
    <font-awesome.version>6.5.2</font-awesome.version>
    <ionicons.version>2.0.1</ionicons.version>
    <codemirror.version>5.62.2</codemirror.version>
    <googlediffmatchpath.version>895a9512bb</googlediffmatchpath.version>
    <jsplumb.version>2.0.7</jsplumb.version>
    <chartjs.version>4.1.2</chartjs.version>

    <wicket.version>10.0.0</wicket.version>
    <wicketstuff.version>10.0.0</wicketstuff.version>
    <wicket-jqueryui.version>10.0.0-M1</wicket-jqueryui.version>
    <wicket-bootstrap.version>7.0.3</wicket-bootstrap.version>
    <wicket-jquery-selectors.version>4.0.4</wicket-jquery-selectors.version>
    <wicket-spring-boot.version>4.0.0</wicket-spring-boot.version>

    <antlr4.version>4.13.1</antlr4.version>

    <curator.version>5.6.0</curator.version>
    <zookeeper.version>3.9.2</zookeeper.version>

    <testds.rootDn>o=isp</testds.rootDn>
    <testds.bindDn>uid=admin,ou=system</testds.bindDn>
    <testds.password>secret</testds.password>
    <testds.port>1389</testds.port>

    <testdb.driver>org.h2.Driver</testdb.driver>
    <testdb.url>jdbc:h2:tcp://localhost:9092/mem:testdb;DB_CLOSE_DELAY=-1</testdb.url>
    <testdb.username>sa</testdb.username>
    <testdb.password>sa</testdb.password>
    <testdb.webport>9082</testdb.webport>

    <testconnectorserver.port>4554</testconnectorserver.port>
    <testconnectorserver.key>testconnectorserver</testconnectorserver.key>

    <testmail.smtpport>2525</testmail.smtpport>
    <testmail.pop3port>1110</testmail.pop3port>

    <test.csvdir.path>${project.build.directory}/test-csvdir</test.csvdir.path>

    <cargo.servlet.port>9080</cargo.servlet.port>
    <cargo.tomcat.ajp.port>9889</cargo.tomcat.ajp.port>
    <cargo.rmi.port>9805</cargo.rmi.port>
    <cargo.deployable.ping.timeout>60000</cargo.deployable.ping.timeout>

    <tomcat.version>10.1.23</tomcat.version>
    <wildfly.version>32.0.0.Final</wildfly.version>
    <payara.version>6.2024.4</payara.version>
    <jakarta.faces.version>4.0.7</jakarta.faces.version>

    <docker.postgresql.version>16</docker.postgresql.version>
    <docker.mysql.version>8.0</docker.mysql.version>
    <docker.mariadb.version>11</docker.mariadb.version>
    <docker.neo4j.version>5.19.0</docker.neo4j.version>

    <jdbc.postgresql.version>42.7.3</jdbc.postgresql.version>
    <jdbc.mysql.version>8.4.0</jdbc.mysql.version>
    <jdbc.mariadb.version>3.3.3</jdbc.mariadb.version>
    <jdbc.mssql.version>12.6.1.jre11</jdbc.mssql.version>
    <jdbc.oracle.version>23.4.0.24.05</jdbc.oracle.version>

    <bundles.directory>${project.build.directory}/bundles</bundles.directory>

    <adminUser>admin</adminUser>
    <anonymousUser>anonymous</anonymousUser>
    <adminPassword>DE088591C00CC98B36F5ADAAF7DA2B004CF7F2FE7BBB45B766B6409876E2F3DB13C7905C6AA59464</adminPassword>
    <!-- static keys, only used for build: generated overlays will override during archetype:generate -->
    <anonymousKey>anonymousKey</anonymousKey>
    <secretKey>1abcdefghilmnopqrstuvz2!</secretKey>
    <jwsKey>ZW7pRixehFuNUtnY5Se47IemgMryTzazPPJ9CGX5LTCmsOJpOgHAQEuPQeV9A28f</jwsKey>

    <!--
    Surefire plugin argLine can be defined as a Maven property to avoid JVM errors on startup with no jacaco-maven-plugin
    https://www.eclemma.org/jacoco/trunk/doc/prepare-agent-mojo.html
    -->
    <argLine>-Xms512m -Xmx1024m -Xss256k</argLine>

    <ianal.phase>verify</ianal.phase>
    <sass.skip>false</sass.skip>
    <remote-resources.skip>true</remote-resources.skip>

    <sonar.language>java</sonar.language>
    <sonar.java.source>${targetJdk}</sonar.java.source>
    <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
    <sonar.junit.reportPaths>${project.build.directory}/surefire-reports</sonar.junit.reportPaths>
    <sonar.coverage.jacoco.xmlReportPaths>target/site/jacoco/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>

    <targetJdk>21</targetJdk>
    <rootpom.basedir>${basedir}</rootpom.basedir>
    <maven.multiModuleProjectDirectory>${rootpom.basedir}</maven.multiModuleProjectDirectory>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencyManagement>

    <dependencies>
      <dependency>
        <groupId>jakarta.servlet</groupId>
        <artifactId>jakarta.servlet-api</artifactId>
        <version>6.0.0</version>
        <scope>provided</scope>
      </dependency>

      <!-- CXF -->
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-frontend-jaxrs</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-rs-extension-search</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-rs-service-description</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-rs-service-description-openapi-v3</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-rs-client</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-transports-http-hc</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-features-logging</artifactId>
        <version>${cxf.version}</version>
      </dependency>
      <!-- /CXF -->

      <!-- Swagger -->
      <dependency>
        <groupId>io.swagger.core.v3</groupId>
        <artifactId>swagger-annotations-jakarta</artifactId>
        <version>${swagger-core.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-dataformat-yaml</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>io.swagger.core.v3</groupId>
        <artifactId>swagger-jaxrs2-jakarta</artifactId>
        <version>${swagger-core.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>swagger-ui</artifactId>
        <version>${swagger-ui.version}</version>
      </dependency>
      <!-- /Swagger -->

      <dependency>
        <groupId>co.elastic.clients</groupId>
        <artifactId>elasticsearch-java</artifactId>
        <version>${elasticsearch.version}</version>
      </dependency>

      <dependency>
        <groupId>org.opensearch.client</groupId>
        <artifactId>opensearch-rest-client</artifactId>
        <version>${opensearch.version}</version>
      </dependency>
      <dependency>
        <groupId>org.opensearch.client</groupId>
        <artifactId>opensearch-java</artifactId>
        <version>${opensearch-java.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.openjpa</groupId>
        <artifactId>openjpa</artifactId>
        <version>${openjpa.version}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.uuid</groupId>
        <artifactId>java-uuid-generator</artifactId>
        <version>5.0.0</version>
      </dependency>

      <dependency>
        <groupId>com.fasterxml.woodstox</groupId>
        <artifactId>woodstox-core</artifactId>
        <version>6.6.2</version>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${spring-boot.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-autoconfigure</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.hibernate.orm</groupId>
            <artifactId>hibernate-core</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-neo4j</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.fasterxml.jackson.module</groupId>
            <artifactId>jackson-module-parameter-names</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-webflux</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.fasterxml.jackson.module</groupId>
            <artifactId>jackson-module-parameter-names</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-validation</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-mail</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
        <version>${spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-logging</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-log4j2</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>

      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-actuator</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-properties-migrator</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-configuration-metadata</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-configuration-processor</artifactId>
        <version>${spring-boot.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-spring-boot-starter-jaxrs</artifactId>
        <version>${cxf.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>com.giffing.wicket.spring.boot.starter</groupId>
        <artifactId>wicket-spring-boot-starter</artifactId>
        <version>${wicket-spring-boot.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
          </exclusion>
          <exclusion>
            <groupId>cglib</groupId>
            <artifactId>cglib</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.ow2.asm</groupId>
            <artifactId>asm</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-gateway</artifactId>
        <version>${spring-cloud-gateway.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcpkix-jdk15on</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>${commons-lang3.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-jexl3</artifactId>
        <version>${commons-jexl.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-text</artifactId>
        <version>${commons-text.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-core</artifactId>
        <version>3.0.0-BETA</version>
      </dependency>

      <dependency>
        <groupId>net.tirasa.connid</groupId>
        <artifactId>connector-framework</artifactId>
        <version>${connid.version}</version>
      </dependency>
      <dependency>
        <groupId>net.tirasa.connid</groupId>
        <artifactId>connector-framework-internal</artifactId>
        <version>${connid.version}</version>
      </dependency>
      <dependency>
        <groupId>net.tirasa.connid</groupId>
        <artifactId>slf4j-logging</artifactId>
        <version>${connid.version}</version>
      </dependency>

      <dependency>
        <groupId>org.jasypt</groupId>
        <artifactId>jasypt</artifactId>
        <version>${jasypt.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-templates</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-xml</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-jsr223</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-datetime</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-dateutil</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-sql</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-json</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-yaml</artifactId>
        <version>${groovy.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.groovy</groupId>
        <artifactId>groovy-groovysh</artifactId>
        <version>${groovy.version}</version>
      </dependency>

      <!-- Flowable -->
      <dependency>
        <groupId>org.flowable</groupId>
        <artifactId>flowable-engine</artifactId>
        <version>${flowable.version}</version>
        <exclusions>
          <exclusion>
            <groupId>javax.activation</groupId>
            <artifactId>activation</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.sun.mail</groupId>
            <artifactId>javax.mail</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.flowable</groupId>
        <artifactId>flowable-spring</artifactId>
        <version>${flowable.version}</version>
      </dependency>
      <dependency>
        <groupId>org.flowable</groupId>
        <artifactId>flowable-idm-spring-configurator</artifactId>
        <version>${flowable.version}</version>
      </dependency>
      <dependency>
        <groupId>net.tirasa.flowable-leftovers</groupId>
        <artifactId>flowable-json-converter</artifactId>
        <version>${flowable.version}</version>
      </dependency>
      <!-- TODO: SYNCOPE-1718 -->
      <dependency>
        <groupId>org.flowable</groupId>
        <artifactId>flowable-ui-modeler-frontend</artifactId>
        <version>${flowable-old.version}</version>
      </dependency>
      <dependency>
        <groupId>org.flowable</groupId>
        <artifactId>flowable-ui-modeler-logic</artifactId>
        <version>${flowable-old.version}</version>
      </dependency>
      <!-- /Flowable -->

      <!-- PAC4J -->
      <dependency>
        <groupId>org.pac4j</groupId>
        <artifactId>pac4j-saml</artifactId>
        <version>${pac4j.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcpkix-jdk15on</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcprov-jdk15on</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.pac4j</groupId>
        <artifactId>pac4j-oidc</artifactId>
        <version>${pac4j.version}</version>
      </dependency>
      <!-- PAC4J -->

      <!-- CAS -->
      <dependency>
        <groupId>org.apereo.cas.client</groupId>
        <artifactId>cas-client-core</artifactId>
        <version>${cas-client.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcpkix-jdk15on</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcprov-jdk15on</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- /CAS -->

      <!-- Wicket -->
      <dependency>
        <groupId>org.apache.wicket</groupId>
        <artifactId>wicket</artifactId>
        <version>${wicket.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.wicketstuff</groupId>
        <artifactId>wicketstuff-editable-grid</artifactId>
        <version>${wicketstuff.version}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.wicket-jquery-ui</groupId>
        <artifactId>wicket-jquery-ui</artifactId>
        <version>${wicket-jqueryui.version}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.wicket-jquery-ui</groupId>
        <artifactId>wicket-jquery-ui-theme-base</artifactId>
        <version>${wicket-jqueryui.version}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.wicket-jquery-ui</groupId>
        <artifactId>wicket-kendo-ui</artifactId>
        <version>${wicket-jqueryui.version}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.wicket-jquery-ui</groupId>
        <artifactId>wicket-kendo-ui-culture</artifactId>
        <version>${wicket-jqueryui.version}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.wicket-jquery-ui</groupId>
        <artifactId>wicket-kendo-ui-theme-bootstrap</artifactId>
        <version>${wicket-jqueryui.version}</version>
      </dependency>
      <dependency>
        <groupId>de.agilecoders.wicket</groupId>
        <artifactId>wicket-bootstrap-core</artifactId>
        <version>${wicket-bootstrap.version}</version>
      </dependency>
      <dependency>
        <groupId>de.agilecoders.wicket</groupId>
        <artifactId>wicket-jquery-selectors</artifactId>
        <version>${wicket-jquery-selectors.version}</version>
      </dependency>
      <dependency>
        <groupId>de.agilecoders.wicket</groupId>
        <artifactId>wicket-bootstrap-extensions</artifactId>
        <version>${wicket-bootstrap.version}</version>
        <exclusions>
          <exclusion>
            <groupId>com.google.javascript</groupId>
            <artifactId>closure-compiler</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.webjars.bower</groupId>
            <artifactId>summernote</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.webjars</groupId>
            <artifactId>Eonasdan-bootstrap-datetimepicker</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.webjars</groupId>
            <artifactId>momentjs</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- /Wicket -->

      <dependency>
        <groupId>com.lmax</groupId>
        <artifactId>disruptor</artifactId>
        <version>${disruptor.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox</artifactId>
        <version>3.0.2</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>jquery-cookie</artifactId>
        <version>${jquery-cookie.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>jQuery-slimScroll</artifactId>
        <version>${jquery-slimscroll.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>font-awesome</artifactId>
        <version>${font-awesome.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars.npm</groupId>
        <artifactId>bootbox</artifactId>
        <version>${bootbox.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars.npm</groupId>
        <artifactId>bootstrap5-toggle</artifactId>
        <version>${bootstrap5-toggle.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.webjars.npm</groupId>
            <artifactId>bootstrap</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>ionicons</artifactId>
        <version>${ionicons.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>codemirror</artifactId>
        <version>${codemirror.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>google-diff-match-patch</artifactId>
        <version>${googlediffmatchpath.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>jsplumb</artifactId>
        <version>${jsplumb.version}</version>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>chartjs</artifactId>
        <version>${chartjs.version}</version>
      </dependency>

      <dependency>
        <groupId>org.antlr</groupId>
        <artifactId>antlr4-runtime</artifactId>
        <version>${antlr4.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-framework</artifactId>
        <version>${curator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-x-discovery</artifactId>
        <version>${curator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>${zookeeper.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
          </exclusion>
          <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
          </exclusion>
          <exclusion>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpkix-jdk18on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk18on</artifactId>
        <version>${bouncycastle.version}</version>
      </dependency>

      <dependency>
        <groupId>com.nimbusds</groupId>
        <artifactId>nimbus-jose-jwt</artifactId>
        <version>${nimbus-jose-jwt.version}</version>
      </dependency>

      <dependency>
        <groupId>org.passay</groupId>
        <artifactId>passay</artifactId>
        <version>1.6.4</version>
      </dependency>

      <dependency>
        <groupId>org.jsoup</groupId>
        <artifactId>jsoup</artifactId>
        <version>1.17.2</version>
      </dependency>

      <dependency>
        <groupId>com.icegreen</groupId>
        <artifactId>greenmail</artifactId>
        <version>2.1.0-alpha-4</version>
        <exclusions>
          <exclusion>
            <groupId>com.sun.mail</groupId>
            <artifactId>jakarta.mail</artifactId>
          </exclusion>
          <exclusion>
            <groupId>jakarta.activation</groupId>
            <artifactId>jakarta.activation-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- TEST -->
      <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-test</artifactId>
        <version>${curator.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-rt-transports-http-netty-server</artifactId>
        <version>${cxf.version}</version>
        <scope>test</scope>
      </dependency>
      <!-- TMP: move back to ${spring-cloud-gateway.version} as soon as possible -->
      <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-contract-wiremock</artifactId>
        <version>4.1.2</version>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <repositories>
    <repository>
      <id>sonatype</id>
      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>s01</id>
      <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>shibboleth</id>
      <url>https://build.shibboleth.net/maven/releases</url>
      <releases>
        <enabled>true</enabled>
      </releases>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>sonatype</id>
      <url>https://oss.sonatype.org/content/repositories/releases</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </pluginRepository>
    <pluginRepository>
      <id>apache.snapshots</id>
      <url>https://repository.apache.org/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </pluginRepository>
    <pluginRepository>
      <id>sonatype.snapshots</id>
      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </pluginRepository>
  </pluginRepositories>

  <build>
    <defaultGoal>clean verify</defaultGoal>

    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.13.0</version>
          <configuration>
            <release>${targetJdk}</release>
            <useIncrementalCompilation>false</useIncrementalCompilation>
            <showWarnings>true</showWarnings>
            <showDeprecation>true</showDeprecation>
            <compilerArgs>
              <arg>-Xlint:unchecked</arg>
              <arg>-parameters</arg>
            </compilerArgs>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.3.1</version>
          <configuration>
            <propertiesEncoding>${project.build.sourceEncoding}</propertiesEncoding>
            <useDefaultDelimiters>false</useDefaultDelimiters>
            <delimiters>
              <delimiter>${*}</delimiter>
            </delimiters>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>3.5.0</version>
        </plugin>

        <plugin>
          <groupId>io.github.git-commit-id</groupId>
          <artifactId>git-commit-id-maven-plugin</artifactId>
          <version>8.0.2</version>
          <executions>
            <execution>
              <goals>
                <goal>revision</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
            <verbose>true</verbose>
            <dateFormat>yyyy-MM-dd'T'HH:mm:ssZ</dateFormat>
            <dateFormatTimeZone>Zulu</dateFormatTimeZone>
            <generateGitPropertiesFile>true</generateGitPropertiesFile>
            <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
            <excludeProperties>
              <excludeProperty>git.build.time</excludeProperty>
              <excludeProperty>git.build.user.*</excludeProperty>
              <excludeProperty>git.build.host</excludeProperty>
              <excludeProperty>git.commit.user.*</excludeProperty>
              <excludeProperty>git.tags</excludeProperty>
              <excludeProperty>git.total.commit.count</excludeProperty>
            </excludeProperties>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>3.6.3</version>
          <configuration>
            <release>${targetJdk}</release>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.openjpa</groupId>
          <artifactId>openjpa-maven-plugin</artifactId>
          <version>${openjpa.version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>3.6.1</version>
          <configuration>
            <outputDirectory>${bundles.directory}</outputDirectory>
            <artifactItems>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles.soap</groupId>
                <artifactId>net.tirasa.connid.bundles.soap</artifactId>
                <version>${connid.soap.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.rest</artifactId>
                <version>${connid.rest.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.csvdir</artifactId>
                <version>${connid.csvdir.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles.db</groupId>
                <artifactId>net.tirasa.connid.bundles.db</artifactId>
                <version>${connid.db.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.ldap</artifactId>
                <version>${connid.ldap.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.ad</artifactId>
                <version>${connid.ad.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.googleapps</artifactId>
                <version>${connid.googleapps.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.azure</artifactId>
                <version>${connid.azure.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.scim</artifactId>
                <version>${connid.scim.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.servicenow</artifactId>
                <version>${connid.servicenow.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles.okta</groupId>
                <artifactId>net.tirasa.connid.bundles.okta</artifactId>
                <version>${connid.okta.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
              <artifactItem>
                <groupId>net.tirasa.connid.bundles</groupId>
                <artifactId>net.tirasa.connid.bundles.cmd</artifactId>
                <version>${connid.cmd.version}</version>
                <classifier>bundle</classifier>
              </artifactItem>
            </artifactItems>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>3.4.1</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.4.0</version>
          <configuration>
            <webResources>
              <resource>
                <directory>${basedir}/src/main/webapp/WEB-INF</directory>
                <filtering>true</filtering>
                <targetPath>WEB-INF</targetPath>
                <includes>
                  <include>web.xml</include>
                </includes>
              </resource>
            </webResources>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>

        <plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
          <version>${spring-boot.version}</version>
        </plugin>

        <plugin>
          <groupId>org.codehaus.cargo</groupId>
          <artifactId>cargo-maven3-plugin</artifactId>
          <version>1.10.13</version>
          <configuration>
            <container>
              <log>${project.build.directory}/log/cargo.log</log>
              <output>${project.build.directory}/log/cargo-output.log</output>
              <systemProperties>
                <syncope.conf.dir>${project.build.directory}/test-classes</syncope.conf.dir>
                <syncope.connid.location>file:${bundles.directory}/</syncope.connid.location>
                <syncope.log.dir>${project.build.directory}/log</syncope.log.dir>
              </systemProperties>
            </container>
            <configuration>
              <type>standalone</type>
              <properties>
                <cargo.servlet.port>${cargo.servlet.port}</cargo.servlet.port>
                <cargo.tomcat.ajp.port>${cargo.tomcat.ajp.port}</cargo.tomcat.ajp.port>
                <cargo.rmi.port>${cargo.rmi.port}</cargo.rmi.port>

                <cargo.jvmargs>-Xmx1024m -Xms512m</cargo.jvmargs>
              </properties>
            </configuration>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>3.2.5</version>
          <configuration>
            <redirectTestOutputToFile>true</redirectTestOutputToFile>
            <encoding>utf-8</encoding>
            <runOrder>alphabetical</runOrder>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>3.2.5</version>
          <configuration>
            <redirectTestOutputToFile>true</redirectTestOutputToFile>
            <runOrder>alphabetical</runOrder>
          </configuration>
          <executions>
            <execution>
              <goals>
                <goal>integration-test</goal>
                <goal>verify</goal>
              </goals>
            </execution>
          </executions>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>3.3.1</version>
          <configuration>
            <configLocation>${rootpom.basedir}/src/main/resources/org/apache/syncope/checkstyle.xml</configLocation>
            <includeTestSourceDirectory>true</includeTestSourceDirectory>
          </configuration>
        </plugin>

        <plugin>
          <groupId>io.fabric8</groupId>
          <artifactId>docker-maven-plugin</artifactId>
          <version>0.44.0</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>3.7.1</version>
        </plugin>

        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>3.2.0</version>
        </plugin>

        <plugin>
          <groupId>org.antlr</groupId>
          <artifactId>antlr4-maven-plugin</artifactId>
          <version>${antlr4.version}</version>
        </plugin>

        <plugin>
          <groupId>us.hebi.sass</groupId>
          <artifactId>sass-cli-maven-plugin</artifactId>
          <version>1.0.3</version>
          <configuration>
            <sassVersion>1.62.0</sassVersion>
            <skip>${sass.skip}</skip>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>0.8.12</version>
        </plugin>

        <plugin>
          <groupId>org.sonarsource.scanner.maven</groupId>
          <artifactId>sonar-maven-plugin</artifactId>
          <version>3.11.0.3922</version>
        </plugin>
      </plugins>
    </pluginManagement>

    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <version>3.4.1</version>
        <executions>
          <execution>
            <id>default-cli</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <requireJavaVersion>
                  <version>${targetJdk}</version>
                </requireJavaVersion>
                <requireMavenVersion>
                  <version>3.9.5</version>
                </requireMavenVersion>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.gaul</groupId>
        <artifactId>modernizer-maven-plugin</artifactId>
        <version>2.8.0</version>
        <configuration>
          <javaVersion>${targetJdk}</javaVersion>
          <ignorePackages>
            <ignorePackage>org.apache.syncope.core.persistence.jpa.entity</ignorePackage>
          </ignorePackages>
          <exclusions>
            <exclusion>java/util/Optional.get:()Ljava/lang/Object;</exclusion>
          </exclusions>
        </configuration>
        <executions>
          <execution>
            <id>modernizer-check</id>
            <phase>verify</phase>
            <goals>
              <goal>modernizer</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <resourceExcludes>**/LICENSE,**/NOTICE</resourceExcludes>
        </configuration>
        <executions>
          <execution>
            <id>checkstyle-check</id>
            <phase>verify</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <configuration>
          <skip>${skipTests}</skip>
        </configuration>
        <executions>
          <execution>
            <id>prepare-jacoco-agent</id>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
          </execution>
          <execution>
            <id>generate-code-coverage-report</id>
            <phase>test</phase>
            <goals>
              <goal>report</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.codehaus.gmavenplus</groupId>
        <artifactId>gmavenplus-plugin</artifactId>
        <version>3.0.2</version>
        <dependencies>
          <dependency>
            <groupId>org.apache.groovy</groupId>
            <artifactId>groovy-ant</artifactId>
            <version>${groovy.version}</version>
          </dependency>
        </dependencies>
        <executions>
          <execution>
            <phase>generate-resources</phase>
            <goals>
              <goal>execute</goal>
            </goals>
            <configuration>
              <allowSystemExits>true</allowSystemExits>
              <scripts>
                <script><![CDATA[
                import java.util.Date
                import java.text.MessageFormat
                def year = MessageFormat.format("{0,date,yyyy}", new Date())
                project.properties['year'] = year
                project.properties['snapshotOrRelease'] = project.version.endsWith("SNAPSHOT") ? "snapshot" : "release"
                project.properties['licenseUrl'] = project.parent.licenses[0].url
                project.properties['site.deploymentBaseDir'] =
                project.properties['site.deploymentBaseUrl'] == null || !project.properties['site.deploymentBaseUrl'].startsWith('file:') ? project.properties['project.build.directory'] + "/generated-docs" : project.properties['site.deploymentBaseUrl'].substring(7)

                if (!project.properties.containsKey('buildNumber'))
                project.properties['buildNumber'] = ""
                ]]></script>
              </scripts>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <configuration>
          <excludes>
            <exclude>**/nbactions.xml</exclude>
            <exclude>**/nb-configuration.xml</exclude>
            <exclude>**/META-INF/cxf/**</exclude>
            <exclude>**/META-INF/services/**</exclude>
            <exclude>**/META-INF/MANIFEST.MF</exclude>
            <exclude>**/*.csv</exclude>
            <exclude>**/archetype-resources/**</exclude>
            <exclude>**/AdminLTE*/**</exclude>
            <exclude>**/goal.txt</exclude>
            <exclude>**/rat.txt</exclude>
            <exclude>**/build-copy-javadoc-files.xml</exclude>
            <exclude>**/maven-eclipse.xml</exclude>
            <exclude>**/*.iml</exclude>
            <exclude>**/*.log</exclude>
            <exclude>**/.externalToolBuilders/**</exclude>
            <exclude>.git/**</exclude>
            <exclude>.idea/**</exclude>
            <exclude>**/.settings/**</exclude>
            <exclude>**/.*</exclude>
            <exclude>**/*.lst</exclude>
            <exclude>**/*.json</exclude>
            <exclude>**/banner.txt</exclude>
            <exclude>**/target/**</exclude>
          </excludes>
        </configuration>
        <executions>
          <execution>
            <id>rat-check</id>
            <phase>verify</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-remote-resources-plugin</artifactId>
        <configuration>
          <skip>${remote-resources.skip}</skip>
        </configuration>
      </plugin>

      <!-- Put NOTICE and LICENSE files in all artifacts and javadocs -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>3.3.1</version>
        <executions>
          <execution>
            <id>copy-artifact-legal-files</id>
            <phase>process-resources</phase>
            <goals>
              <goal>copy-resources</goal>
            </goals>
            <configuration>
              <outputDirectory>${project.build.outputDirectory}/META-INF</outputDirectory>
              <resources>
                <resource>
                  <directory>${rootpom.basedir}</directory>
                  <includes>
                    <include>LICENSE</include>
                    <include>NOTICE</include>
                  </includes>
                </resource>
              </resources>
            </configuration>
          </execution>
          <execution>
            <id>copy-javadoc-legal-files</id>
            <phase>process-resources</phase>
            <goals>
              <goal>copy-resources</goal>
            </goals>
            <configuration>
              <outputDirectory>${project.build.directory}/apidocs/META-INF</outputDirectory>
              <resources>
                <resource>
                  <directory>${rootpom.basedir}</directory>
                  <includes>
                    <include>LICENSE</include>
                    <include>NOTICE</include>
                  </includes>
                </resource>
              </resources>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.geronimo.genesis.plugins</groupId>
        <artifactId>tools-maven-plugin</artifactId>
        <version>1.4</version>
        <configuration>
          <!-- Fail the build if any artifacts are missing legal files -->
          <strict>true</strict>
        </configuration>
        <executions>
          <execution>
            <id>verify-legal-files</id>
            <phase>${ianal.phase}</phase>
            <goals>
              <goal>verify-legal-files</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <inherited>true</inherited>
        <configuration>
          <mavenExecutorId>forked-path</mavenExecutorId>
          <autoVersionSubmodules>true</autoVersionSubmodules>
          <tagNameFormat>syncope-@{project.version}</tagNameFormat>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>3.5.0</version>
        <configuration>
          <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
          <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
        </configuration>
        <reportSets>
          <reportSet>
            <reports>
              <report>index</report>
              <report>team</report>
              <report>issue-management</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.6.3</version>
        <configuration>
          <source>${targetJdk}</source>
          <destDir>apidocs/4.0</destDir>
          <isOffline>false</isOffline>
          <detectLinks>true</detectLinks>
          <detectJavaApiLink>true</detectJavaApiLink>
          <dependencySourceExcludes>
            <dependencySourceExclude>org.webjars:*</dependencySourceExclude>
            <dependencySourceExclude>org.webjars.bower:*</dependencySourceExclude>
          </dependencySourceExcludes>
          <links>
            <link>https://docs.oracle.com/en/java/javase/17/docs/api/</link>
            <link>https://jakarta.ee/specifications/platform/10/apidocs/</link>
            <link>http://www.slf4j.org/api/</link>
            <link>http://connid.tirasa.net/apidocs/1.5/</link>
            <link>https://cxf.apache.org/javadoc/latest/</link>
            <link>http://fasterxml.github.io/jackson-core/javadoc/2.15/</link>
            <link>http://fasterxml.github.io/jackson-databind/javadoc/2.15/</link>
            <link>http://fasterxml.github.io/jackson-annotations/javadoc/2.15/</link>
            <link>http://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.15/</link>
            <link>http://fasterxml.github.io/jackson-dataformats-text/javadoc/yaml/2.15/</link>
            <link>http://fasterxml.github.io/jackson-dataformats-text/javadoc/csv/2.15/</link>
            <link>https://ci.apache.org/projects/wicket/apidocs/10.x/</link>
            <link>https://commons.apache.org/proper/commons-lang/javadocs/api-release/</link>
            <link>https://commons.apache.org/proper/commons-jexl/apidocs/</link>
            <link>https://tika.apache.org/3.0.0-BETA/api/</link>
            <link>https://docs.spring.io/spring-boot/docs/current/api/</link>
            <link>https://docs.spring.io/spring/docs/current/javadoc-api/</link>
            <link>https://docs.spring.io/spring-security/site/docs/current/api/</link>
            <link>https://www.flowable.com/open-source/docs/javadocs/</link>
            <link>http://docs.swagger.io/swagger-core/v2.2.8/apidocs/</link>
          </links>
        </configuration>
        <reportSets>
          <reportSet>
            <reports>
              <report>aggregate</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
        <version>3.3.2</version>
      </plugin>
    </plugins>
  </reporting>

  <profiles>

    <profile>
      <id>apache-release</id>

      <properties>
        <remote-resources.skip>false</remote-resources.skip>
      </properties>

      <build>
        <plugins>
          <plugin>
            <groupId>org.cyclonedx</groupId>
            <artifactId>cyclonedx-maven-plugin</artifactId>
            <version>2.8.0</version>
            <executions>
              <execution>
                <phase>package</phase>
                <goals>
                  <goal>makeAggregateBom</goal>
                </goals>
              </execution>
            </executions>
          </plugin>

          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-deploy-plugin</artifactId>
            <version>3.1.2</version>
          </plugin>

          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>3.2.4</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>

      <modules>
        <module>docker</module>
      </modules>
    </profile>

    <profile>
      <id>site</id>
      <build>
        <defaultGoal>clean generate-resources site-deploy</defaultGoal>

        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <executions>
              <execution>
                <id>copy-ext-images</id>
                <phase>generate-resources</phase>
                <goals>
                  <goal>copy-resources</goal>
                </goals>
                <configuration>
                  <resources>
                    <resource>
                      <directory>${rootpom.basedir}/src/site/resources/images</directory>
                      <includes>
                        <include>apache-syncope-logo-small.jpg</include>
                      </includes>
                    </resource>
                  </resources>
                  <outputDirectory>${rootpom.basedir}/target/generated-docs/images</outputDirectory>
                </configuration>
              </execution>
            </executions>
          </plugin>

          <plugin>
            <groupId>org.asciidoctor</groupId>
            <artifactId>asciidoctor-maven-plugin</artifactId>
            <version>3.0.0</version>
            <inherited>false</inherited>
            <dependencies>
              <dependency>
                <groupId>org.asciidoctor</groupId>
                <artifactId>asciidoctorj-pdf</artifactId>
                <version>2.3.15</version>
              </dependency>
            </dependencies>
            <configuration>
              <doctype>book</doctype>
              <attributes>
                <docVersion>${project.version}</docVersion>
                <snapshotOrRelease>${snapshotOrRelease}</snapshotOrRelease>
                <postgresql>${docker.postgresql.version}</postgresql>
                <mysql>${docker.mysql.version}</mysql>
                <mariadb>${docker.mariadb.version}</mariadb>
                <postgresqlJDBC>${jdbc.postgresql.version}</postgresqlJDBC>
                <mysqlJDBC>${jdbc.mysql.version}</mysqlJDBC>
                <mariadbJDBC>${jdbc.mariadb.version}</mariadbJDBC>
                <oracleJDBC>${jdbc.oracle.version}</oracleJDBC>
                <sqlserverJDBC>${jdbc.mssql.version}</sqlserverJDBC>
                <year>${year}</year>
                <numbered>true</numbered>
                <icons>font</icons>
                <pagenums />
                <idprefix />
                <idseparator>-</idseparator>
                <allow-uri-read />
              </attributes>
            </configuration>
            <executions>
              <execution>
                <id>getting-started-html</id>
                <phase>generate-resources</phase>
                <goals>
                  <goal>process-asciidoc</goal>
                </goals>
                <configuration>
                  <sourceDocumentName>getting-started/getting-started.adoc</sourceDocumentName>
                  <baseDir>${rootpom.basedir}/src/main/asciidoc/getting-started</baseDir>
                  <backend>html5</backend>
                  <attributes>
                    <title>Apache Syncope ${project.version} - Getting Started</title>
                    <imagesdir>images</imagesdir>
                  </attributes>
                </configuration>
              </execution>
              <execution>
                <id>getting-started-pdf</id>
                <phase>generate-resources</phase>
                <goals>
                  <goal>process-asciidoc</goal>
                </goals>
                <configuration>
                  <sourceDocumentName>getting-started/getting-started.adoc</sourceDocumentName>
                  <baseDir>${rootpom.basedir}/src/main/asciidoc/getting-started</baseDir>
                  <backend>pdf</backend>
                  <attributes>
                    <pdf-stylesdir>${basedir}/src/main/asciidoc</pdf-stylesdir>
                    <pdf-style>syncope</pdf-style>
                    <imagesdir>${rootpom.basedir}/target/generated-docs/images</imagesdir>
                  </attributes>
                </configuration>
              </execution>
              <execution>
                <id>reference-guide-html</id>
                <phase>generate-resources</phase>
                <goals>
                  <goal>process-asciidoc</goal>
                </goals>
                <configuration>
                  <sourceDocumentName>reference-guide/reference-guide.adoc</sourceDocumentName>
                  <baseDir>${rootpom.basedir}/src/main/asciidoc/reference-guide</baseDir>
                  <backend>html5</backend>
                  <attributes>
                    <title>Apache Syncope ${project.version} - Reference Guide</title>
                    <imagesdir>images</imagesdir>
                  </attributes>
                </configuration>
              </execution>
              <execution>
                <id>reference-guide-pdf</id>
                <phase>generate-resources</phase>
                <goals>
                  <goal>process-asciidoc</goal>
                </goals>
                <configuration>
                  <sourceDocumentName>reference-guide/reference-guide.adoc</sourceDocumentName>
                  <baseDir>${rootpom.basedir}/src/main/asciidoc/reference-guide</baseDir>
                  <backend>pdf</backend>
                  <attributes>
                    <pdf-stylesdir>${basedir}/src/main/asciidoc</pdf-stylesdir>
                    <pdf-style>syncope</pdf-style>
                    <imagesdir>${rootpom.basedir}/target/generated-docs/images</imagesdir>
                  </attributes>
                </configuration>
              </execution>
            </executions>
          </plugin>

          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-site-plugin</artifactId>
            <version>3.12.1</version>
            <configuration>
              <locales>en</locales>
              <generateProjectInfo>false</generateProjectInfo>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>skipTests</id>

      <properties>
        <maven.build.cache.skipCache>true</maven.build.cache.skipCache>
        <skipTests>true</skipTests>
        <ianal.phase>none</ianal.phase>
        <modernizer.skip>true</modernizer.skip>
        <rat.skip>true</rat.skip>
        <checkstyle.skip>true</checkstyle.skip>
      </properties>

      <build>
        <defaultGoal>clean install</defaultGoal>

        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <executions>
              <execution>
                <id>checkstyle-check</id>
                <phase>none</phase>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>docker</id>

      <modules>
        <module>docker</module>
      </modules>
    </profile>

    <profile>
      <activation>
        <os>
          <family>Windows</family>
        </os>
      </activation>

      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>build-helper-maven-plugin</artifactId>
            <executions>
              <execution>
                <id>windows-connid-location</id>
                <goals>
                  <goal>regex-property</goal>
                </goals>
                <configuration>
                  <name>syncope.connid.location</name>
                  <value>file://${project.build.directory}\bundles/</value>
                  <regex>\\</regex>
                  <replacement>/</replacement>
                  <failIfNoMatch>false</failIfNoMatch>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

  <modules>
    <module>common</module>
    <module>core</module>
    <module>client</module>
    <module>sra</module>
    <module>wa</module>
    <module>fit</module>
    <module>ext</module>
    <module>archetype</module>
    <module>standalone</module>
  </modules>

</project>
