| <?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"> |
| <modelVersion>4.0.0</modelVersion> |
| <groupId>org.apache.drill.test</groupId> |
| <artifactId>framework</artifactId> |
| <packaging>jar</packaging> |
| <version>1.0.0-SNAPSHOT</version> |
| <properties> |
| <testng.version>6.4</testng.version> |
| <slf4j.version>1.7.26</slf4j.version> |
| <logback.version>1.2.9</logback.version> |
| <jackson.version>2.12.7.1</jackson.version> |
| <guava.version>30.1.1-jre</guava.version> |
| <drill.version>2.0.0-SNAPSHOT</drill.version> |
| <hadoop.version>3.2.2</hadoop.version> |
| <drill.test.framework.root>${project.basedir}/..</drill.test.framework.root> |
| <drill.home>${project.basedir}/../../drill</drill.home> |
| <drill.distribution>${drill.home}/distribution/target/apache-drill-${drill.version}/apache-drill-${drill.version}/</drill.distribution> |
| <drill.jdbc.driver.path>jars/jdbc-driver/drill-jdbc-all-${drill.version}.jar</drill.jdbc.driver.path> |
| <drill.java.exec.path>jars/drill-java-exec-${drill.version}.jar</drill.java.exec.path> |
| <m2.home>${env.HOME}/.m2</m2.home> |
| <runtimeDepenencies>${drill.distribution}/conf</runtimeDepenencies> |
| <maven.surefire.plugin.version>2.19.1</maven.surefire.plugin.version> |
| <!-- Docker Plugin Properties --> |
| <maven.docker.plugin.version>0.38.1</maven.docker.plugin.version> |
| <docker.base.image>maven:3.8.4-jdk-11</docker.base.image> |
| <docker.automation.root>/root/testAutomation</docker.automation.root> |
| <docker.drill.test.framework.home>${docker.automation.root}/drill-test-framework</docker.drill.test.framework.home> |
| <docker.drill.home>${docker.automation.root}/apache-drill-${drill.version}</docker.drill.home> |
| <test.args>-s Functional -g empty</test.args> |
| </properties> |
| <dependencies> |
| <dependency> |
| <groupId>xerces</groupId> |
| <artifactId>xercesImpl</artifactId> |
| <version>2.12.2</version> |
| </dependency> |
| <dependency> |
| <groupId>org.ojai</groupId> |
| <artifactId>ojai</artifactId> |
| <version>1.1</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.zookeeper</groupId> |
| <artifactId>zookeeper</artifactId> |
| <version>3.4.14</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <artifactId>log4j</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-classic</artifactId> |
| <version>${logback.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>ch.qos.logback</groupId> |
| <artifactId>logback-core</artifactId> |
| <version>${logback.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>4.12</version> |
| </dependency> |
| <dependency> |
| <groupId>org.json</groupId> |
| <artifactId>json</artifactId> |
| <version>20230227</version> |
| </dependency> |
| <dependency> |
| <groupId>com.sdicons.jsontools</groupId> |
| <artifactId>jsontools-core</artifactId> |
| <version>1.7</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>${guava.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-aws</artifactId> |
| <version>${hadoop.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-client</artifactId> |
| <version>${hadoop.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <artifactId>log4j</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>jackson-mapper-asl</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-json</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpclient</artifactId> |
| <version>4.5.13</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.drill.exec</groupId> |
| <artifactId>drill-jdbc-all</artifactId> |
| <version>${drill.version}</version> |
| <systemPath>${drill.distribution}/${drill.jdbc.driver.path}</systemPath> |
| <scope>system</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.drill.exec</groupId> |
| <artifactId>drill-java-exec</artifactId> |
| <version>${drill.version}</version> |
| <systemPath>${drill.distribution}/${drill.java.exec.path}</systemPath> |
| <scope>system</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.beust</groupId> |
| <artifactId>jcommander</artifactId> |
| <version>1.30</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.jaxrs</groupId> |
| <artifactId>jackson-jaxrs-json-provider</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-core</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-databind</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-annotations</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.testng</groupId> |
| <artifactId>testng</artifactId> |
| <version>${testng.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.typesafe</groupId> |
| <artifactId>config</artifactId> |
| <version>1.3.2</version> |
| </dependency> |
| <dependency> |
| <groupId>com.jcraft</groupId> |
| <artifactId>jsch</artifactId> |
| <version>0.1.53</version> |
| </dependency> |
| </dependencies> |
| <repositories> |
| <repository> |
| <id>mapr-releases</id> |
| <url>http://repository.mapr.com/maven/</url> |
| <releases> |
| <enabled>false</enabled> |
| </releases> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| </repository> |
| </repositories> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>io.fabric8</groupId> |
| <artifactId>docker-maven-plugin</artifactId> |
| <version>${maven.docker.plugin.version}</version> |
| <configuration> |
| <showLogs>true</showLogs> |
| <verbose>true</verbose> |
| <images> |
| <image> |
| <name>drill-test-framework</name> |
| <build> |
| <nocache>false</nocache> |
| <from>${docker.base.image}</from> |
| </build> |
| <run> |
| <containerNamePattern>%n_%t_%i</containerNamePattern> |
| <wait> |
| <exit>0</exit> |
| <time>1210000000</time> |
| </wait> |
| <volumes> |
| <bind> |
| <volume>${drill.test.framework.root}:${docker.drill.test.framework.home}</volume> |
| <volume>${drill.distribution}:${docker.drill.home}</volume> |
| <volume>${m2.home}:/root/.m2</volume> |
| </bind> |
| </volumes> |
| <workingDir>${docker.drill.test.framework.home}</workingDir> |
| <network> |
| <mode>host</mode> |
| </network> |
| <cmd> |
| <shell>/bin/bash bin/run_tests --jdbcCP ${docker.drill.home}/${drill.jdbc.driver.path} ${test.args}</shell> |
| </cmd> |
| </run> |
| </image> |
| </images> |
| </configuration> |
| <!--<executions> |
| <execution> |
| <phase>install</phase> |
| <goals> |
| <goal>build</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>start</id> |
| <phase>test</phase> |
| <goals> |
| <goal>run</goal> |
| <goal>stop</goal> |
| </goals> |
| </execution> |
| </executions>--> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-shade-plugin</artifactId> |
| <version>3.1.0</version> |
| <configuration> |
| <shadedArtifactAttached>true</shadedArtifactAttached> |
| <transformers> |
| <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> |
| <mainClass>org.apache.drill.test.framework.TestDriver</mainClass> |
| </transformer> |
| </transformers> |
| </configuration> |
| <executions> |
| <execution> |
| <id>shade</id> |
| <!--phase>package</phase--> |
| <!-- default --> |
| <goals> |
| <goal>shade</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-resources-plugin</artifactId> |
| <version>2.6</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-clean-plugin</artifactId> |
| <version>2.5</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.1</version> |
| <configuration> |
| <source>1.8</source> |
| <target>1.8</target> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-install-plugin</artifactId> |
| <version>2.4</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <version>2.4</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>test-jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>pl.project13.maven</groupId> |
| <artifactId>git-commit-id-plugin</artifactId> |
| <version>2.2.5</version> |
| <executions> |
| <execution> |
| <id>get-the-git-infos</id> |
| <goals> |
| <goal>revision</goal> |
| </goals> |
| </execution> |
| </executions> |
| |
| <configuration> |
| <dotGitDirectory>${project.basedir}/../.git</dotGitDirectory> |
| <generateGitPropertiesFile>true</generateGitPropertiesFile> |
| <generateGitPropertiesFilename>${project.basedir}/../git.properties</generateGitPropertiesFilename> |
| <failOnNoGitDirectory>false</failOnNoGitDirectory> |
| <failOnUnableToExtractRepoInfo>false</failOnUnableToExtractRepoInfo> |
| <gitDescribe> |
| <always>false</always> |
| <forceLongFormat>true</forceLongFormat> |
| </gitDescribe> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| <profiles> |
| <profile> |
| <id>download</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>com.googlecode.maven-download-plugin</groupId> |
| <artifactId>download-maven-plugin</artifactId> |
| <version>1.2.0</version> |
| <executions> |
| <execution> |
| <id>install-tpcds-hivegenerate-parquet</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/tpcds_hivegenerated_parquet.tgz</url> |
| <outputFileName>tpcds_hivegenerated_parquet.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources</outputDirectory> |
| <md5>b585a419fb5ceda6daa91a8bc19c2365</md5> |
| </configuration> |
| </execution> |
| <execution> |
| <id>install-tpcds1-hive1dot2-withdate</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/tpcds1_hive1dot2_withdate.tgz</url> |
| <outputFileName>tpcds1_hive1dot2_withdate.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>install-complexga100k-tgz-json</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/complexga100k.json.tgz</url> |
| <outputFileName>complexga100k.json.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/complex/json</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>install-complex-tgz-json</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/complex.json.tgz</url> |
| <outputFileName>complex.json.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/complex/json</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>install-mondrian-tgz-parquet</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/mondrian_parquet.tgz</url> |
| <outputFileName>mondrian_parquet.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/mondrian</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>schema_change_empty_batch</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/schema_change_empty_batch.tgz</url> |
| <outputFileName>schema_change_empty_batch.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/schema_change_empty_batch/</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>func-passing-widestrings-large</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/func-passing-widestrings-large.tgz</url> |
| <outputFileName>func-passing-widestrings-large.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory> |
| ${project.basedir}/resources/Functional/data-shapes/wide-columns/5000/1000rows/parquet/ |
| </outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>flatten-operators-100000rows</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/flatten-operators-100000rows.tgz</url> |
| <outputFileName>flatten-operators-100000rows.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/flatten_operators/</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>func-passing-flatten-operators-large</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/func-passing-flatten-operators-large.tgz</url> |
| <outputFileName>func-passing-flatten-operators-large.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Functional/flatten_operators/100000rows/ |
| </outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpch_sf1_parquet</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>https://s3-us-west-1.amazonaws.com/apache-drill-s3/tpch/sf1/tpch_sf1_parquet.tar.gz</url> |
| <outputFileName>tpch_sf1_parquet.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpch/sf1/parquet</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpch_sf1_json</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>https://s3-us-west-1.amazonaws.com/apache-drill-s3/tpch/sf1/tpch_sf1_json.tar.gz</url> |
| <outputFileName>tpch_sf1_json.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpch/sf1/json</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpch_sf1_text</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>https://s3-us-west-1.amazonaws.com/apache-drill-s3/tpch/sf1/tpch_sf1_text.tar.gz</url> |
| <outputFileName>tpch_sf1_text.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpch/sf1/text</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpch_sf1_maprdb_json</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>https://s3-us-west-1.amazonaws.com/apache-drill-s3/tpch/sf1/tpch_sf1_maprdb_json.tar.gz</url> |
| <outputFileName>tpch_sf1_maprdb_json.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpch/sf1/maprdb/json</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpcds_sf1_parquet</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/tpcds/tpcds_sf1_parquet.tar.gz</url> |
| <outputFileName>tpcds_sf1_parquet.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpcds/sf1/parquet</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpcds_sf1_json</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/tpcds/tpcds_sf1_json.tar.gz</url> |
| <outputFileName>tpcds_sf1_json.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpcds/sf1/json</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpcds_text_sf1</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/tpcds/tpcds_sf1_text.tar.gz</url> |
| <outputFileName>tpcds_text_sf1.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpcds/sf1/text</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tpcds_sf1_maprdb_json</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>https://s3-us-west-1.amazonaws.com/apache-drill-s3/tpcds/sf1/tpcds_sf1_maprdb_json.tar.gz</url> |
| <outputFileName>tpcds_sf1_maprdb_json.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/tpcds/sf1/maprdb/json</outputDirectory> |
| </configuration> |
| </execution> |
| <execution> |
| <id>md1119_parquet</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>wget</goal> |
| </goals> |
| <configuration> |
| <url>http://apache-drill-s3.s3.amazonaws.com/files/md1119_parquet.tgz</url> |
| <outputFileName>md1119_parquet.tgz</outputFileName> |
| <unpack>true</unpack> |
| <outputDirectory>${project.basedir}/resources/Datasources/hive_storage/</outputDirectory> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>testng</id> |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>testngtest</id> |
| <goals> |
| <goal>test</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <suiteXmlFiles> |
| <suiteXmlFile>testng-java.xml</suiteXmlFile> |
| </suiteXmlFiles> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <configuration> |
| <source>1.8</source> |
| <target>1.8</target> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| </profile> |
| </profiles> |
| </project> |