<?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/maven-v4_0_0.xsd">

    <parent>
        <groupId>com.atlassian.pom</groupId>
        <artifactId>closedsource-pom</artifactId>
        <version>6.0.0</version>
    </parent>

    <groupId>com.atlassian.servicedesk</groupId>
    <artifactId>jira-servicedesk-application-parent</artifactId>
    <version>5.15.0-QR-0035</version>

    <modelVersion>4.0.0</modelVersion>

    <name>JIRA Service Management Parent POM</name>
    <description>JIRA Service Management application definition.</description>
    <packaging>pom</packaging>

    <licenses>
        <license>
            <distribution>repo</distribution>
            <name>Atlassian 3.0 End User License Agreement</name>
            <url>http://www.atlassian.com/end-user-agreement/</url>
        </license>
    </licenses>

    <modules>
        <!--
            When adding a new module to this project, be sure to manage it to the current version (in this POM) and
            add a provided <dependency> on it to the application plugin POM, even if it's not a bundled plugin!

            If the application plugin only depends on the module through one or more bundled plugins that live outside
            this repository, Maven will refuse to build the application plugin until it has access to an artifact for
            the module, even though no such artifact could possibly affect the resultant OBR at this point.

            This won't happen if such an artifact happens to be installed in a local or remote repository, but there
            are many reasons why this might not be the case, so you can guarantee success by overriding the versions
            of all of these spurious dependencies and satisfying them with artifacts that Maven has just built.
        -->
        <module>jira-servicedesk-application</module>
        <module>sd-public-api</module>
        <module>sd-public-rest-api</module>
        <module>automation</module>
    </modules>

    <organization>
        <name>Atlassian</name>
        <url>http://www.atlassian.com</url>
    </organization>

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>com.atlassian.maven.plugins</groupId>
                <artifactId>jira-maven-plugin</artifactId>
                <version>${amps.version}</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <executions>
                    <execution>
                        <inherited>false</inherited>
                        <id>aggregate-documentation</id>
                        <phase>package</phase>
                        <goals>
                            <goal>aggregate-jar</goal>
                        </goals>
                        <configuration>
                            <doctitle>Jira Service Management ${project.version} API</doctitle>
                            <windowtitle>Jira Service Management ${project.version} API</windowtitle>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.atlassian.platform</groupId>
                <artifactId>platform</artifactId>
                <version>${platform.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.atlassian.platform</groupId>
                <artifactId>third-party</artifactId>
                <version>${platform.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- see <modules> in this POM -->

            <dependency>
                <groupId>${project.groupId}</groupId>
                <artifactId>jira-servicedesk-api</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>${project.groupId}</groupId>
                <artifactId>jira-servicedesk-rest-api</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>${project.groupId}</groupId>
                <artifactId>jira-servicedesk-automation-api</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>${project.groupId}</groupId>
                <artifactId>jira-servicedesk-automation-spi</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>com.atlassian.frontend</groupId>
                <artifactId>atlassian-frontend-runtime-plugin</artifactId>
                <version>${frontend.runtime.plugin.version}</version>
            </dependency>

            <!-- jira-servicedesk-api -->

            <dependency>
                <groupId>com.atlassian.jira</groupId>
                <artifactId>jira-api</artifactId>
                <version>${jira.version}</version>
                <scope>provided</scope>
                <exclusions>
                    <exclusion>
                        <artifactId>javax.servlet</artifactId>
                        <groupId>servlet-api</groupId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.google.javascript</groupId>
                        <artifactId>closure-compiler</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>joda-time</groupId>
                <artifactId>joda-time</artifactId>
                <version>${joda.time.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>org.joda</groupId>
                <artifactId>joda-convert</artifactId>
                <version>${joda.convert.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>jakarta.mail</groupId>
                <artifactId>jakarta.mail-api</artifactId>
                <version>${jakarta.mail.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>com.atlassian.pocketknife</groupId>
                <artifactId>atlassian-pocketknife-api-commons-jira</artifactId>
                <version>${pocketknife.api.commons.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>com.atlassian.pocketknife</groupId>
                <artifactId>atlassian-pocketknife-api-commons</artifactId>
                <version>${pocketknife.api.commons.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>com.atlassian.annotations</groupId>
                <artifactId>atlassian-annotations</artifactId>
                <version>${atlassian.annotations.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>io.atlassian.util.concurrent</groupId>
                <artifactId>atlassian-util-concurrent</artifactId>
                <version>${atlassian.util.concurrent.version}</version>
            </dependency>

            <!-- jira-servicedesk-rest-api -->

            <dependency>
                <groupId>org.codehaus.jackson</groupId>
                <artifactId>jackson-core-asl</artifactId>
                <version>${jackson.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>org.codehaus.jackson</groupId>
                <artifactId>jackson-mapper-asl</artifactId>
                <version>${jackson.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>com.atlassian.jira</groupId>
                <artifactId>jira-rest-api</artifactId>
                <version>${jira.version}</version>
                <scope>provided</scope>
            </dependency>

            <!-- jira-servicedesk-api + jira-servicedesk-rest-api -->

            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>${guava.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>com.google.code.findbugs</groupId>
                <artifactId>jsr305</artifactId>
                <version>${jsr305.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>javax.ws.rs</groupId>
                <artifactId>jsr311-api</artifactId>
                <version>${jsr311.version}</version>
            </dependency>

            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${junit.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-beans</artifactId>
                <version>${spring.beans.version}</version>
                <scope>provided</scope>
            </dependency>

        </dependencies>

    </dependencyManagement>

    <properties>
        <platform.version>5.0.0-m1</platform.version>
        <!-- Don't override jira.version and servicedesk.version when merge to platform -->
        <!-- Jira version that we compile, test and run against -->
        <!-- This is the *minimal compatible version* of Jira's REST & Java APIs. -->
        <jira.version>9.14.0-QR-20240122045030</jira.version>
        <servicedesk.version>15.15.0-QR-0023</servicedesk.version>

        <!-- Core -->
        <amps.version>8.1.1</amps.version>
        <automation.version>${servicedesk.version}</automation.version>
        <timed.promise.version>${servicedesk.version}</timed.promise.version>
        <jira.email.processor.plugin.version>${servicedesk.version}</jira.email.processor.plugin.version>
        <atlassian.client.resource.version>${servicedesk.version}</atlassian.client.resource.version>
        <pocketknife.api.commons.version>1.0.7</pocketknife.api.commons.version>
        <jsr311.version>1.1.1</jsr311.version>

        <!-- Language packs -->
        <language.pack.german>4.23.0.v20231206054615</language.pack.german>
        <language.pack.french>4.23.0.v20231206054615</language.pack.french>
        <language.pack.japanese>4.23.0.v20231206054615</language.pack.japanese>
        <language.pack.spanish>4.23.0.v20231206054615</language.pack.spanish>
        <language.pack.korean>4.23.0.v20231206054615</language.pack.korean>
        <language.pack.brazil>4.23.0.v20231206054615</language.pack.brazil>
        <language.pack.portugese>4.11.rc2.v20200624</language.pack.portugese><!-- no longer supported -->
        <language.pack.russian>4.23.0.v20231206054615</language.pack.russian>
        <language.pack.sweden>4.23.0.v20231206054615</language.pack.sweden>
        <language.pack.slovak>4.11.rc2.v20200624</language.pack.slovak><!-- no longer supported -->
        <language.pack.italian>4.23.0.v20231206054615</language.pack.italian>
        <language.pack.romanian>3.9.0.m0124-v2r588-2017-10-26</language.pack.romanian><!-- no longer supported -->
        <language.pack.polish>4.23.0.v20231206054615</language.pack.polish>
        <language.pack.norwegian>4.23.0.v20231206054615</language.pack.norwegian>
        <language.pack.icelandic>3.9.0.m0124-v2r106-2017-10-26</language.pack.icelandic><!-- no longer supported -->
        <language.pack.hungarian>4.23.0.v20231206054615</language.pack.hungarian>
        <language.pack.estonian>4.11.rc2.v20200624</language.pack.estonian><!-- no longer supported -->
        <language.pack.danish>4.23.0.v20231206054615</language.pack.danish>
        <language.pack.czech>4.23.0.v20231206054615</language.pack.czech>
        <language.pack.finnish>4.23.0.v20231206054615</language.pack.finnish>
        <language.pack.chinese.simplified>4.23.0.v20231206054615</language.pack.chinese.simplified>
        <language.pack.dutch>4.23.0.v20231206054615</language.pack.dutch>

        <!-- jira-servicedesk-api -->
        <atlassian.annotations.version>2.1.0</atlassian.annotations.version>
        <atlassian.util.concurrent.version>4.0.1</atlassian.util.concurrent.version>
        <javadoc.additional.params>-Xdoclint:none</javadoc.additional.params>
        <jakarta.mail.version>1.6.5-atlassian-2</jakarta.mail.version>

        <frontend.runtime.plugin.version>0.2.0</frontend.runtime.plugin.version>

        <!-- jira-servicedesk-rest-api -->
        <jackson.version>1.9.13-atlassian-3</jackson.version>

        <!-- thirdparty -->
        <joda.time.version>2.8.2</joda.time.version>
        <joda.convert.version>1.1</joda.convert.version>
        <apache.commons.lang3.version>3.8</apache.commons.lang3.version>
        <jsr305.version>3.0.2</jsr305.version>
        <guava.version>32.1.1-jre</guava.version>
        <spring.beans.version>5.3.19</spring.beans.version>

        <!-- Test -->
        <atlassian.selenium.version>2.3-m01</atlassian.selenium.version>
        <xvfb.enable>false</xvfb.enable>
        <junit.version>4.13.2</junit.version>

        <!-- Skip all of the tests -->
        <skipTests>false</skipTests>

        <!-- Skip only the integration tests -->
        <skipITs>${skipTests}</skipITs>

        <!-- Skip most of the unit tests. Can't seem to skip them all -->
        <skipUTs>${skipTests}</skipUTs>

        <!-- Take out when we don't use rc versions of jira and servicedesk -->
        <failOnMilestoneOrReleaseCandidateDeps>false</failOnMilestoneOrReleaseCandidateDeps>

        <!-- this is specified in base-pom and is used to specify the Java Version for this plugin -->
        <jdkLevel>1.8</jdkLevel>
        <!-- maven-compiler-plugin config -->
        <maven.compiler.source>${jdkLevel}</maven.compiler.source>
        <maven.compiler.target>${jdkLevel}</maven.compiler.target>

        <!-- maven-javadoc-plugin config -->
        <maven.javadoc.skip>true</maven.javadoc.skip>
    </properties>

    <scm>
        <connection>scm:git:ssh://git@stash.atlassian.com:7997/sdserver/jira-servicedesk-application.git</connection>
        <developerConnection>scm:git:ssh://git@stash.atlassian.com:7997/sdserver/jira-servicedesk-application.git</developerConnection>
        <url>https://stash.atlassian.com/projects/SDSERVER/repos/jira-servicedesk-application</url>
        <tag>HEAD</tag>
    </scm>

    <!--
    <ciManagement>
        <system>Bamboo</system>
        <url>https://servicedesk-bamboo.internal.atlassian.com/browse/SDA</url>
    </ciManagement>
    -->

    <profiles>
        <profile>
            <id>release-profile</id>
            <properties>
                <maven.javadoc.skip>false</maven.javadoc.skip>
            </properties>
        </profile>
    </profiles>

</project>