blob: 412b7dbd0b1863423fec7bf975c2b5e41756ba87 [file] [log] [blame]
Till Westmann276bbc22013-06-05 18:56:27 -07001<!--
Ian Maxond8857792015-09-11 14:19:53 -07002 ! Licensed to the Apache Software Foundation (ASF) under one
3 ! or more contributor license agreements. See the NOTICE file
4 ! distributed with this work for additional information
5 ! regarding copyright ownership. The ASF licenses this file
6 ! to you under the Apache License, Version 2.0 (the
7 ! "License"); you may not use this file except in compliance
8 ! with the License. You may obtain a copy of the License at
9 !
10 ! http://www.apache.org/licenses/LICENSE-2.0
11 !
12 ! Unless required by applicable law or agreed to in writing,
13 ! software distributed under the License is distributed on an
14 ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 ! KIND, either express or implied. See the License for the
16 ! specific language governing permissions and limitations
17 ! under the License.
Till Westmann276bbc22013-06-05 18:56:27 -070018 !-->
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -080019<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
20 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
vinayakbe5add8a2012-10-06 19:00:14 +000021 <modelVersion>4.0.0</modelVersion>
Ian Maxone915e8c2015-07-01 17:03:31 -070022 <groupId>org.apache.hyracks</groupId>
Michael Blowc3dfd4b2017-01-17 17:19:49 -050023 <artifactId>apache-hyracks</artifactId>
AsterixDB Jenkins478eccb2018-08-31 14:57:31 -070024 <version>0.3.5-SNAPSHOT</version>
vinayakbe5add8a2012-10-06 19:00:14 +000025 <packaging>pom</packaging>
buyingyi7f356c12012-10-07 00:23:17 +000026 <name>hyracks-ecosystem-full-stack</name>
Michael Blow38ca9622018-02-28 11:44:43 -050027 <url>${implementation.url}</url>
Michael Blowb4c1fb02016-05-09 15:41:00 -070028 <parent>
29 <groupId>org.apache</groupId>
30 <artifactId>apache</artifactId>
Michael Blowb99349d2016-11-08 19:38:02 -050031 <version>18</version>
Michael Blow380b0a22016-08-02 13:05:52 -040032 <relativePath />
Michael Blowb4c1fb02016-05-09 15:41:00 -070033 </parent>
Michael Blowb4c1fb02016-05-09 15:41:00 -070034 <licenses>
35 <license>
36 <name>Apache License, Version 2.0</name>
37 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
38 <distribution>repo</distribution>
39 <comments>A business-friendly OSS license</comments>
40 </license>
41 </licenses>
Ian Maxon4b228432017-01-16 13:35:16 -080042 <scm>
43 <connection>scm:git:https://github.com/apache/asterixdb</connection>
44 <developerConnection>scm:git:ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb</developerConnection>
45 <url>https://github.com/apache/asterixdb</url>
Ian Maxona3435a32017-01-18 18:31:30 -080046 <tag>HEAD</tag>
Ian Maxon4b228432017-01-16 13:35:16 -080047 </scm>
Michael Blowb4c1fb02016-05-09 15:41:00 -070048 <properties>
Ian Maxon3bb92132019-02-12 22:20:25 -080049 <root.dir>${basedir}</root.dir>
Michael Blowb4c1fb02016-05-09 15:41:00 -070050 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
Michael Blowdd920be2017-06-07 15:04:33 -040051 <file.encoding>UTF-8</file.encoding>
Michael Blowcedd9612018-07-25 13:25:02 -040052 <source.jdk.version>1.8</source.jdk.version>
Michael Blow2b057012017-12-07 22:20:39 -050053 <javac.xlint.value>all</javac.xlint.value>
Michael Blow380b0a22016-08-02 13:05:52 -040054 <jvm.extraargs />
Michael Blowb4c1fb02016-05-09 15:41:00 -070055 <sonar.jacoco.reportPath>${env.PWD}/target/jacoco-merged.exec</sonar.jacoco.reportPath>
Michael Blow4cd925c2018-01-20 17:15:38 -050056 <source-format.goal>format</source-format.goal>
Dmitry Lychagin249be532017-05-31 14:57:14 -070057 <source-format.skip>false</source-format.skip>
Ian Maxon3bb92132019-02-12 22:20:25 -080058 <maven.test.skip>false</maven.test.skip>
Michael Blowe30c9d32018-01-20 09:42:19 -050059 <skipTests>false</skipTests>
Michael Blowdd920be2017-06-07 15:04:33 -040060 <skip.surefire.tests>${skipTests}</skip.surefire.tests>
Michael Blow7626d162017-12-10 14:26:56 -050061 <skip.testResources>${maven.test.skip}</skip.testResources>
Michael Blow2530e392018-02-06 01:19:42 -050062 <testLog4jConfigFile>${root.dir}/src/test/resources/log4j2-hyracks-test.xml</testLog4jConfigFile>
Michael Blowb4c1fb02016-05-09 15:41:00 -070063 <!-- Definition of tests in various categories which may be excluded -->
Michael Blowb4c1fb02016-05-09 15:41:00 -070064 <hivesterix.perf.tests>**/hivesterix/perf/PerfTestSuite.java</hivesterix.perf.tests>
65 <global.test.includes>**/*TestSuite.java,**/*Test.java</global.test.includes>
Michael Blow64d49fb2018-02-11 15:43:47 -050066 <global.test.excludes>**/Abstract*.java,${hivesterix.perf.tests}</global.test.excludes>
Michael Blowe30c9d32018-01-20 09:42:19 -050067 <test.includes>${global.test.includes}</test.includes>
68 <test.excludes>${global.test.excludes}</test.excludes>
Michael Blowb4c1fb02016-05-09 15:41:00 -070069 <!-- Versions under dependencymanagement or used in many projects via properties -->
Michael Blow3477a2b2018-10-04 17:17:35 -040070 <hadoop.version>2.8.5</hadoop.version>
Michael Blowb4c1fb02016-05-09 15:41:00 -070071 <jacoco.version>0.7.6.201602180812</jacoco.version>
Michael Blow38ca9622018-02-28 11:44:43 -050072
Michael Blowcbfe8f92018-02-28 14:02:38 -050073 <implementation.title>Apache Hyracks and Algebricks - ${project.name}</implementation.title>
Michael Blow38ca9622018-02-28 11:44:43 -050074 <implementation.url>https://asterixdb.apache.org/</implementation.url>
75 <implementation.version>${project.version}</implementation.version>
76 <implementation.vendor>${project.organization.name}</implementation.vendor>
Michael Blowb4c1fb02016-05-09 15:41:00 -070077 </properties>
78 <dependencyManagement>
79 <dependencies>
80 <dependency>
Till Westmannea666c92017-02-22 22:25:15 -080081 <groupId>io.netty</groupId>
82 <artifactId>netty-all</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -050083 <version>4.1.32.Final</version>
Till Westmannea666c92017-02-22 22:25:15 -080084 </dependency>
85 <dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -070086 <groupId>junit</groupId>
87 <artifactId>junit</artifactId>
Michael Blow599ef8f2017-01-12 11:02:53 -050088 <version>4.12</version>
Michael Blowb4c1fb02016-05-09 15:41:00 -070089 </dependency>
90 <dependency>
91 <groupId>org.apache.hadoop</groupId>
92 <artifactId>hadoop-yarn-client</artifactId>
93 <version>${hadoop.version}</version>
94 </dependency>
95 <dependency>
96 <groupId>org.apache.hadoop</groupId>
97 <artifactId>hadoop-client</artifactId>
98 <version>${hadoop.version}</version>
99 </dependency>
100 <dependency>
101 <groupId>org.apache.hadoop</groupId>
102 <artifactId>hadoop-common</artifactId>
103 <version>${hadoop.version}</version>
Michael Blowaebe2c52018-06-10 14:18:53 -0400104 <exclusions>
105 <exclusion>
106 <groupId>javax.servlet.jsp</groupId>
107 <artifactId>jsp-api</artifactId>
108 </exclusion>
109 <exclusion>
110 <groupId>javax.servlet</groupId>
111 <artifactId>servlet-api</artifactId>
112 </exclusion>
113 <exclusion>
114 <groupId>jdk.tools</groupId>
115 <artifactId>jdk.tools</artifactId>
116 </exclusion>
117 </exclusions>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700118 </dependency>
119 <dependency>
120 <groupId>org.apache.hadoop</groupId>
121 <artifactId>hadoop-hdfs</artifactId>
122 <version>${hadoop.version}</version>
123 </dependency>
124 <dependency>
125 <groupId>org.apache.hadoop</groupId>
126 <artifactId>hadoop-minicluster</artifactId>
127 <version>${hadoop.version}</version>
128 </dependency>
129 <dependency>
130 <groupId>org.apache.hadoop</groupId>
131 <artifactId>hadoop-mapreduce-client-core</artifactId>
132 <version>${hadoop.version}</version>
133 </dependency>
134 <dependency>
Michael Blowba358122016-10-13 19:56:03 -0400135 <groupId>org.apache.hadoop</groupId>
136 <artifactId>hadoop-hdfs</artifactId>
137 <version>${hadoop.version}</version>
138 <classifier>tests</classifier>
139 <scope>test</scope>
140 </dependency>
141 <dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700142 <groupId>commons-io</groupId>
143 <artifactId>commons-io</artifactId>
Michael Blow204b2952017-12-07 20:17:47 -0500144 <version>2.6</version>
145 </dependency>
146 <dependency>
Michael Blow6f75f052018-04-15 20:06:48 -0400147 <groupId>org.apache.commons</groupId>
148 <artifactId>commons-text</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500149 <version>1.6</version>
Michael Blow6f75f052018-04-15 20:06:48 -0400150 </dependency>
151 <dependency>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800152 <groupId>com.fasterxml.jackson.core</groupId>
153 <artifactId>jackson-databind</artifactId>
Michael Blowbd7ba452018-10-31 15:08:26 -0400154 <version>2.9.7</version>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800155 </dependency>
156 <dependency>
157 <groupId>com.fasterxml.jackson.core</groupId>
158 <artifactId>jackson-core</artifactId>
Michael Blowbd7ba452018-10-31 15:08:26 -0400159 <version>2.9.7</version>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800160 </dependency>
Michael Blow599ef8f2017-01-12 11:02:53 -0500161 <dependency>
Michael Blow204b2952017-12-07 20:17:47 -0500162 <groupId>com.fasterxml.jackson.core</groupId>
163 <artifactId>jackson-annotations</artifactId>
Michael Blowbd7ba452018-10-31 15:08:26 -0400164 <version>2.9.7</version>
Michael Blow204b2952017-12-07 20:17:47 -0500165 </dependency>
166 <dependency>
Michael Blow599ef8f2017-01-12 11:02:53 -0500167 <groupId>com.google.guava</groupId>
168 <artifactId>guava</artifactId>
169 <version>18.0</version>
170 </dependency>
Michael Blow43b40b62017-01-14 17:03:12 -0500171 <dependency>
172 <groupId>org.apache.commons</groupId>
173 <artifactId>commons-lang3</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500174 <version>3.8.1</version>
Michael Blow43b40b62017-01-14 17:03:12 -0500175 </dependency>
Michael Blow5e17af22017-02-02 10:00:44 -0500176 <dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500177 <groupId>org.apache.commons</groupId>
178 <artifactId>commons-collections4</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500179 <version>4.2</version>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500180 </dependency>
181 <dependency>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800182 <groupId>org.apache.httpcomponents</groupId>
183 <artifactId>httpcore</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500184 <version>4.4.10</version>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800185 </dependency>
186 <dependency>
187 <groupId>org.apache.httpcomponents</groupId>
188 <artifactId>httpclient</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500189 <version>4.5.6</version>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800190 </dependency>
191 <dependency>
Michael Blow5e17af22017-02-02 10:00:44 -0500192 <groupId>org.apache.rat</groupId>
193 <artifactId>apache-rat-plugin</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500194 <version>0.13</version>
Michael Blow5e17af22017-02-02 10:00:44 -0500195 </dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500196 <dependency>
Dmitry Lychagin249be532017-05-31 14:57:14 -0700197 <groupId>net.revelc.code.formatter</groupId>
198 <artifactId>formatter-maven-plugin</artifactId>
199 <version>2.0.1</version>
200 </dependency>
201 <dependency>
Till Westmann192478b2019-03-01 10:45:25 -0800202 <groupId>org.ini4j</groupId>
203 <artifactId>ini4j</artifactId>
204 <version>0.5.4</version>
205 </dependency>
206 <dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500207 <groupId>args4j</groupId>
208 <artifactId>args4j</artifactId>
209 <version>2.33</version>
210 </dependency>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300211 <dependency>
212 <groupId>org.apache.logging.log4j</groupId>
213 <artifactId>log4j-api</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500214 <version>2.11.1</version>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300215 </dependency>
216 <dependency>
217 <groupId>org.apache.logging.log4j</groupId>
218 <artifactId>log4j-core</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500219 <version>2.11.1</version>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300220 </dependency>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800221 <dependency>
222 <groupId>org.mockito</groupId>
223 <artifactId>mockito-all</artifactId>
224 <version>2.0.2-beta</version>
225 </dependency>
Michael Blow3477a2b2018-10-04 17:17:35 -0400226 <dependency>
227 <groupId>javax.xml.bind</groupId>
228 <artifactId>jaxb-api</artifactId>
229 <version>2.3.0</version>
230 </dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700231 </dependencies>
232 </dependencyManagement>
vinayakbe5add8a2012-10-06 19:00:14 +0000233 <build>
234 <plugins>
235 <plugin>
Michael Blowba358122016-10-13 19:56:03 -0400236 <groupId>org.apache.maven.plugins</groupId>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500237 <artifactId>maven-jar-plugin</artifactId>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500238 <configuration>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500239 <excludes combine.children="append">
Michael Blowc96bb1f2017-01-16 16:31:54 -0500240 <exclude>**/DEPENDENCIES</exclude>
241 </excludes>
Michael Blow38ca9622018-02-28 11:44:43 -0500242 <archive>
Michael Blowaed96f02019-03-01 18:47:19 -0500243 <addMavenDescriptor>false</addMavenDescriptor>
Michael Blow38ca9622018-02-28 11:44:43 -0500244 <manifest>
245 <addDefaultImplementationEntries>false</addDefaultImplementationEntries>
246 <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
247 </manifest>
248 <manifestEntries>
249 <Implementation-Title>${implementation.title}</Implementation-Title>
250 <Implementation-URL>${implementation.url}</Implementation-URL>
251 <Implementation-Version>${implementation.version}</Implementation-Version>
252 <Implementation-Vendor>${implementation.vendor}</Implementation-Vendor>
253 </manifestEntries>
254 </archive>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500255 </configuration>
256 </plugin>
257 <plugin>
258 <groupId>org.apache.maven.plugins</groupId>
Michael Blowba358122016-10-13 19:56:03 -0400259 <artifactId>maven-dependency-plugin</artifactId>
Michael Blowba358122016-10-13 19:56:03 -0400260 <configuration>
261 <failOnWarning>true</failOnWarning>
262 <outputXML>true</outputXML>
263 </configuration>
264 <executions>
265 <execution>
266 <phase>process-test-classes</phase>
267 <goals>
268 <goal>analyze-only</goal>
269 </goals>
270 </execution>
271 </executions>
272 </plugin>
273 <plugin>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700274 <groupId>org.apache.rat</groupId>
275 <artifactId>apache-rat-plugin</artifactId>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700276 <executions>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700277 <execution>
278 <phase>validate</phase>
279 <goals>
280 <goal>check</goal>
281 </goals>
282 </execution>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700283 </executions>
284 <configuration>
Michael Blow5e17af22017-02-02 10:00:44 -0500285 <addDefaultLicenseMatchers>false</addDefaultLicenseMatchers>
286 <consoleOutput>true</consoleOutput>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700287 <licenses>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800288 <license implementation="org.apache.rat.analysis.license.ApacheSoftwareLicense20" />
Ian Maxon137fc3b2015-06-30 16:23:48 -0700289 </licenses>
290 <licenseFamilies>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800291 <licenseFamily implementation="org.apache.rat.license.Apache20LicenseFamily" />
Ian Maxon137fc3b2015-06-30 16:23:48 -0700292 </licenseFamilies>
Michael Blow5e17af22017-02-02 10:00:44 -0500293 <excludeSubProjects>true</excludeSubProjects>
Michael Blowe7aec9c2017-04-28 17:08:45 -0400294 <excludes combine.children="append">
295 <exclude>**/*.iml</exclude>
296 </excludes>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700297 </configuration>
298 </plugin>
299 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700300 <groupId>org.apache.maven.plugins</groupId>
301 <artifactId>maven-surefire-plugin</artifactId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700302 <configuration>
303 <failIfNoTests>false</failIfNoTests>
304 <forkCount>1</forkCount>
Chris Hilleryd2c1a8a2014-02-21 01:03:02 -0800305 <reuseForks>false</reuseForks>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800306 <argLine>-enableassertions -Xmx2048m -Dfile.encoding=UTF-8 -Xdebug
Murtadha Hubailc7eb0c52018-05-21 18:01:55 +0300307 -Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n ${coverageArgLine}
Michael Blowb4c1fb02016-05-09 15:41:00 -0700308 </argLine>
Murtadha Hubail06ca2792018-01-16 00:12:27 +0300309 <systemPropertyVariables>
310 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
311 </systemPropertyVariables>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700312 <includes>
Michael Blowe30c9d32018-01-20 09:42:19 -0500313 <include>${test.includes}</include>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700314 </includes>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500315 <excludes combine.children="append">
Michael Blowe30c9d32018-01-20 09:42:19 -0500316 <exclude>${test.excludes}</exclude>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800317 </excludes>
Michael Blowdd920be2017-06-07 15:04:33 -0400318 <skipTests>${skip.surefire.tests}</skipTests>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700319 </configuration>
Ian Maxon5ae0df82015-10-14 10:45:19 -0700320 </plugin>
321 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700322 <groupId>org.apache.maven.plugins</groupId>
Murtadha Hubail06ca2792018-01-16 00:12:27 +0300323 <artifactId>maven-failsafe-plugin</artifactId>
324 <configuration>
325 <systemPropertyVariables>
326 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
327 </systemPropertyVariables>
328 </configuration>
329 </plugin>
330 <plugin>
331 <groupId>org.apache.maven.plugins</groupId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700332 <artifactId>maven-compiler-plugin</artifactId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700333 <configuration>
Michael Blowcedd9612018-07-25 13:25:02 -0400334 <source>${source.jdk.version}</source>
335 <target>${target.jdk.version}</target>
Michael Blow2b057012017-12-07 22:20:39 -0500336 <compilerArgument>-Xlint:${javac.xlint.value}</compilerArgument>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700337 </configuration>
vinayakbe5add8a2012-10-06 19:00:14 +0000338 </plugin>
Ian Maxonb165aca2016-03-17 18:21:57 -0700339 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700340 <groupId>org.apache.maven.plugins</groupId>
341 <artifactId>maven-remote-resources-plugin</artifactId>
342 <executions>
343 <execution>
344 <goals>
345 <goal>process</goal>
346 </goals>
347 <configuration>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500348 <resourceBundles>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700349 <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700350 </resourceBundles>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500351 <properties>
352 <projectName>Apache Hyracks - ${project.name}</projectName>
353 </properties>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700354 </configuration>
355 </execution>
356 </executions>
Ian Maxon9e37c962015-11-25 07:38:37 -0800357 </plugin>
Michael Blowd1e2a992016-06-14 12:27:46 -0400358 <plugin>
359 <groupId>org.apache.maven.plugins</groupId>
360 <artifactId>maven-checkstyle-plugin</artifactId>
361 <version>2.17</version>
362 <executions>
363 <execution>
364 <id>verify-style</id>
365 <phase>process-classes</phase>
366 <goals>
367 <goal>check</goal>
368 </goals>
369 </execution>
370 </executions>
371 <configuration>
372 <logViolationsToConsole>true</logViolationsToConsole>
373 <checkstyleRules>
374 <module name="Checker">
375 <!-- Checks for whitespace -->
376 <!-- See http://checkstyle.sf.net/config_whitespace.html -->
Michael Blow380b0a22016-08-02 13:05:52 -0400377 <module name="FileTabCharacter" />
Michael Blowd1e2a992016-06-14 12:27:46 -0400378 </module>
379 </checkstyleRules>
Michael Blowd6cf6412016-06-30 02:44:35 -0400380 <includes>**/*.java,**/*.jj</includes>
381 <resourceIncludes>**/*.properties,**/*.xml,**/*.xsd,**/*.sh</resourceIncludes>
Michael Blowd1e2a992016-06-14 12:27:46 -0400382 <sourceDirectories>${project.build.sourceDirectory},${project.build.testSourceDirectory}</sourceDirectories>
383 </configuration>
384 </plugin>
Michael Blowf53c1c62016-06-17 16:51:59 -0400385 <plugin>
386 <groupId>org.apache.maven.plugins</groupId>
387 <artifactId>maven-enforcer-plugin</artifactId>
Michael Blow918c5b12017-10-30 14:51:13 -0400388 <version>3.0.0-M1</version>
Michael Blowf53c1c62016-06-17 16:51:59 -0400389 <executions>
390 <execution>
391 <id>enforce-versions</id>
392 <goals>
393 <goal>enforce</goal>
394 </goals>
395 <configuration>
396 <rules>
397 <requireMavenVersion>
398 <version>[3.3.9,)</version>
399 </requireMavenVersion>
400 </rules>
401 </configuration>
402 </execution>
403 </executions>
404 </plugin>
Michael Blow7626d162017-12-10 14:26:56 -0500405 <plugin>
406 <groupId>org.apache.maven.plugins</groupId>
407 <artifactId>maven-resources-plugin</artifactId>
408 <executions>
409 <execution>
410 <id>default-testResources</id>
411 <goals>
412 <goal>testResources</goal>
413 </goals>
414 <configuration>
415 <skip>${skip.testResources}</skip>
416 </configuration>
417 </execution>
418 </executions>
419 </plugin>
Michael Blowcb9ca972018-01-27 23:03:30 -0500420 <plugin>
421 <groupId>net.revelc.code.formatter</groupId>
422 <artifactId>formatter-maven-plugin</artifactId>
423 <executions>
424 <execution>
425 <goals>
426 <goal>${source-format.goal}</goal>
427 </goals>
428 </execution>
429 </executions>
430 <configuration>
431 <configFile>${root.dir}/AsterixCodeFormatProfile.xml</configFile>
432 <skipFormatting>${source-format.skip}</skipFormatting>
433 </configuration>
434 </plugin>
vinayakbe5add8a2012-10-06 19:00:14 +0000435 </plugins>
Yingyi Bud680e142016-03-18 16:41:46 -0700436 <pluginManagement>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700437 <plugins>
Michael Blow5e17af22017-02-02 10:00:44 -0500438 <plugin>
Till Westmann65da60c2017-02-22 13:17:49 -0800439 <groupId>org.apache.maven.plugins</groupId>
440 <artifactId>maven-compiler-plugin</artifactId>
Michael Blow3477a2b2018-10-04 17:17:35 -0400441 <version>3.8.0</version>
Till Westmann65da60c2017-02-22 13:17:49 -0800442 </plugin>
443 <plugin>
Michael Blow5e17af22017-02-02 10:00:44 -0500444 <groupId>org.apache.rat</groupId>
445 <artifactId>apache-rat-plugin</artifactId>
446 <version>0.12</version>
447 </plugin>
Dmitry Lychagin249be532017-05-31 14:57:14 -0700448 <plugin>
449 <groupId>net.revelc.code.formatter</groupId>
450 <artifactId>formatter-maven-plugin</artifactId>
451 <version>2.0.1</version>
452 </plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700453 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
454 <plugin>
455 <groupId>org.eclipse.m2e</groupId>
456 <artifactId>lifecycle-mapping</artifactId>
457 <version>1.0.0</version>
458 <configuration>
459 <lifecycleMappingMetadata>
460 <pluginExecutions>
461 <pluginExecution>
462 <pluginExecutionFilter>
463 <groupId>org.apache.rat</groupId>
464 <artifactId>apache-rat-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400465 <versionRange>[0.0,)</versionRange>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700466 <goals>
467 <goal>check</goal>
468 </goals>
469 </pluginExecutionFilter>
470 <action>
Michael Blow380b0a22016-08-02 13:05:52 -0400471 <ignore />
Michael Blowb4c1fb02016-05-09 15:41:00 -0700472 </action>
473 </pluginExecution>
Michael Blow8f2cf242016-06-30 01:45:39 -0400474 <pluginExecution>
475 <pluginExecutionFilter>
476 <groupId>org.apache.maven.plugins</groupId>
477 <artifactId>maven-checkstyle-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400478 <versionRange>[0.0,)</versionRange>
Michael Blow8f2cf242016-06-30 01:45:39 -0400479 <goals>
480 <goal>check</goal>
481 </goals>
482 </pluginExecutionFilter>
483 <action>
Michael Blow380b0a22016-08-02 13:05:52 -0400484 <ignore />
Michael Blow8f2cf242016-06-30 01:45:39 -0400485 </action>
486 </pluginExecution>
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700487 <pluginExecution>
488 <pluginExecutionFilter>
489 <groupId>org.apache.maven.plugins</groupId>
490 <artifactId>maven-dependency-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400491 <versionRange>[0.0,)</versionRange>
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700492 <goals>
493 <goal>analyze-only</goal>
494 </goals>
495 </pluginExecutionFilter>
496 <action>
Ian Maxondef643d2017-01-18 18:31:11 -0800497 <ignore />
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700498 </action>
499 </pluginExecution>
Taewoo Kima252d782018-01-30 13:29:07 -0800500 <pluginExecution>
501 <pluginExecutionFilter>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800502 <groupId>net.revelc.code.formatter</groupId>
503 <artifactId>formatter-maven-plugin</artifactId>
504 <versionRange>[2.0.1,)</versionRange>
505 <goals>
506 <goal>format</goal>
507 </goals>
508 </pluginExecutionFilter>
509 <action>
510 <ignore></ignore>
511 </action>
Taewoo Kima252d782018-01-30 13:29:07 -0800512 </pluginExecution>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700513 </pluginExecutions>
514 </lifecycleMappingMetadata>
515 </configuration>
516 </plugin>
Ian Maxon99fed932017-02-09 19:11:39 -0800517 <plugin>
Michael Blowa7fad192017-03-09 22:10:19 -0500518 <groupId>org.codehaus.mojo</groupId>
519 <artifactId>versions-maven-plugin</artifactId>
Michael Blow0aae1832017-10-29 11:59:47 -0400520 <version>2.5</version>
Ian Maxon99fed932017-02-09 19:11:39 -0800521 </plugin>
522 <plugin>
Michael Blowa7fad192017-03-09 22:10:19 -0500523 <groupId>org.apache.maven.plugins</groupId>
524 <artifactId>maven-scm-plugin</artifactId>
525 <version>1.9.5</version>
526 </plugin>
527 <plugin>
528 <groupId>org.codehaus.mojo</groupId>
529 <artifactId>appassembler-maven-plugin</artifactId>
530 <version>2.0.0</version>
Ian Maxon99fed932017-02-09 19:11:39 -0800531 </plugin>
Michael Blow10a74862017-05-23 16:55:39 -0400532 <plugin>
533 <groupId>org.apache.maven.plugins</groupId>
534 <artifactId>maven-surefire-plugin</artifactId>
Michael Blowaebe2c52018-06-10 14:18:53 -0400535 <version>2.21.0</version>
Michael Blow10a74862017-05-23 16:55:39 -0400536 </plugin>
537 <plugin>
538 <groupId>org.apache.maven.plugins</groupId>
539 <artifactId>maven-failsafe-plugin</artifactId>
Michael Blowaebe2c52018-06-10 14:18:53 -0400540 <version>2.21.0</version>
Michael Blow10a74862017-05-23 16:55:39 -0400541 </plugin>
Michael Blow09f958c2017-08-20 17:02:19 -0400542 <plugin>
543 <groupId>org.apache.hyracks</groupId>
544 <artifactId>license-automation-plugin</artifactId>
545 <version>${project.version}</version>
546 </plugin>
Michael Blow0aae1832017-10-29 11:59:47 -0400547 <plugin>
548 <groupId>org.apache.maven.plugins</groupId>
549 <artifactId>maven-assembly-plugin</artifactId>
550 <version>3.1.0</version>
551 </plugin>
552 <plugin>
553 <groupId>org.apache.maven.plugins</groupId>
554 <artifactId>maven-antrun-plugin</artifactId>
555 <version>1.8</version>
556 </plugin>
557 <plugin>
558 <groupId>org.apache.maven.plugins</groupId>
559 <artifactId>maven-clean-plugin</artifactId>
560 <version>3.0.0</version>
561 </plugin>
562 <plugin>
563 <groupId>org.apache.maven.plugins</groupId>
564 <artifactId>maven-jar-plugin</artifactId>
565 <version>3.0.2</version>
566 </plugin>
567 <plugin>
568 <groupId>org.codehaus.mojo</groupId>
569 <artifactId>build-helper-maven-plugin</artifactId>
570 <version>3.0.0</version>
571 </plugin>
572 <plugin>
573 <groupId>org.apache.maven.plugins</groupId>
574 <artifactId>maven-dependency-plugin</artifactId>
Michael Blowcedd9612018-07-25 13:25:02 -0400575 <version>3.1.1</version>
Michael Blow0aae1832017-10-29 11:59:47 -0400576 </plugin>
Michael Blow918c5b12017-10-30 14:51:13 -0400577 <plugin>
578 <groupId>org.apache.maven.doxia</groupId>
579 <artifactId>doxia-maven-plugin</artifactId>
580 <version>1.1.4</version>
581 </plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700582 </plugins>
583 </pluginManagement>
vinayakbe5add8a2012-10-06 19:00:14 +0000584 </build>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800585 <profiles>
586 <profile>
Michael Blow916dce42017-05-23 13:19:12 -0400587 <id>skip-assembly</id>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700588 <activation>
589 <file>
Michael Blow916dce42017-05-23 13:19:12 -0400590 <missing>src/main/assembly/source.xml</missing>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700591 </file>
592 </activation>
Michael Blow916dce42017-05-23 13:19:12 -0400593 <properties>
594 <skip.assembly>true</skip.assembly>
595 </properties>
596 </profile>
597 <profile>
598 <id>release</id>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700599 <build>
600 <plugins>
601 <plugin>
602 <groupId>org.apache.maven.plugins</groupId>
Michael Blow38ca9622018-02-28 11:44:43 -0500603 <artifactId>maven-jar-plugin</artifactId>
604 <configuration>
605 <archive>
Michael Blowaed96f02019-03-01 18:47:19 -0500606 <addMavenDescriptor>true</addMavenDescriptor>
Michael Blow38ca9622018-02-28 11:44:43 -0500607 <manifest>
608 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
609 <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
610 </manifest>
611 </archive>
612 </configuration>
613 </plugin>
614 <plugin>
615 <groupId>org.apache.maven.plugins</groupId>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700616 <artifactId>maven-assembly-plugin</artifactId>
617 <!-- We override the configuration plugin to override the descriptor to use for building
618 the source release zip. Specifically, we would like to control the inclusions/exclusions.
619 For example, we exclude the KEYS file from the zip -->
620 <executions>
621 <execution>
622 <!-- Use this id to match the id mentioned in the assembly plugin configuration in
623 the apache parent POM under the apache-release profile -->
624 <id>source-release-assembly</id>
625 <phase>package</phase>
626 <goals>
627 <goal>single</goal>
628 </goals>
629 <!-- combine.self should be override to replace the configuration in the parent POM -->
630 <configuration combine.self="override">
631 <descriptors>
632 <descriptor>src/main/assembly/source.xml</descriptor>
633 </descriptors>
Michael Blow916dce42017-05-23 13:19:12 -0400634 <skipAssembly>${skip.assembly}</skipAssembly>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700635 </configuration>
636 </execution>
637 </executions>
638 </plugin>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700639 <plugin>
640 <groupId>org.apache.maven.plugins</groupId>
Ian Maxon99fed932017-02-09 19:11:39 -0800641 <artifactId>maven-gpg-plugin</artifactId>
642 <version>1.6</version>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700643 <executions>
644 <execution>
Ian Maxon99fed932017-02-09 19:11:39 -0800645 <id>sign-artifacts</id>
646 <phase>verify</phase>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700647 <goals>
Ian Maxon99fed932017-02-09 19:11:39 -0800648 <goal>sign</goal>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700649 </goals>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700650 </execution>
651 </executions>
652 </plugin>
653 </plugins>
654 </build>
655 </profile>
Ian Maxon5ae0df82015-10-14 10:45:19 -0700656 <profile>
Michael Blow7c15c132016-05-04 22:06:34 -0400657 <id>coverage</id>
658 <activation>
659 <property>
660 <name>coverage</name>
661 </property>
662 </activation>
663 <build>
664 <plugins>
665 <plugin>
666 <groupId>org.jacoco</groupId>
667 <artifactId>jacoco-maven-plugin</artifactId>
668 <version>${jacoco.version}</version>
669 <executions>
670 <execution>
671 <id>default-prepare-agent</id>
672 <goals>
673 <goal>prepare-agent</goal>
674 </goals>
675 <configuration>
676 <propertyName>coverageArgLine</propertyName>
677 </configuration>
678 </execution>
679 <execution>
680 <id>default-prepare-agent-integration</id>
681 <goals>
682 <goal>prepare-agent-integration</goal>
683 </goals>
684 <configuration>
685 <propertyName>coverageArgLine</propertyName>
686 </configuration>
687 </execution>
688 </executions>
689 </plugin>
690 </plugins>
691 </build>
692 <properties>
Michael Blow380b0a22016-08-02 13:05:52 -0400693 <coverage />
Michael Blow7c15c132016-05-04 22:06:34 -0400694 </properties>
695 </profile>
696 <profile>
697 <id>no-coverage</id>
698 <activation>
699 <property>
700 <name>!coverage</name>
701 </property>
702 </activation>
703 <properties>
Michael Blow380b0a22016-08-02 13:05:52 -0400704 <coverageArgLine />
Michael Blow7c15c132016-05-04 22:06:34 -0400705 </properties>
706 </profile>
707 <profile>
Michael Blow64d49fb2018-02-11 15:43:47 -0500708 <id>integration-tests-only</id>
709 <properties>
710 <test.includes/>
711 <failIfNoTests>false</failIfNoTests>
712 </properties>
713 </profile>
Michael Blowcedd9612018-07-25 13:25:02 -0400714 <profile>
715 <id>java8</id>
716 <activation>
717 <jdk>1.8</jdk>
718 </activation>
719 <properties>
720 <target.jdk.version>8</target.jdk.version>
721 </properties>
722 </profile>
723 <profile>
724 <id>java9</id>
725 <activation>
726 <jdk>9</jdk>
727 </activation>
728 <properties>
729 <target.jdk.version>9</target.jdk.version>
730 </properties>
731 </profile>
732 <profile>
733 <id>java10</id>
734 <activation>
735 <jdk>10</jdk>
736 </activation>
737 <properties>
738 <target.jdk.version>10</target.jdk.version>
739 </properties>
740 </profile>
741 <profile>
742 <id>java11</id>
743 <activation>
744 <jdk>11</jdk>
745 </activation>
746 <properties>
Michael Blow3477a2b2018-10-04 17:17:35 -0400747 <!-- several plugins do not yet support Java 11 classes (maven-plugin-plugin, maven-dependency-plugin) -->
748 <target.jdk.version>10</target.jdk.version>
Michael Blowcedd9612018-07-25 13:25:02 -0400749 </properties>
750 </profile>
751 <profile>
752 <id>java8-bootclasspath</id>
753 <activation>
754 <property>
755 <name>java8-bootclasspath</name>
756 </property>
757 </activation>
758 <properties>
759 <target.jdk.version>8</target.jdk.version>
760 </properties>
761 <build>
762 <plugins>
763 <plugin>
764 <groupId>org.apache.maven.plugins</groupId>
765 <artifactId>maven-compiler-plugin</artifactId>
766 <configuration>
767 <compilerArgs combine.children="append">
768 <arg>-bootclasspath</arg>
769 <arg>${java8-bootclasspath}</arg>
770 </compilerArgs>
771 </configuration>
772 </plugin>
773 </plugins>
774 </build>
775 </profile>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800776 </profiles>
vinayakbe5add8a2012-10-06 19:00:14 +0000777 <modules>
778 <module>hyracks</module>
vinayakb36016dc2012-10-09 06:10:12 +0000779 <module>algebricks</module>
Michael Blow43b40b62017-01-14 17:03:12 -0500780 <module>hyracks-fullstack-license</module>
vinayakbe5add8a2012-10-06 19:00:14 +0000781 </modules>
Michael Blow3477a2b2018-10-04 17:17:35 -0400782</project>