<?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>com.facebook.airlift</groupId>
        <artifactId>airbase</artifactId>
        <version>98</version>
    </parent>

    <groupId>com.facebook.presto</groupId>
    <artifactId>presto-release-tools-root</artifactId>
    <version>0.12</version>
    <packaging>pom</packaging>

    <name>presto-release-tools-root</name>
    <description>Standard utilities to release Presto</description>
    <url>https://github.com/prestodb/presto-release-tools</url>

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

    <scm>
        <connection>scm:git:git://github.com/prestodb/presto-release-tools.git</connection>
        <url>https://github.com/prestodb/presto-release-tools</url>
        <tag>0.12</tag>
    </scm>

    <properties>
        <air.main.basedir>${project.basedir}</air.main.basedir>

        <air.check.skip-spotbugs>true</air.check.skip-spotbugs>
        <air.check.skip-pmd>true</air.check.skip-pmd>
        <air.check.skip-jacoco>true</air.check.skip-jacoco>
        <air.checkstyle.config-file>src/checkstyle/presto-checks.xml</air.checkstyle.config-file>
        <air.javadoc.lint>-missing</air.javadoc.lint>

        <dep.jetty-utils.version>9.4.14.v20181114</dep.jetty-utils.version>
        <dep.airlift.version>0.188</dep.airlift.version>
        <dep.packaging.version>${dep.airlift.version}</dep.packaging.version>
        <dep.testng.version>6.10</dep.testng.version>
        <dep.nexus-staging-plugin.version>1.6.8</dep.nexus-staging-plugin.version>
    </properties>

    <modules>
        <module>presto-release-tools</module>
    </modules>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-util</artifactId>
                <version>${dep.jetty-utils.version}</version>
            </dependency>

            <dependency>
                <groupId>com.facebook.airlift</groupId>
                <artifactId>bootstrap</artifactId>
                <version>${dep.airlift.version}</version>
            </dependency>

            <dependency>
                <groupId>com.facebook.airlift</groupId>
                <artifactId>configuration</artifactId>
                <version>${dep.airlift.version}</version>
            </dependency>

            <dependency>
                <groupId>com.facebook.airlift</groupId>
                <artifactId>http-client</artifactId>
                <version>${dep.airlift.version}</version>
            </dependency>

            <dependency>
                <groupId>com.facebook.airlift</groupId>
                <artifactId>log</artifactId>
                <version>${dep.airlift.version}</version>
            </dependency>

            <dependency>
                <groupId>com.facebook.airlift</groupId>
                <artifactId>json</artifactId>
                <version>${dep.airlift.version}</version>
            </dependency>

            <dependency>
                <groupId>com.facebook.airlift</groupId>
                <artifactId>testing</artifactId>
                <version>${dep.airlift.version}</version>
            </dependency>

            <dependency>
                <groupId>io.airlift</groupId>
                <artifactId>airline</artifactId>
                <version>0.8</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-shade-plugin</artifactId>
                    <version>3.2.1</version>
                </plugin>

                <plugin>
                    <groupId>org.skife.maven</groupId>
                    <artifactId>really-executable-jar-maven-plugin</artifactId>
                    <version>1.5.0</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>1.6.0</version>
                </plugin>

                <plugin>
                    <groupId>org.gaul</groupId>
                    <artifactId>modernizer-maven-plugin</artifactId>
                    <configuration>
                        <violationsFiles>
                            <violationsFile>${air.main.basedir}/src/modernizer/violations.xml</violationsFile>
                        </violationsFiles>
                        <exclusionPatterns>
                            <exclusionPattern>org/joda/time/.*</exclusionPattern>
                        </exclusionPatterns>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>3.11.2</version>
                    <executions>
                        <execution>
                            <id>attach-javadocs</id>
                            <phase>prepare-package</phase>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-gpg-plugin</artifactId>
                    <version>3.2.7</version>
                    <executions>
                        <execution>
                            <id>sign-artifacts</id>
                            <phase>verify</phase>
                            <goals>
                                <goal>sign</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <configuration>
                        <preparationGoals>clean verify -DskipTests</preparationGoals>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.sonatype.plugins</groupId>
                    <artifactId>nexus-staging-maven-plugin</artifactId>
                    <version>${dep.nexus-staging-plugin.version}</version>
                    <extensions>true</extensions>
                    <configuration>
                        <serverId>ossrh</serverId>
                        <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <profiles>
        <profile>
            <id>deploy-to-ossrh</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.sonatype.plugins</groupId>
                        <artifactId>nexus-staging-maven-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>
