<?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>

  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>29</version>
  </parent>

  <groupId>org.apache.flume</groupId>
  <artifactId>flume-spring-boot-parent</artifactId>
  <name>Flume Spring Boot Parent</name>
  <version>2.0.0</version>
  <packaging>pom</packaging>

  <properties>
    <ReleaseVersion>2.0.0</ReleaseVersion>
    <ReleaseManager>Ralph Goers</ReleaseManager>
    <ReleaseKey>B3D8E1BA</ReleaseKey>
    <SigningUserName>rgoers@apache.org</SigningUserName>
    <checksum-maven-plugin.version>1.11</checksum-maven-plugin.version>
    <findsecbugs-plugin.version>1.12.0</findsecbugs-plugin.version>
    <flume.version>1.11.0</flume.version>
    <log4j.version>2.20.0</log4j.version>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
    <module.name>org.apache.flume.spring.boot</module.name>
    <mvn-gpg-plugin.version>1.6</mvn-gpg-plugin.version>
    <mvn-javadoc-plugin.version>2.9</mvn-javadoc-plugin.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <rat.version>0.12</rat.version>
    <slf4j.version>1.7.32</slf4j.version>
    <spotbugs-maven-plugin.version>4.7.2.1</spotbugs-maven-plugin.version>
    <spotless-maven-plugin.version>2.27.2</spotless-maven-plugin.version>
    <spring-boot.version>2.7.5</spring-boot.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.apache.flume</groupId>
        <artifactId>flume-spring-boot</artifactId>
        <version>${project.version}</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.apache.flume</groupId>
        <artifactId>flume-ng-configuration</artifactId>
        <version>${flume.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.flume</groupId>
        <artifactId>flume-ng-core</artifactId>
        <version>${flume.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.flume</groupId>
        <artifactId>flume-ng-node</artifactId>
        <version>${flume.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>${log4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-slf4j-impl</artifactId>
        <version>${log4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-1.2-api</artifactId>
        <version>${log4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-jcl</artifactId>
        <version>${log4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-jul</artifactId>
        <version>${log4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <inceptionYear>2022</inceptionYear>

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

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
    </license>
  </licenses>

  <mailingLists>
    <mailingList>
      <archive>http://mail-archives.apache.org/mod_mbox/flume-user/</archive>
      <name>Flume User List</name>
      <post>user@flume.apache.org</post>
      <subscribe>user-subscribe@flume.apache.org</subscribe>
      <unsubscribe>user-unsubscribe@flume.apache.org</unsubscribe>
    </mailingList>
    <mailingList>
      <archive>http://mail-archives.apache.org/mod_mbox/flume-dev/</archive>
      <name>Flume Developer List</name>
      <post>dev@flume.apache.org</post>
      <subscribe>dev-subscribe@flume.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@flume.apache.org</unsubscribe>
    </mailingList>
    <mailingList>
      <archive>http://mail-archives.apache.org/mod_mbox/flume-commits/</archive>
      <name>Flume Commits</name>
      <post>commits@flume.apache.org</post>
      <subscribe>commits-subscribe@flume.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@flume.apache.org</unsubscribe>
    </mailingList>
  </mailingLists>

  <scm>
    <url>https://gitbox.apache.org/repos/asf/flume-spring-boot.git</url>
    <developerConnection>https://gitbox.apache.org/repos/asf/flume-spring-boot.git</developerConnection>
    <connection>https://gitbox.apache.org/repos/asf/flume-spring-boot.git</connection>
  </scm>

  <developers>
    <developer>
      <name>Ralph Goers</name>
      <id>rgoers</id>
      <email>rgoers@apache.org</email>
      <organization>Intuit</organization>
    </developer>
  </developers>

  <organization>
    <name>Apache Software Foundation</name>
    <url>http://www.apache.org</url>
  </organization>
  <modules>
    <module>flume-spring-boot</module>
  </modules>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <version>${rat.version}</version>
        <configuration>
          <excludes>
            <exclude>**/.idea/</exclude>
            <exclude>**/*.iml</exclude>
            <exclude>src/main/resources/META-INF/services/**/*</exclude>
            <exclude>**/nb-configuration.xml</exclude>
            <exclude>.git/</exclude>
            <exclude>patchprocess/</exclude>
            <exclude>.gitignore</exclude>
            <exclude>**/*.yml</exclude>
            <exclude>**/*.yaml</exclude>
            <exclude>**/*.json</exclude>
            <!-- ASF jenkins box puts the Maven repo in our root directory. -->
            <exclude>.repository/</exclude>
            <exclude>**/*.diff</exclude>
            <exclude>**/*.patch</exclude>
            <exclude>**/*.avsc</exclude>
            <exclude>**/*.avro</exclude>
            <exclude>**/docs/**</exclude>
            <exclude>**/test/resources/**</exclude>
            <exclude>**/.settings/*</exclude>
            <exclude>**/.classpath</exclude>
            <exclude>**/.project</exclude>
            <exclude>**/target/**</exclude>
            <exclude>**/derby.log</exclude>
            <exclude>**/metastore_db/</exclude>
            <exclude>.mvn/**</exclude>
            <exclude>**/exclude-pmd.properties</exclude>
          </excludes>
          <consoleOutput>true</consoleOutput>
        </configuration>
        <executions>
          <execution>
            <id>verify.rat</id>
            <phase>verify</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

  <profiles>
    <profile>
      <id>release</id>
      <modules>
        <module>flume-spring-boot-dist</module>
      </modules>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>${mvn-gpg-plugin.version}</version>
            <executions>
              <execution>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
                <configuration>
                  <keyname>${SigningUserName}</keyname>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>${mvn-javadoc-plugin.version}</version>
            <executions>
              <execution>
                <id>javadoc-jar</id>
                <phase>package</phase>
                <goals>
                  <goal>aggregate-jar</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <additionalparam>-Xdoclint:none</additionalparam>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

</project>
