blob: c539da9df93ec381c3efcd50a5c2688df753356f [file] [log] [blame]
<!--
! 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>
<artifactId>apache-asterixdb</artifactId>
<groupId>org.apache.asterix</groupId>
<version>0.9.2</version>
</parent>
<artifactId>asterix-installer</artifactId>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<appendedResourcesDirectory>${basedir}/src/main/appended-resources</appendedResourcesDirectory>
<failsafe.test.excludes>**/DmlRecoveryIT.java</failsafe.test.excludes>
<cluster.test.excludes>**/AsterixClusterLifeCycleIT.java</cluster.test.excludes>
<cluster.extest.excludes>**/ClusterExecutionIT.java</cluster.extest.excludes>
</properties>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
<comments>A business-friendly OSS license</comments>
</license>
</licenses>
<build>
<plugins>
<plugin>
<groupId>org.apache.hyracks</groupId>
<artifactId>license-automation-plugin</artifactId>
<version>${hyracks.version}</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<!--<goal>licensedownload</goal>-->
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<templateRootDir>${basedir}/../src/main/licenses/templates</templateRootDir>
<generatedFiles>
<generatedFile>
<template>asterix-license.ftl</template>
<outputFile>LICENSE</outputFile>
</generatedFile>
<generatedFile>
<template>asterix-notice.ftl</template>
<outputFile>NOTICE</outputFile>
</generatedFile>
</generatedFiles>
<location>repo/</location>
<timeoutSecs>10</timeoutSecs>
<extraLicenseMaps>
<extraLicenseMap>
<file>${basedir}/../asterix-server/target/generated-resources/license_map.json</file>
<location>asterix/asterix-server-${project.version}-binary-assembly.zip::repo/</location>
</extraLicenseMap>
</extraLicenseMaps>
<models>
<model>${basedir}/../src/main/appended-resources/supplemental-models.xml</model>
</models>
<downloadDir>${project.build.directory}/generated-resources/license</downloadDir>
<excludedScopes>
<excludedScope>test</excludedScope>
</excludedScopes>
<excludes>
<exclude>org.apache.asterix:*</exclude>
<exclude>org.apache.algebricks:*</exclude>
<exclude>org.apache.hyracks:*</exclude>
</excludes>
<licenseDirectory>${basedir}/../src/main/licenses/content</licenseDirectory>
<dependencySets>
<dependencySet>
<includes>
<!-- NOTE! Any changes here must be mirrored in src/main/assembly/binary-assembly.xml -->
<include>log4j:log4j</include>
<include>org.apache.asterix:asterix-events</include>
<include>org.apache.asterix:asterix-common</include>
<include>org.apache.commons:commons-lang3</include>
<include>org.apache.zookeeper:zookeeper</include>
<include>args4j:args4j</include>
<include>log4j:log4j</include>
<include>commons-io:commons-io</include>
<include>org.slf4j:slf4j-api</include>
<include>org.slf4j:slf4j-log4j12</include>
</includes>
<location>lib</location>
</dependencySet>
<dependencySet>
<includes>
<!-- NOTE! Any changes here must be mirrored in src/main/assembly/binary-assembly.xml -->
<include>commons-cli:commons-cli</include>
<include>commons-logging:commons-logging</include>
</includes>
<location>.installer/hadoop-0.20.2/lib</location>
</dependencySet>
<dependencySet>
<includes>
<!-- NOTE! Any changes here must be mirrored in src/main/assembly/binary-assembly.xml -->
<include>org.apache.zookeeper:zookeeper</include>
<include>log4j:log4j</include>
<include>org.slf4j:slf4j-api</include>
</includes>
<location>.installer/zookeeper/lib</location>
</dependencySet>
</dependencySets>
<overrides>
<override>
<gav>org.apache.zookeeper:zookeeper:3.4.5</gav>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
</override>
</overrides>
<templateProperties>
<packageName>Apache AsterixDB Managix Install</packageName>
<asterixAppLocation>repo/asterix-app-${project.version}.jar, within asterix/asterix-server-${project.version}-binary-assembly.zip</asterixAppLocation>
<hyracksControlCcLocation>repo/hyracks-control-cc-${project.version}.jar, within asterix/asterix-server-${project.version}-binary-assembly.zip</hyracksControlCcLocation>
<hivecompatLocation>repo/asterix-hivecompat-${project.version}.jar, within asterix/asterix-server-${project.version}-binary-assembly.zip</hivecompatLocation>
</templateProperties>
</configuration>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.9.0</version>
<executions>
<execution>
<id>configuration</id>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<args>
<arg>-Xsetters</arg>
<arg>-Xvalue-constructor</arg>
</args>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>0.6.2</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-value-constructor</artifactId>
<version>3.0</version>
</plugin>
</plugins>
<schemaDirectory>src/main/resources/schema</schemaDirectory>
<schemaIncludes>
<include>installer-conf.xsd</include>
</schemaIncludes>
<generatePackage>org.apache.asterix.installer.schema.conf</generatePackage>
<generateDirectory>${project.build.directory}/generated-sources/configuration</generateDirectory>
</configuration>
</execution>
<execution>
<id>cluster</id>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<schemaDirectory>src/main/resources/schema</schemaDirectory>
<schemaIncludes>
<include>cluster.xsd</include>
</schemaIncludes>
<generatePackage>org.apache.asterix.installer.schema.cluster</generatePackage>
<bindingDirectory>src/main/resources/schema</bindingDirectory>
<bindingIncludes>
<bindingInclude>jaxb-bindings.xjb</bindingInclude>
</bindingIncludes>
<generateDirectory>${project.build.directory}/generated-sources/cluster</generateDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-5</version>
<executions>
<execution>
<configuration>
<descriptor>src/main/assembly/binary-assembly.xml</descriptor>
</configuration>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-test-data</id>
<phase>generate-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>target/data</outputDirectory>
<overwrite>true</overwrite>
<resources>
<resource>
<directory>../asterix-app/data/external-parser</directory>
<includes>
<include>jobads.new</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.10</version>
<executions>
<execution>
<id>copy-external-testlib</id>
<phase>pre-integration-test</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<includeClassifiers>testlib</includeClassifiers>
<outputDirectory>target/resources/externallib</outputDirectory>
<stripVersion>true</stripVersion>
<overWriteIfNewer>true</overWriteIfNewer>
</configuration>
</execution>
</executions>
<configuration>
<usedDependencies combine.children="append">
<usedDependency>org.apache.asterix:asterix-server</usedDependency>
<usedDependency>org.apache.hadoop:hadoop-common</usedDependency>
<usedDependency>org.apache.hadoop:hadoop-hdfs</usedDependency>
<usedDependency>org.apache.hadoop:hadoop-minicluster</usedDependency>
<usedDependency>org.apache.zookeeper:zookeeper</usedDependency>
</usedDependencies>
<ignoredUnusedDeclaredDependencies>
<ignoredUnusedDeclaredDependency>org.apache.asterix:asterix-external-data:zip:*</ignoredUnusedDeclaredDependency>
<ignoredUnusedDeclaredDependency>org.apache.asterix:asterix-external-data:test-jar:*</ignoredUnusedDeclaredDependency>
</ignoredUnusedDeclaredDependencies>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<configuration>
<licenses combine.children="append">
<license implementation="org.apache.rat.analysis.license.MITLicense"/>
<license implementation="org.apache.rat.analysis.license.SimplePatternBasedLicense">
<licenseFamilyCategory>MIT</licenseFamilyCategory>
<licenseFamilyName>JQuery</licenseFamilyName>
<patterns>(c) jQuery Foundation | jquery.org/license</patterns>
</license>
<license implementation="org.apache.rat.analysis.license.SimplePatternBasedLicense">
<licenseFamilyCategory>MIT</licenseFamilyCategory>
<licenseFamilyName>Bootstrap</licenseFamilyName>
<patterns>Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)</patterns>
</license>
<license implementation="org.apache.rat.analysis.license.SimplePatternBasedLicense">
<licenseFamilyCategory>MIT</licenseFamilyCategory>
<licenseFamilyName>AngularJS</licenseFamilyName>
<patterns>http://angularjs.org | (c) 2010-2016 Google, Inc. | License: MIT</patterns>
</license>
</licenses>
<licenseFamilies combine.children="append">
<licenseFamily implementation="org.apache.rat.license.MITLicenseFamily"/>
<licenseFamily implementation="org.apache.rat.license.SimpleLicenseFamily">
<familyName>JQuery</familyName>
</licenseFamily>
<licenseFamily implementation="org.apache.rat.license.SimpleLicenseFamily">
<familyName>Bootstrap</familyName>
</licenseFamily>
<licenseFamily implementation="org.apache.rat.license.SimpleLicenseFamily">
<familyName>AngularJS</familyName>
</licenseFamily>
</licenseFamilies>
<excludes combine.children="append">
<exclude>src/test/resources/clusterts/id_rsa</exclude>
<exclude>src/test/resources/clusterts/id_rsa.pub</exclude>
<exclude>src/test/resources/clusterts/known_hosts</exclude>
<exclude>src/test/resources/docker/id_rsa</exclude>
<exclude>src/test/resources/docker/id_rsa.pub</exclude>
<exclude>src/test/resources/transactionts/results/query_after_restart/big_object_20M/big_object_20M.1.adm.template</exclude>
<exclude>src/test/resources/integrationts/restart/tweets.json</exclude> <!-- https://issues.apache.org/jira/browse/ASTERIXDB-1850 -->
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<excludes combine.children="append">
<exclude>${failsafe.test.excludes}</exclude>
<exclude>${cluster.test.excludes}</exclude>
<exclude>${cluster.extest.excludes}</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.hyracks</groupId>
<artifactId>license-automation-plugin</artifactId>
<versionRange>${hyracks.version}</versionRange>
<goals>
<goal>generate</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>cluster-tests</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>clusterTest</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>net.ju-n.maven.plugins</groupId>
<artifactId>vagrant-maven-plugin</artifactId>
<version>1.1.0-SNAPSHOT</version>
<executions>
<!-- Before tests: import box, start VM -->
<execution>
<id>setup-and-start-vagrant-vm</id>
<phase>pre-integration-test</phase>
<goals>
<goal>up</goal>
</goals>
<configuration>
<box>chef/centos-6.5</box>
<url>https://vagrantcloud.com/chef/centos-6.5</url>
<vagrantHome>${project.basedir}/src/test/resources/clusterts</vagrantHome>
</configuration>
</execution>
<!-- After tests: shut down, destroy VM -->
<execution>
<id>destroy-vagrant-vm</id>
<phase>post-integration-test</phase>
<goals>
<goal>destroy</goal>
</goals>
<configuration>
<box>chef/centos-6.5</box>
<url>https://vagrantcloud.com/chef/centos-6.5</url>
<vagrantHome>${project.basedir}/src/test/resources/clusterts</vagrantHome>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<runOrder>alphabetical</runOrder>
<forkMode>pertest</forkMode>
<excludes>
<exclude>${failsafe.test.excludes}</exclude>
<exclude>${cluster.test.excludes}</exclude>
<exclude>${cluster.extest.excludes}</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>args4j</groupId>
<artifactId>args4j</artifactId>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-events</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-common</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-app</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-server</artifactId>
<version>${project.version}</version>
<type>zip</type>
<classifier>binary-assembly</classifier>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-external-data</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-test-framework</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-minicluster</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
<version>3.0.20</version>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-external-data</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.hyracks</groupId>
<artifactId>hyracks-api</artifactId>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hyracks</groupId>
<artifactId>hyracks-util</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-server</artifactId>
<type>test-jar</type>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.asterix</groupId>
<artifactId>asterix-external-data</artifactId>
<version>${project.version}</version>
<type>zip</type>
<classifier>testlib</classifier>
<scope>test</scope>
</dependency>
</dependencies>
</project>