<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.camunda.community</groupId>
    <artifactId>community-hub-release-parent</artifactId>
    <version>1.2.2</version>
    <relativePath />
  </parent>

  <artifactId>camunda-platform-7-grpc-external-task-root</artifactId>
  <inceptionYear>2019</inceptionYear>
  <version>0.2.0</version>

  <packaging>pom</packaging>

  <modules>
    <module>core</module>
    <module>starter</module>
    <module>client-core</module>
  </modules>

  <properties>
    <version.java>1.8</version.java>
    
    <camunda.version>7.14.0</camunda.version>
    <camunda.externalTaskJava.version>1.4.0</camunda.externalTaskJava.version>
    
    <springBoot.version>2.4.1</springBoot.version>
    <grpc.version>1.34.1</grpc.version>
    <grpcSpringBootStarter.version>4.3.0</grpcSpringBootStarter.version>

    <maven.javadoc.failOnError>false</maven.javadoc.failOnError>
    <!-- disable javadoc linter for JDK8 to not fail on incomplete javadoc -->
    <additionalparam>-Xdoclint:none</additionalparam>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <failOnMissingWebXml>false</failOnMissingWebXml>
    <license.includeTransitiveDependencies>false</license.includeTransitiveDependencies>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.camunda.bpm</groupId>
        <artifactId>camunda-bom</artifactId>
        <version>${camunda.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.camunda.bpm</groupId>
        <artifactId>camunda-external-task-client</artifactId>
        <version>${camunda.externalTaskJava.version}</version>
      </dependency>
      <dependency>
        <!-- Import dependency management from Spring Boot -->
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${springBoot.version}</version>
        <scope>import</scope>
        <type>pom</type>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-protobuf</artifactId>
        <version>${grpc.version}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-stub</artifactId>
        <version>${grpc.version}</version>
      </dependency>
      <dependency>
        <groupId>io.grpc</groupId>
        <artifactId>grpc-netty-shaded</artifactId>
        <version>${grpc.version}</version>
      </dependency>
      <dependency>
        <groupId>io.github.lognet</groupId>
        <artifactId>grpc-spring-boot-starter</artifactId>
        <version>${grpcSpringBootStarter.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>
  
  <profiles>
    <profile>
      <id>include-examples</id>
      <modules>
        <module>examples/server</module>
        <module>examples/client</module>
      </modules>
    </profile>
    <profile>
      <id>community-action-maven-release</id>
      <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>
                </execution>
            </executions>
            <configuration>
                <!-- Prevent gpg from using pinentry programs -->
                <gpgArguments>
                    <arg>--pinentry-mode</arg>
                    <arg>loopback</arg>
                </gpgArguments>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

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

  <scm>
    <connection>scm:git:git@github.com:camunda-community-hub/camunda-platform-7-grpc-external-task.git</connection>
    <url>scm:git:git@github.com:camunda-community-hub/camunda-platform-7-grpc-external-task.git</url>
    <developerConnection>scm:git:git@github.com:camunda-community-hub/camunda-platform-7-grpc-external-task.git</developerConnection>
    <tag>HEAD</tag>
  </scm>

</project>
