HBASE-14085 Update LICENSE and NOTICE files.
[hbase.git] / hbase-assembly / pom.xml
blob69c49895ed72148b8be227b391eb1fcf28bfe63d
1 <?xml version="1.0"?>
2 <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">
3   <!--
4     /**
5      * Licensed to the Apache Software Foundation (ASF) under one
6      * or more contributor license agreements.  See the NOTICE file
7      * distributed with this work for additional information
8      * regarding copyright ownership.  The ASF licenses this file
9      * to you under the Apache License, Version 2.0 (the
10      * "License"); you may not use this file except in compliance
11      * with the License.  You may obtain a copy of the License at
12      *
13      *     http://www.apache.org/licenses/LICENSE-2.0
14      *
15      * Unless required by applicable law or agreed to in writing, software
16      * distributed under the License is distributed on an "AS IS" BASIS,
17      * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18      * See the License for the specific language governing permissions and
19      * limitations under the License.
20      */
21     -->
22   <modelVersion>4.0.0</modelVersion>
23   <parent>
24     <artifactId>hbase</artifactId>
25     <groupId>org.apache.hbase</groupId>
26     <version>2.0.0-SNAPSHOT</version>
27     <relativePath>..</relativePath>
28   </parent>
29   <artifactId>hbase-assembly</artifactId>
30   <name>Apache HBase - Assembly</name>
31   <description>
32         Module that does project assembly and that is all that it does.
33     </description>
34   <packaging>pom</packaging>
35   <properties>
36     <license.bundles.dependencies>true</license.bundles.dependencies>
37   </properties>
38   <build>
39     <plugins>
40       <!-- licensing info from our dependencies -->
41       <plugin>
42         <groupId>org.apache.maven.plugins</groupId>
43         <artifactId>maven-remote-resources-plugin</artifactId>
44         <version>1.5</version>
45         <executions>
46           <execution>
47             <id>default</id>
48             <configuration>
49               <properties>
50                 <copyright-end-year>${build.year}</copyright-end-year>
51                 <debug-print-included-work-info>${license.debug.print.included}</debug-print-included-work-info>
52                 <bundled-dependencies>${license.bundles.dependencies}</bundled-dependencies>
53                 <bundled-jquery>${license.bundles.jquery}</bundled-jquery>
54                 <bundled-logo>${license.bundles.logo}</bundled-logo>
55                 <bundled-bootstrap>${license.bundles.bootstrap}</bundled-bootstrap>
56               </properties>
57               <resourceBundles>
58                 <resourceBundle>${project.groupId}:hbase-resource-bundle:${project.version}</resourceBundle>
59               </resourceBundles>
60               <supplementalModelArtifacts>
61                 <supplementalModelArtifact>${project.groupId}:hbase-resource-bundle:${project.version}</supplementalModelArtifact>
62               </supplementalModelArtifacts>
63               <supplementalModels>
64                 <supplementalModel>supplemental-models.xml</supplementalModel>
65               </supplementalModels>
66             </configuration>
67           </execution>
68         </executions>
69       </plugin>
70       <plugin>
71         <artifactId>maven-assembly-plugin</artifactId>
72         <version>${maven.assembly.version}</version>
73         <configuration>
74           <!--Else will use hbase-assembly as final name.-->
75           <finalName>hbase-${project.version}</finalName>
76           <skipAssembly>false</skipAssembly>
77           <appendAssemblyId>true</appendAssemblyId>
78           <tarLongFileMode>gnu</tarLongFileMode>
79           <descriptors>
80             <descriptor>${assembly.file}</descriptor>
81           </descriptors>
82         </configuration>
83       </plugin>
84         <plugin>
85           <groupId>org.apache.maven.plugins</groupId>
86           <artifactId>maven-site-plugin</artifactId>
87           <configuration>
88             <skip>true</skip>
89           </configuration>
90         </plugin>
91       <plugin>
92         <artifactId>maven-dependency-plugin</artifactId>
93         <executions>
94           <execution>
95                 <!-- generates the file that will be used by the bin/hbase script in the dev env -->
96             <id>create-hbase-generated-classpath</id>
97             <phase>test</phase>
98             <goals>
99               <goal>build-classpath</goal>
100             </goals>
101             <configuration>
102               <outputFile>${project.parent.basedir}/target/cached_classpath.txt</outputFile>
103             </configuration>
104           </execution>
105         <!--
106            Build an aggregation of our templated NOTICE file and the NOTICE files in our dependencies.
107            If MASSEMBLY-382 is fixed we could do this in the assembly
108            Currently relies on env, bash, find, and cat.
109         -->
110           <execution>
111             <!-- put all of the NOTICE files out of our dependencies -->
112             <id>unpack-dependency-notices</id>
113             <phase>prepare-package</phase>
114             <goals>
115               <goal>unpack-dependencies</goal>
116             </goals>
117             <configuration>
118               <useSubDirectoryPerArtifact>true</useSubDirectoryPerArtifact>
119               <includes>**\/NOTICE,**\/NOTICE.txt</includes>
120             </configuration>
121           </execution>
122         </executions>
123       </plugin>
124       <plugin>
125         <groupId>org.codehaus.mojo</groupId>
126         <artifactId>exec-maven-plugin</artifactId>
127         <version>1.4.0</version>
128         <executions>
129           <execution>
130             <id>concat-NOTICE-files</id>
131             <phase>package</phase>
132             <goals>
133               <goal>exec</goal>
134             </goals>
135             <configuration>
136               <executable>env</executable>
137               <arguments>
138                 <argument>bash</argument>
139                 <argument>-c</argument>
140                 <argument>cat maven-shared-archive-resources/META-INF/NOTICE \
141                   `find ${project.build.directory}/dependency -iname NOTICE -or -iname NOTICE.txt` \
142                 </argument>
143               </arguments>
144               <outputFile>${project.build.directory}/NOTICE.aggregate</outputFile>
145               <workingDirectory>${project.build.directory}</workingDirectory>
146             </configuration>
147           </execution>
148         </executions>
149       </plugin>
150       <!-- /end building aggregation of NOTICE files -->
151     </plugins>
152   </build>
153   <dependencies>
154         <!-- Intra-project dependencies -->
155     <dependency>
156       <groupId>org.apache.hbase</groupId>
157       <artifactId>hbase-it</artifactId>
158       <type>test-jar</type>
159     </dependency>
160     <dependency>
161       <groupId>org.apache.hbase</groupId>
162       <artifactId>hbase-server</artifactId>
163     </dependency>
164     <dependency>
165         <groupId>org.apache.hbase</groupId>
166         <artifactId>hbase-hadoop-compat</artifactId>
167     </dependency>
168     <dependency>
169         <groupId>org.apache.hbase</groupId>
170         <artifactId>${compat.module}</artifactId>
171         <version>${project.version}</version>
172     </dependency>
173     <dependency>
174        <groupId>org.apache.hbase</groupId>
175        <artifactId>hbase-shell</artifactId>
176        <version>${project.version}</version>
177     </dependency>
178     <dependency>
179       <groupId>org.apache.hbase</groupId>
180       <artifactId>hbase-thrift</artifactId>
181       <version>${project.version}</version>
182     </dependency>
183     <dependency>
184       <groupId>org.apache.hbase</groupId>
185       <artifactId>hbase-rest</artifactId>
186       <version>${project.version}</version>
187     </dependency>
188     <dependency>
189        <groupId>org.apache.hbase</groupId>
190        <artifactId>hbase-testing-util</artifactId>
191        <version>${project.version}</version>
192     </dependency>
193     <dependency>
194        <groupId>org.apache.hbase</groupId>
195        <artifactId>hbase-resource-bundle</artifactId>
196        <version>${project.version}</version>
197        <optional>true</optional>
198     </dependency>
199   </dependencies>
200 </project>