<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <packaging>pom</packaging>
  <groupId>io.github.barrieshieh.base</groupId>
  <artifactId>base-parent</artifactId>
  <version>0.7.2</version>

  <name>Base :: Parent</name>
  <description>Base parent for Spring Boot project</description>
  <url>https://github.com/BarrieShieh/base</url>

  <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent -->
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.12.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
  </parent>

  <properties>
    <!-- Base version, need to be the same as project version! -->
    <base.version>0.7.2</base.version>
    <jacocoArgLine>-XX:MaxPermSize=512m -Dfile.encoding=UTF-8</jacocoArgLine>
    <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies -->
    <spring-cloud.version>Hoxton.SR12</spring-cloud.version>
    <!-- https://mvnrepository.com/artifact/com.graphql-java-kickstart/graphiql-spring-boot-starter -->
    <graphql-java.version>11.1.0</graphql-java.version>
    <!--  Keycloak properties   -->
    <!-- https://mvnrepository.com/artifact/org.keycloak/keycloak-spring-boot-starter -->
    <keycloak.version>15.0.2</keycloak.version>

    <!--    -->
    <git.branch></git.branch>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <!--  CLM properties   -->
    <clm.projectKey>IOX_RBR-CN_Project-Base_${git.branch}</clm.projectKey>
    <clm.scan.patterns>${project.build.directory}/${project.build.finalName}.jar</clm.scan.patterns>
    <clm.username></clm.username>
    <clm.password></clm.password>
    <!--  FOSSID properties   -->
    <fossid.projectKey>IOX_RBR-CN_Project-Base_${git.branch}</fossid.projectKey>
    <!-- SonarQube properties -->
    <sonar.scm.provider>git</sonar.scm.provider>
    <sonar.projectName>com.bosch.iox.${project.artifactId}</sonar.projectName>
    <sonar.projectKey>com.bosch.iox.${project.artifactId}</sonar.projectKey>
    <sonar.sources>${project.basedir}/src/main/</sonar.sources>
    <sonar.exclusions>**/target/**</sonar.exclusions>
    <sonar.tests>${project.basedir}/src/test/</sonar.tests>
    <!--  SonarQube CodeCoverage properties -->
    <sonar.java.codeCoveragePlugin>jacoco</sonar.java.codeCoveragePlugin>
    <sonar.coverage.exclusions>**/qualitymeasurementsample/*</sonar.coverage.exclusions>
  </properties>
  <modules>
    <module>../base-core</module>
    <module>../base-security-keycloak</module>
  </modules>

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <scm>
    <tag>master</tag>
    <url>scm:svn:https://github.com/BarrieShieh/base</url>
    <connection>scm:svn:https://github.com/BarrieShieh/base</connection>
    <developerConnection>https://github.com/BarrieShieh/base</developerConnection>
  </scm>
  <developers>
    <developer>
      <name>Barrie</name>
      <email>barrieshieh@gmail.com</email>
    </developer>
  </developers>

  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-devtools</artifactId>
      <scope>runtime</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-sleuth</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-zipkin</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-mail</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-kubernetes-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-kubernetes-config</artifactId>
    </dependency>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
      <groupId>org.mariadb.jdbc</groupId>
      <artifactId>mariadb-java-client</artifactId>
    </dependency>
    <dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <scope>runtime</scope>
    </dependency>
    <!--<dependency>-->
    <!--<groupId>org.springframework.boot</groupId>-->
    <!--<artifactId>spring-boot-starter-data-mongodb</artifactId>-->
    <!--</dependency>-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-websocket</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.flywaydb</groupId>
      <artifactId>flyway-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-test</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>io.micrometer</groupId>
      <artifactId>micrometer-registry-prometheus</artifactId>
    </dependency>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
    </dependency>
    <dependency>
      <groupId>org.codehaus.groovy</groupId>
      <artifactId>groovy-all</artifactId>
      <type>pom</type>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>net.logstash.logback</groupId>
      <artifactId>logstash-logback-encoder</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springdoc</groupId>
      <artifactId>springdoc-openapi-ui</artifactId>
    </dependency>
    <!--        <dependency>-->
    <!--            <groupId>org.springdoc</groupId>-->
    <!--            <artifactId>springdoc-openapi-data-rest</artifactId>-->
    <!--        </dependency>-->

    <!--     GraphQL       -->
    <dependency>
      <groupId>com.graphql-java-kickstart</groupId>
      <artifactId>graphql-spring-boot-starter</artifactId>
    </dependency>
    <!-- to embed Altair tool -->
    <dependency>
      <groupId>com.graphql-java-kickstart</groupId>
      <artifactId>altair-spring-boot-starter</artifactId>
      <scope>runtime</scope>
    </dependency>
    <!-- to embed GraphiQL tool -->
    <dependency>
      <groupId>com.graphql-java-kickstart</groupId>
      <artifactId>graphiql-spring-boot-starter</artifactId>
      <scope>runtime</scope>
    </dependency>
    <!-- to embed Voyager tool -->
    <dependency>
      <groupId>com.graphql-java-kickstart</groupId>
      <artifactId>voyager-spring-boot-starter</artifactId>
      <scope>runtime</scope>
    </dependency>
    <!-- testing facilities -->
    <dependency>
      <groupId>com.graphql-java-kickstart</groupId>
      <artifactId>graphql-spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/cz.jirutka.rsql/rsql-parser -->
    <dependency>
      <groupId>cz.jirutka.rsql</groupId>
      <artifactId>rsql-parser</artifactId>
    </dependency>
    <!-- https://mvnrepository.com/artifact/io.github.perplexhub/rsql-querydsl-spring-boot-starter -->
    <dependency>
      <groupId>io.github.perplexhub</groupId>
      <artifactId>rsql-querydsl-spring-boot-starter</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-security</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-hateoas</artifactId>
    </dependency>
    <dependency>
      <groupId>com.querydsl</groupId>
      <artifactId>querydsl-jpa</artifactId>
    </dependency>
    <dependency>
      <groupId>com.querydsl</groupId>
      <artifactId>querydsl-apt</artifactId>
    </dependency>
    <dependency>
      <groupId>com.querydsl</groupId>
      <artifactId>querydsl-collections</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.data</groupId>
      <artifactId>spring-data-commons</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-aop</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.restdocs</groupId>
      <artifactId>spring-restdocs-mockmvc</artifactId>
      <!--<scope>test</scope>-->
    </dependency>
  </dependencies>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.github.barrieshieh.base</groupId>
        <artifactId>base-core</artifactId>
        <version>${base.version}</version>
      </dependency>
      <dependency>
        <groupId>io.github.barrieshieh.base</groupId>
        <artifactId>base-security-keycloak</artifactId>
        <version>${base.version}</version>
      </dependency>
      <!-- OpenAPI docs -->
      <!-- https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-ui -->
      <dependency>
        <groupId>org.springdoc</groupId>
        <artifactId>springdoc-openapi-ui</artifactId>
        <version>1.5.10</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/org.springdoc/springdoc-openapi-data-rest -->
      <!--            <dependency>-->
      <!--                <groupId>org.springdoc</groupId>-->
      <!--                <artifactId>springdoc-openapi-data-rest</artifactId>-->
      <!--                <version>1.2.32</version>-->
      <!--            </dependency>-->
      <!--Spring cloud-->
      <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies -->
      <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-dependencies</artifactId>
        <version>${spring-cloud.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
      <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.8.8</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/io.micrometer/micrometer-registry-prometheus -->
      <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-prometheus</artifactId>
        <version>1.7.3</version>
      </dependency>
      <!--   https://mvnrepository.com/artifact/io.micrometer/micrometer-core   -->
      <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-core</artifactId>
        <version>1.7.3</version>
      </dependency>
      <dependency>
        <groupId>cz.jirutka.rsql</groupId>
        <artifactId>rsql-parser</artifactId>
        <version>2.1.0</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/io.github.perplexhub/rsql-querydsl-spring-boot-starter -->
      <dependency>
        <groupId>io.github.perplexhub</groupId>
        <artifactId>rsql-querydsl-spring-boot-starter</artifactId>
        <version>5.0.18</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/joda-time/joda-time -->
      <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.10.10</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt -->
      <dependency>
        <groupId>io.jsonwebtoken</groupId>
        <artifactId>jjwt</artifactId>
        <version>0.9.1</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>30.1.1-jre</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/org.codehaus.groovy/groovy-all -->
      <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>3.0.8</version>
        <type>pom</type>
      </dependency>
      <!-- https://mvnrepository.com/artifact/net.logstash.logback/logstash-logback-encoder -->
      <dependency>
        <groupId>net.logstash.logback</groupId>
        <artifactId>logstash-logback-encoder</artifactId>
        <version>6.6</version>
      </dependency>
      <!--     GraphQL       -->
      <dependency>
        <groupId>com.graphql-java-kickstart</groupId>
        <artifactId>graphql-spring-boot-starter</artifactId>
        <version>${graphql-java.version}</version>
      </dependency>
      <!-- to embed Altair tool -->
      <dependency>
        <groupId>com.graphql-java-kickstart</groupId>
        <artifactId>altair-spring-boot-starter</artifactId>
        <version>${graphql-java.version}</version>
        <scope>runtime</scope>
      </dependency>
      <!-- to embed GraphiQL tool -->
      <dependency>
        <groupId>com.graphql-java-kickstart</groupId>
        <artifactId>graphiql-spring-boot-starter</artifactId>
        <version>${graphql-java.version}</version>
        <scope>runtime</scope>
      </dependency>
      <!-- to embed Voyager tool -->
      <dependency>
        <groupId>com.graphql-java-kickstart</groupId>
        <artifactId>voyager-spring-boot-starter</artifactId>
        <version>${graphql-java.version}</version>
        <scope>runtime</scope>
      </dependency>
      <!-- testing facilities -->
      <dependency>
        <groupId>com.graphql-java-kickstart</groupId>
        <artifactId>graphql-spring-boot-starter-test</artifactId>
        <version>${graphql-java.version}</version>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <!--        <configuration>-->
        <!--          <source>${java.version}</source>-->
        <!--          <target>${java.version}</target>-->
        <!--        </configuration>-->
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>versions-maven-plugin</artifactId>
        <configuration>
          <generateBackupPoms>false</generateBackupPoms>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.gmavenplus</groupId>
        <artifactId>gmavenplus-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.sonarsource.scanner.maven</groupId>
        <artifactId>sonar-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-failsafe-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
      </plugin>
      <!-- Source attach plugin -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>com.mysema.maven</groupId>
        <artifactId>apt-maven-plugin</artifactId>
        <version>1.1.3</version>
        <executions>
          <execution>
            <goals>
              <goal>process</goal>
            </goals>
            <configuration>
              <outputDirectory>target/generated-sources/java</outputDirectory>
              <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <version>1.2</version>
        <executions>
          <execution>
            <id>enforce-maven</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <requireMavenVersion>
                  <version>(,2.1.0),(2.1.0,2.2.0),(2.2.0,)</version>
                  <message>Maven 2.1.0 and 2.2.0 produce incorrect GPG signatures and checksums
                    respectively.
                  </message>
                </requireMavenVersion>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <!--      -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
          <source>11</source>
        </configuration>
        <executions>
          <execution>
            <id>attach-javadocs</id>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <!--      <plugin>-->
      <!--        <groupId>org.apache.maven.plugins</groupId>-->
      <!--        <artifactId>maven-gpg-plugin</artifactId>-->
      <!--        <version>1.6</version>-->
      <!--        <executions>-->
      <!--          <execution>-->
      <!--            <id>sign-artifacts</id>-->
      <!--            <phase>verify</phase>-->
      <!--            <goals>-->
      <!--              <goal>sign</goal>-->
      <!--            </goals>-->
      <!--          </execution>-->
      <!--        </executions>-->
      <!--      </plugin>-->
    </plugins>
    <pluginManagement>
      <plugins>
        <!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin -->
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.1</version>
        </plugin>
        <!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-failsafe-plugin -->
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>2.22.2</version>
        </plugin>

        <!-- https://mvnrepository.com/artifact/org.codehaus.mojo/versions-maven-plugin -->
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>versions-maven-plugin</artifactId>
          <version>2.8.1</version>
        </plugin>
        <!-- https://mvnrepository.com/artifact/org.codehaus.gmavenplus/gmavenplus-plugin -->
        <plugin>
          <groupId>org.codehaus.gmavenplus</groupId>
          <artifactId>gmavenplus-plugin</artifactId>
          <version>1.12.1</version>
        </plugin>
        <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
        <plugin>
          <groupId>org.sonarsource.scanner.maven</groupId>
          <artifactId>sonar-maven-plugin</artifactId>
          <version>3.9.0.2155</version>
        </plugin>
        <!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-surefire-plugin -->
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.2</version>
          <!--          <configuration>-->
          <!--            <argLine>${jacocoArgLine}</argLine>-->
          <!--            <reportsDirectory>${project.test.result.directory}/surefire</reportsDirectory>-->
          <!--          </configuration>-->
          <dependencies>
            <!-- https://mvnrepository.com/artifact/org.junit.platform/junit-platform-surefire-provider -->
            <dependency>
              <groupId>org.junit.platform</groupId>
              <artifactId>junit-platform-surefire-provider</artifactId>
              <version>1.3.2</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-engine -->
            <dependency>
              <groupId>org.junit.jupiter</groupId>
              <artifactId>junit-jupiter-engine</artifactId>
              <version>5.7.2</version>
            </dependency>
          </dependencies>
        </plugin>

        <plugin>
          <groupId>org.twdata.maven</groupId>
          <artifactId>sonar-oss-scanner-maven-plugin</artifactId>
          <version>1.0.5</version>
        </plugin>
        <!--    https://github.boschdevcloud.com/bios-bci-open-tools/fossid-tools/releases    -->
        <plugin>
          <groupId>com.bosch.bios.bot.fossid</groupId>
          <artifactId>fossid-tools-maven-plugin</artifactId>
          <version>0.17.0</version>
          <configuration>
            <projectCode>${fossid.projectKey}</projectCode>
            <breakBuild>false</breakBuild>
            <globPatterns>
              <globPattern>src/main</globPattern> <!--include project root -->
              <globPattern>**/src/main
              </globPattern> <!--include subprojects (will NOT match [projectRootDir]/src/main) -->
              <globPattern>!src/main/assembly</globPattern> <!--exclude-->
              <globPattern>!node_modules</globPattern> <!--exclude node dependencies (for root) -->
              <globPattern>!**/node_modules
              </globPattern> <!--exclude node dependencies (for subprojects) (will NOT match [projectRootDir]/src/main )-->
            </globPatterns>
          </configuration>
        </plugin>
        <plugin><!-- Tina plugin -->
          <groupId>com.bosch.tina</groupId>
          <artifactId>tina-bosch-mojo</artifactId>
          <version>2.5.3</version>
          <configuration>
            <productName>${project.version}</productName>
            <productFullname>${project.version}</productFullname>
            <version>${project.version}</version>
            <!--external workflow definiation <workflowDefinitionFile>${basedir}/workflow.xml</workflowDefinitionFile> -->
            <!-- inline workflow -->
            <workflow>
              <analyzers>
                <step>
                  <name>IQ Analyzer</name>
                  <classHint>com.bosch.tina.clm.SonatypeCLMCliAnalyzer</classHint>
                  <deactivated>${tina.analyze.nexus.iq.deactivated}</deactivated>
                  <configuration>
                    <entry>
                      <entryKey>server</entryKey>
                      <entryValue>https://clmserver.bosch-si.com</entryValue>
                    </entry>
                    <entry>
                      <entryKey>scan.result.path</entryKey>
                      <entryValue>
                        ${project.build.directory}/antenna/clm-scan-result.json
                      </entryValue>
                    </entry>
                    <entry>
                      <entryKey>app.id</entryKey>
                      <entryValue>${clm.projectKey}</entryValue>
                    </entry>
                    <entry>
                      <entryKey>username</entryKey>
                      <entryValue>${clm.username}</entryValue>
                    </entry>
                    <entry>
                      <entryKey>password</entryKey>
                      <entryValue>${clm.password}</entryValue>
                    </entry>
                    <entry>
                      <entryKey>clm.pdf.path</entryKey>
                      <entryValue>
                        ${project.build.directory}/antenna/clm-report.pdf
                      </entryValue>
                    </entry>
                    <entry>
                      <entryKey>scan.patterns</entryKey>
                      <entryValue>
                        ${clm.scan.patterns}
                      </entryValue>
                    </entry>
                  </configuration>
                </step>
              </analyzers>
              <processors>
                <step>
                  <name>Security Issue Validator</name>
                  <classHint>
                    org.eclipse.sw360.antenna.validators.workflow.processors.SecurityIssueValidator
                  </classHint>
                  <configuration>
                    <entry>
                      <entryKey>forbiddenSecurityIssueStatusSeverity</entryKey>
                      <entryValue>WARN</entryValue>
                    </entry>
                    <entry>
                      <entryKey>securityIssueSeverityLimitSeverity</entryKey>
                      <entryValue>WARN</entryValue>
                    </entry>
                    <entry>
                      <entryKey>forbiddenSecurityIssueStatuses</entryKey>
                      <entryValue>Open</entryValue>
                    </entry>
                    <entry>
                      <entryKey>securityIssueSeverityLimit</entryKey>
                      <entryValue>1.0</entryValue>
                    </entry>
                  </configuration>
                </step>
                <step>
                  <name>License Validator</name>
                  <classHint>
                    org.eclipse.sw360.antenna.validators.workflow.processors.LicenseValidator
                  </classHint>
                  <configuration>
                    <entry>
                      <entryKey>forbiddenLicenseSeverity</entryKey>
                      <entryValue>WARN</entryValue>
                    </entry>
                    <entry>
                      <entryKey>missingLicenseInformationSeverity</entryKey>
                      <entryValue>WARN</entryValue>
                    </entry>
                    <entry>
                      <entryKey>missingLicenseTextSeverity</entryKey>
                      <entryValue>INFO</entryValue>
                    </entry>
                    <entry>
                      <entryKey>forbiddenLicenses</entryKey>
                      <entryValue>AGPL, GPL, RPL, OSL</entryValue>
                    </entry>
                    <entry>
                      <entryKey>ignoredLicenses</entryKey>
                      <entryValue></entryValue>
                    </entry>
                  </configuration>
                </step>
              </processors>
            </workflow>
          </configuration>
          <dependencies><!-- To support above java 9 -->
            <dependency>
              <groupId>javax.xml.bind</groupId>
              <artifactId>jaxb-api</artifactId>
              <version>2.3.1</version>
            </dependency>
            <dependency>
              <groupId>org.glassfish.jaxb</groupId>
              <artifactId>jaxb-runtime</artifactId>
              <version>2.3.1</version>
            </dependency>
            <dependency>
              <groupId>javax.activation</groupId>
              <artifactId>activation</artifactId>
              <version>1.1.1</version>
            </dependency>
          </dependencies>
        </plugin>
        <!-- https://mvnrepository.com/artifact/org.jacoco/jacoco-maven-plugin -->
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>0.8.6</version>
          <executions>
            <execution>
              <id>pre-test</id>
              <goals>
                <goal>prepare-agent</goal>
              </goals>
              <!--              <configuration>-->
              <!--                <propertyName>jacocoArgLine</propertyName>-->
              <!--                <destFile>${project.test.result.directory}/jacoco/jacoco.exec</destFile>-->
              <!--              </configuration>-->
            </execution>
            <execution>
              <id>post-test</id>
              <phase>test</phase>
              <goals>
                <goal>report</goal>
              </goals>
              <!--              <configuration>-->
              <!--                <dataFile>${project.test.result.directory}/jacoco/jacoco.exec</dataFile>-->
              <!--                <outputDirectory>$${project.test.result.directory}/jacoco</outputDirectory>-->
              <!--              </configuration>-->
            </execution>
          </executions>
        </plugin>
        <!-- Source attach plugin -->
        <!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-source-plugin -->
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>3.2.1</version>
          <executions>
            <execution>
              <id>attach-sources</id>
              <goals>
                <goal>jar-no-fork</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
  <profiles>
    <profile>
      <id>deploy-ossrh</id>
      <distributionManagement>
        <snapshotRepository>
          <id>ossrh-snapshots</id>
          <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
        </snapshotRepository>
        <repository>
          <id>ossrh-releases</id>
          <url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>
      </distributionManagement>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>1.6</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
                <configuration>
                  <gpgArguments>
                    <arg>--pinentry-mode</arg>
                    <arg>loopback</arg>
                  </gpgArguments>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <!-- https://mvnrepository.com/artifact/org.sonatype.plugins/nexus-staging-maven-plugin -->
          <plugin>
            <groupId>org.sonatype.plugins</groupId>
            <artifactId>nexus-staging-maven-plugin</artifactId>
            <version>1.6.8</version>
            <extensions>true</extensions>
            <configuration>
              <serverId>ossrh</serverId>
              <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
              <autoReleaseAfterClose>true</autoReleaseAfterClose>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
