<?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:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

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

  <modelVersion>4.0.0</modelVersion>
  <groupId>org.kie.kogito</groupId>
  <artifactId>kogito-runtimes</artifactId>
  <version>10.0.0</version>
  <packaging>pom</packaging>

  <name>Kogito Runtimes</name>
  <description>Kogito Runtimes</description>

  <url>http://kogito.kie.org</url>
  <inceptionYear>2019</inceptionYear>
  <organization>
    <name>The Apache Software Foundation</name>
    <url>https://apache.org/</url>
  </organization>

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

  <scm>
    <connection>scm:git:https://github.com/apache/incubator-kie-kogito-runtimes.git</connection>
    <developerConnection>scm:git:https://github.com/apache/incubator-kie-kogito-runtimes.git</developerConnection>
    <url>https://github.com/apache/incubator-kie-kogito-runtimes</url>
  </scm>

  <developers>
    <developer>
      <name>The Apache KIE Team</name>
      <email>dev@kie.apache.org</email>
      <url>https://kie.apache.org</url>
      <organization>Apache Software Foundation</organization>
      <organizationUrl>http://apache.org/</organizationUrl>
    </developer>
  </developers>

  <mailingLists>
    <mailingList>
      <name>Development List</name>
      <subscribe>dev-subscribe@kie.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@kie.apache.org</unsubscribe>
      <post>dev@kie.apache.org</post>
      <archive>https://lists.apache.org/list.html?dev@kie.apache.org</archive>
    </mailingList>
    <mailingList>
      <name>User List</name>
      <subscribe>users-subscribe@kie.apache.org</subscribe>
      <unsubscribe>users-unsubscribe@kie.apache.org</unsubscribe>
      <post>users@kie.apache.org</post>
      <archive>https://lists.apache.org/list.html?users@kie.apache.org</archive>
    </mailingList>
    <mailingList>
      <name>Commits List</name>
      <subscribe>commits-subscribe@kie.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@kie.apache.org</unsubscribe>
      <post>commits@kie.apache.org</post>
      <archive>https://lists.apache.org/list.html?commits@kie.apache.org</archive>
    </mailingList>
  </mailingLists>

  <!--
      CONVENTIONS:
      - A version property must be specified in the format "version.{groupId}", optionally with a suffix to make it unique.
      - Version properties must be sorted alphabetically (other form of sorting were found to be unclear and ambiguous).
  -->
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.build.outputTimestamp>2024-12-01T23:57:46Z</project.build.outputTimestamp>
    <version.maven.artifact.plugin>3.4.1</version.maven.artifact.plugin>
    <version.apache-rat-plugin>0.16.1</version.apache-rat-plugin>
    <version.maven-javadoc-plugin>3.6.2</version.maven-javadoc-plugin>
  </properties>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-artifact-plugin</artifactId>
          <version>${version.maven.artifact.plugin}</version>
          <configuration>
            <outputTimestamp>${project.build.outputTimestamp}</outputTimestamp>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.rat</groupId>
          <artifactId>apache-rat-plugin</artifactId>
          <version>${version.apache-rat-plugin}</version>
          <configuration>
            <excludes>
              <exclude>.mvn/maven.config</exclude>
              <exclude>**/simple_invalid_migration.invalid</exclude>
              <exclude>**/*.mpf</exclude>
              <exclude>**/src/test/**/*.txt</exclude>
              <exclude>**/.gitkeep</exclude>
              <exclude>**/checkstyle-cachefile</exclude>
              <exclude>**/*.log</exclude>
              <exclude>**/*.lst</exclude>
              <exclude>**/requirements.txt</exclude>
              <exclude>**/*.addon</exclude>
              <exclude>**/*.avsc</exclude>
              <exclude>**/LoanUnit.xls.properties.test</exclude>
              <exclude>**/src_test_resources_application.yml</exclude>
              <exclude>**/BPMN*.xsd</exclude>
              <exclude>**/bpsim.xsd</exclude>
              <exclude>**/DC.xsd</exclude>
              <exclude>**/DI.xsd</exclude>
              <exclude>**/DiagramDefinition.xsd</exclude>
              <exclude>**/DiagramInterchange.xsd</exclude>
              <exclude>**/Semantic.xsd</exclude>
            </excludes>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

  <modules>
    <module>kogito-build</module>
    <module>kogito-bom</module>
    <module>api</module>
    <module>drools</module>
    <module>jbpm</module>
    <module>kogito-codegen-modules</module>
    <module>kogito-test-utils</module>
    <module>quarkus</module>
    <module>grafana-api</module>
    <module>addons</module>
    <module>kogito-workitems</module>
    <module>kogito-serverless-workflow</module>
    <module>kogito-maven-plugin</module>
    <module>springboot</module>
  </modules>

  <profiles>
    <profile>
      <id>reproducible-build</id>
      <activation>
        <property>
          <name>reproducible</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-artifact-plugin</artifactId>
            <executions>
              <execution>
                <id>check-buildplan</id>
                <goals>
                  <goal>check-buildplan</goal>
                </goals>
                <!-- The execution's configuration is part of the pluginManagement. This piece here only makes sure the
                     execution is enabled (by specifying a phase) for full profile builds. -->
                <phase>validate</phase>
              </execution>
              <execution>
                <id>compare</id>
                <goals>
                  <goal>compare</goal>
                </goals>
                <!-- The execution's configuration is part of the pluginManagement. This piece here only makes sure the
                     execution is enabled (by specifying a phase) for full profile builds. -->
                <phase>install</phase>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

</project>
