| <?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="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.apache.auron</groupId> |
| <artifactId>auron-parent_${scalaVersion}</artifactId> |
| <version>${project.version}</version> |
| <relativePath>../../pom.xml</relativePath> |
| </parent> |
| |
| <artifactId>auron-it-${shimName}_${scalaVersion}</artifactId> |
| <packaging>jar</packaging> |
| <name>Apache Auron Integration Tests</name> |
| <description>Apache Auron Integration Tests Project</description> |
| |
| <properties /> |
| |
| <dependencies> |
| <!-- auron spark uber jar --> |
| <dependency> |
| <groupId>org.apache.auron</groupId> |
| <artifactId>auron-${shimName}_${scalaVersion}</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.github.scopt</groupId> |
| <artifactId>scopt_${scalaVersion}</artifactId> |
| <version>4.1.0</version> |
| <scope>compile</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-core_${scalaVersion}</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-catalyst_${scalaVersion}</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-hive_${scalaVersion}</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-sql_${scalaVersion}</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-core_${scalaVersion}</artifactId> |
| <type>test-jar</type> |
| </dependency> |
| <dependency> |
| <groupId>org.scalatest</groupId> |
| <artifactId>scalatest_${scalaVersion}</artifactId> |
| <version>3.2.9</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <plugins> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${checkstyle-plugin.version}</version> |
| <configuration> |
| <failOnViolation>true</failOnViolation> |
| <includeTestSourceDirectory>true</includeTestSourceDirectory> |
| <sourceDirectories> |
| <directory>${project.basedir}/src/main/java</directory> |
| <directory>${project.basedir}/src/main/scala</directory> |
| </sourceDirectories> |
| <testSourceDirectories> |
| <directory>${project.basedir}/src/test/java</directory> |
| </testSourceDirectories> |
| <suppressionsLocation>${maven.multiModuleProjectDirectory}/../../dev/checkstyle-suppressions.xml</suppressionsLocation> |
| <configLocation>${maven.multiModuleProjectDirectory}/../../dev/checkstyle.xml</configLocation> |
| <outputFile>${project.basedir}/target/checkstyle-output.xml</outputFile> |
| <inputEncoding>UTF-8</inputEncoding> |
| <outputEncoding>UTF-8</outputEncoding> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>com.puppycrawl.tools</groupId> |
| <artifactId>checkstyle</artifactId> |
| <version>8.29</version> |
| </dependency> |
| </dependencies> |
| <executions> |
| <execution> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| <phase>validate</phase> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.scalastyle</groupId> |
| <artifactId>scalastyle-maven-plugin</artifactId> |
| <version>${maven.plugin.scalastyle.version}</version> |
| <configuration> |
| <verbose>false</verbose> |
| <failOnViolation>true</failOnViolation> |
| <includeTestSourceDirectory>false</includeTestSourceDirectory> |
| <failOnWarning>false</failOnWarning> |
| <sourceDirectory>${basedir}/src/main/scala</sourceDirectory> |
| <testSourceDirectory>${basedir}/src/test/scala</testSourceDirectory> |
| <configLocation>${maven.multiModuleProjectDirectory}/../../dev/scalastyle-config.xml</configLocation> |
| <outputFile>${basedir}/target/scalastyle-output.xml</outputFile> |
| <inputEncoding>${project.build.sourceEncoding}</inputEncoding> |
| <outputEncoding>${project.reporting.outputEncoding}</outputEncoding> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| <phase>validate</phase> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- spotless --> |
| <plugin> |
| <groupId>com.diffplug.spotless</groupId> |
| <artifactId>spotless-maven-plugin</artifactId> |
| <version>${spotless.plugin.version}</version> |
| <configuration> |
| <java> |
| <palantirJavaFormat /> |
| <removeUnusedImports /> |
| <licenseHeader> |
| <file>${maven.multiModuleProjectDirectory}/../../dev/license-header</file> |
| </licenseHeader> |
| </java> |
| <scala> |
| <scalafmt> |
| <version>${scalafmtVersion}</version> |
| <file>${maven.multiModuleProjectDirectory}/../../scalafmt.conf</file> |
| <scalaMajorVersion>${scalaVersion}</scalaMajorVersion> |
| </scalafmt> |
| <licenseHeader> |
| <file>${maven.multiModuleProjectDirectory}/../../dev/license-header</file> |
| </licenseHeader> |
| </scala> |
| <pom> |
| <sortPom> |
| <encoding>UTF-8</encoding> |
| <lineSeparator>${line.separator}</lineSeparator> |
| <expandEmptyElements>false</expandEmptyElements> |
| <spaceBeforeCloseEmptyElement>true</spaceBeforeCloseEmptyElement> |
| <keepBlankLines>true</keepBlankLines> |
| <nrOfIndentSpace>2</nrOfIndentSpace> |
| <indentBlankLines>false</indentBlankLines> |
| <indentSchemaLocation>false</indentSchemaLocation> |
| <predefinedSortOrder>recommended_2008_06</predefinedSortOrder> |
| <sortOrderFile /> |
| <sortDependencies /> |
| <sortDependencyExclusions /> |
| <sortPlugins /> |
| <sortProperties>false</sortProperties> |
| <sortModules>false</sortModules> |
| <sortExecutions>false</sortExecutions> |
| </sortPom> |
| </pom> |
| </configuration> |
| <executions> |
| <execution> |
| <id>scalafix</id> |
| <goals> |
| <goal>apply</goal> |
| </goals> |
| <phase>validate</phase> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- scalafix --> |
| <plugin> |
| <groupId>io.github.evis</groupId> |
| <artifactId>scalafix-maven-plugin_${scalaVersion}</artifactId> |
| <version>0.1.4_0.9.31</version> |
| <configuration> |
| <config>${maven.multiModuleProjectDirectory}/../../scalafix.conf</config> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>com.nequissimus</groupId> |
| <artifactId>sort-imports_${scalaVersion}</artifactId> |
| <version>0.6.1</version> |
| </dependency> |
| </dependencies> |
| <executions> |
| <execution> |
| <id>scalafix</id> |
| <goals> |
| <goal>scalafix</goal> |
| </goals> |
| <phase>prepare-package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <inherited>true</inherited> |
| <configuration> |
| <excludeSubProjects>false</excludeSubProjects> |
| <numUnapprovedLicenses>0</numUnapprovedLicenses> |
| <licenseFamilies> |
| <licenseFamily implementation="org.apache.rat.license.SimpleLicenseFamily"> |
| <familyName>Apache License 2.0</familyName> |
| </licenseFamily> |
| </licenseFamilies> |
| <excludesFile>${maven.multiModuleProjectDirectory}/../../.rat-excludes</excludesFile> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| <phase>verify</phase> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-shade-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>shade</goal> |
| </goals> |
| <phase>package</phase> |
| <configuration> |
| <createDependencyReducedPom>true</createDependencyReducedPom> |
| <shadedArtifactAttached>true</shadedArtifactAttached> |
| <shadedClassifierName>jar-with-dependencies</shadedClassifierName> |
| <filters> |
| <filter> |
| <artifact>*:*</artifact> |
| </filter> |
| </filters> |
| <relocations /> |
| <transformers> |
| <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" /> |
| <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> |
| <mainClass>org.apache.auron.integration.Main</mainClass> |
| </transformer> |
| </transformers> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <profiles> |
| <profile> |
| <id>spark-3.0</id> |
| <properties> |
| <shimName>spark-3.0</shimName> |
| <sparkVersion>3.0.3</sparkVersion> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>spark-3.1</id> |
| <properties> |
| <shimName>spark-3.1</shimName> |
| <sparkVersion>3.1.3</sparkVersion> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>spark-3.2</id> |
| <properties> |
| <shimName>spark-3.2</shimName> |
| <sparkVersion>3.2.4</sparkVersion> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>spark-3.3</id> |
| <properties> |
| <shimName>spark-3.3</shimName> |
| <sparkVersion>3.3.4</sparkVersion> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>spark-3.4</id> |
| <properties> |
| <shimName>spark-3.4</shimName> |
| <sparkVersion>3.4.4</sparkVersion> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>spark-3.5</id> |
| <properties> |
| <shimName>spark-3.5</shimName> |
| <sparkVersion>3.5.7</sparkVersion> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>spark-4.0</id> |
| <properties> |
| <shimName>spark-4.0</shimName> |
| <sparkVersion>4.0.2</sparkVersion> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>${maven-enforcer-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>spark40-enforce-java-scala-version</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <!-- Spark 4.0 requires JDK 17+ and Scala 2.13.x --> |
| <requireJavaVersion> |
| <version>[17,)</version> |
| <message>Spark 4.0 requires JDK 17 or higher. Current: ${java.version}</message> |
| </requireJavaVersion> |
| <requireProperty> |
| <property>scalaLongVersion</property> |
| <regex>2\.13\.\d+</regex> |
| <regexMessage>Spark 4.0 requires Scala 2.13.x. Current: ${scalaLongVersion}</regexMessage> |
| </requireProperty> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| |
| <profile> |
| <id>spark-4.1</id> |
| <properties> |
| <shimName>spark-4.1</shimName> |
| <sparkVersion>4.1.1</sparkVersion> |
| </properties> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>${maven-enforcer-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>spark41-enforce-java-scala-version</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <!-- Spark 4.1 requires JDK 17+ and Scala 2.13.x --> |
| <requireJavaVersion> |
| <version>[17,)</version> |
| <message>Spark 4.1 requires JDK 17 or higher. Current: ${java.version}</message> |
| </requireJavaVersion> |
| <requireProperty> |
| <property>scalaLongVersion</property> |
| <regex>2\.13\.\d+</regex> |
| <regexMessage>Spark 4.1 requires Scala 2.13.x. Current: ${scalaLongVersion}</regexMessage> |
| </requireProperty> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| |
| <profile> |
| <id>scala-2.12</id> |
| <properties> |
| <scalaVersion>2.12</scalaVersion> |
| <scalaLongVersion>2.12.18</scalaLongVersion> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>scala-2.13</id> |
| <properties> |
| <scalaVersion>2.13</scalaVersion> |
| <scalaLongVersion>2.13.17</scalaLongVersion> |
| </properties> |
| </profile> |
| </profiles> |
| </project> |