Bump versions to 0.17.2-SNAPSHOT
[aaa.git] / aaa-cli-jar / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 Copyright (c) 2016 Red Hat, Inc. and others. All rights reserved.
4
5 This program and the accompanying materials are made available under the
6 terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
8 -->
9 <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">
10   <modelVersion>4.0.0</modelVersion>
11
12   <parent>
13     <groupId>org.opendaylight.aaa</groupId>
14     <artifactId>aaa-parent</artifactId>
15     <version>0.17.2-SNAPSHOT</version>
16     <relativePath>../parent</relativePath>
17   </parent>
18
19   <artifactId>aaa-cli-jar</artifactId>
20   <name>ODL :: aaa :: ${project.artifactId}</name>
21   <packaging>jar</packaging>
22
23   <dependencies>
24     <dependency>
25       <groupId>com.google.guava</groupId>
26       <artifactId>guava</artifactId>
27     </dependency>
28     <dependency>
29       <groupId>net.sf.jopt-simple</groupId>
30       <artifactId>jopt-simple</artifactId>
31       <version>5.0.4</version>
32     </dependency>
33     <dependency>
34       <groupId>org.opendaylight.aaa</groupId>
35       <artifactId>aaa-idm-store-h2</artifactId>
36       <exclusions>
37         <exclusion>
38           <!-- Completely disable transitive dependencies -->
39           <groupId>*</groupId>
40           <artifactId>*</artifactId>
41         </exclusion>
42       </exclusions>
43     </dependency>
44     <!-- Now repeat the few really needed dependencies which we would normally get transitively -->
45     <dependency>
46       <groupId>org.opendaylight.aaa</groupId>
47       <artifactId>aaa-authn-api</artifactId>
48     </dependency>
49     <dependency>
50       <groupId>org.apache.commons</groupId>
51       <artifactId>commons-text</artifactId>
52     </dependency>
53     <dependency>
54       <groupId>com.h2database</groupId>
55       <artifactId>h2</artifactId>
56       <scope>compile</scope>
57     </dependency>
58
59     <!-- Now for the FAT JAR we need to fix up some <scope>provided to be <scope>compile -->
60     <dependency>
61       <groupId>org.slf4j</groupId>
62       <artifactId>slf4j-api</artifactId>
63       <scope>compile</scope> <!-- Not provided -->
64     </dependency>
65     <dependency>
66       <groupId>org.slf4j</groupId>
67       <artifactId>slf4j-simple</artifactId>
68       <scope>compile</scope> <!-- Not test -->
69     </dependency>
70     <!-- Testing Dependencies -->
71     <dependency>
72       <groupId>org.opendaylight.yangtools</groupId>
73       <artifactId>testutils</artifactId>
74     </dependency>
75     <dependency>
76       <groupId>org.opendaylight.aaa</groupId>
77       <artifactId>aaa-password-service-api</artifactId>
78     </dependency>
79     <dependency>
80       <groupId>org.opendaylight.aaa</groupId>
81       <artifactId>aaa-password-service-impl</artifactId>
82     </dependency>
83   </dependencies>
84
85   <build>
86     <plugins>
87       <plugin>
88         <artifactId>maven-failsafe-plugin</artifactId>
89         <!-- TODO Remove when https://git.opendaylight.org/gerrit/#/c/48400/ is merged -->
90         <executions>
91           <execution>
92             <id>integration-test</id>
93             <goals>
94               <goal>integration-test</goal>
95             </goals>
96           </execution>
97           <execution>
98             <id>verify</id>
99             <goals>
100               <goal>verify</goal>
101             </goals>
102           </execution>
103         </executions>
104       </plugin>
105       <plugin>
106         <groupId>org.apache.maven.plugins</groupId>
107         <artifactId>maven-shade-plugin</artifactId>
108         <executions>
109           <execution>
110             <id>shade</id>
111             <phase>package</phase>
112             <goals>
113               <goal>shade</goal>
114             </goals>
115             <configuration>
116               <createDependencyReducedPom>false</createDependencyReducedPom>
117               <minimizeJar>true</minimizeJar>
118               <filters>
119                 <filter>
120                   <artifact>org.opendaylight.aaa:aaa-shiro</artifact>
121                   <includes>
122                     <include>org/opendaylight/**</include>
123                   </includes>
124                 </filter>
125                 <filter>
126                   <artifact>com.h2database:h2</artifact>
127                   <excludes>
128                     <!-- AAA cli does not use bnf, fulltext, jdbcx, jmx, server and tools -->
129                     <exclude>org/h2/bnf/**</exclude>
130                     <exclude>org/h2/fulltext/**</exclude>
131                     <exclude>org/h2/jdbcx/**</exclude>
132                     <exclude>org/h2/jmx/**</exclude>
133                     <exclude>org/h2/server/**</exclude>
134                     <exclude>org/h2/tools/**</exclude>
135                   </excludes>
136                 </filter>
137                 <filter>
138                   <artifact>org.opendaylight.aaa:aaa-password-service-api</artifact>
139                   <includes>
140                     <include>org/opendaylight/**</include>
141                   </includes>
142                 </filter>
143                 <filter>
144                   <artifact>org.opendaylight.aaa:aaa-password-service-impl</artifact>
145                   <includes>
146                     <include>org/opendaylight/**</include>
147                   </includes>
148                 </filter>
149               </filters>
150               <transformers>
151                 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
152                   <mainClass>org.opendaylight.aaa.cli.jar.Main</mainClass>
153                 </transformer>
154               </transformers>
155             </configuration>
156           </execution>
157         </executions>
158       </plugin>
159     </plugins>
160   </build>
161
162 </project>