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

  <parent>
    <groupId>io.camunda</groupId>
    <artifactId>zeebe-parent</artifactId>
    <version>8.5.2</version>
    <relativePath>parent/pom.xml</relativePath>
  </parent>

  <artifactId>zeebe-root</artifactId>
  <packaging>pom</packaging>

  <name>Zeebe Root</name>

  <modules>
    <module>bom</module>
    <module>parent</module>
    <module>dist</module>
    <module>build-tools</module>
    <module>spring-boot-starter-camunda-sdk</module>
    <module>zeebe/atomix</module>
    <module>zeebe/auth</module>
    <module>zeebe/broker</module>
    <module>zeebe/broker-client</module>
    <module>zeebe/protocol-test-util</module>
    <module>zeebe/protocol</module>
    <module>zeebe/bpmn-model</module>
    <module>zeebe/logstreams</module>
    <module>zeebe/stream-platform</module>
    <module>zeebe/engine</module>
    <module>zeebe/transport</module>
    <module>zeebe/util</module>
    <module>zeebe/test-util</module>
    <module>zeebe/msgpack-core</module>
    <module>zeebe/msgpack-value</module>
    <module>zeebe/gateway-protocol</module>
    <module>zeebe/gateway-protocol-impl</module>
    <module>zeebe/gateway</module>
    <module>zeebe/gateway-rest</module>
    <module>zeebe/clients/java</module>
    <module>zeebe/clients/zeebe-client-spring</module>
    <module>zeebe/exporter-api</module>
    <module>zeebe/exporter-test</module>
    <module>zeebe/protocol-asserts</module>
    <module>zeebe/exporters/elasticsearch-exporter</module>
    <module>zeebe/exporters/opensearch-exporter</module>
    <module>zeebe/protocol-impl</module>
    <module>zeebe/protocol-jackson</module>
    <module>zeebe/zb-db</module>
    <module>zeebe/expression-language</module>
    <module>zeebe/feel</module>
    <module>zeebe/dmn</module>
    <module>zeebe/snapshot</module>
    <module>zeebe/journal</module>
    <module>zeebe/qa</module>
    <module>zeebe/benchmarks/project</module>
    <module>zeebe/scheduler</module>
    <module>zeebe/backup</module>
    <module>zeebe/backup-stores/testkit</module>
    <module>zeebe/backup-stores/s3</module>
    <module>zeebe/backup-stores/gcs</module>
    <module>zeebe/backup-stores/azure</module>
    <module>zeebe/backup-stores/common</module>
    <module>zeebe/restore</module>
    <module>zeebe/topology</module>
  </modules>

  <scm>
    <connection>scm:git:https://${env.GITHUB_TOKEN_USR}:${env.GITHUB_TOKEN_PSW}@github.com/camunda/zeebe.git</connection>
    <developerConnection>scm:git:https://${env.GITHUB_TOKEN_USR}:${env.GITHUB_TOKEN_PSW}@github.com/camunda/zeebe.git</developerConnection>
    <tag>8.5.2</tag>
    <url>https://github.com/camunda/zeebe</url>
  </scm>

  <build>
    <plugins>
      <!-- While other files are generally placed in a special directory, markdown files are not.
      To make sure all markdown files are formatted, we need to rely on the **/*.md pattern.
      This pattern will match all *.md files in all subdirectories (also in all submodules).
      So, we need to define it in the root-pom only to avoid formatting the files more than once.-->
      <plugin>
        <groupId>com.diffplug.spotless</groupId>
        <artifactId>spotless-maven-plugin</artifactId>
        <configuration>
          <markdown>
            <includes>
              <include>**/*.md</include>
            </includes>
            <excludes>
              <exclude>**/target/**/*.md</exclude>
              <exclude>clients/go/vendor/**/*.md</exclude>
            </excludes>
            <flexmark />
          </markdown>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>
