Release netconf
[netconf.git] / netconf / tools / netconf-testtool / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ Copyright (c) 2014 Cisco Systems, 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
8   -->
9
10 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
11          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
12     <modelVersion>4.0.0</modelVersion>
13
14     <parent>
15         <groupId>org.opendaylight.netconf</groupId>
16         <artifactId>netconf-parent</artifactId>
17         <version>7.0.1</version>
18         <relativePath>../../../parent</relativePath>
19     </parent>
20
21     <artifactId>netconf-testtool</artifactId>
22     <name>${project.artifactId}</name>
23     <packaging>jar</packaging>
24
25     <properties>
26         <sonar.skip>true</sonar.skip>
27     </properties>
28
29     <dependencies>
30         <dependency>
31             <groupId>com.github.spotbugs</groupId>
32             <artifactId>spotbugs-annotations</artifactId>
33             <optional>true</optional>
34         </dependency>
35         <dependency>
36             <groupId>org.codehaus.janino</groupId>
37             <artifactId>janino</artifactId>
38             <version>3.1.4</version>
39         </dependency>
40         <dependency>
41             <groupId>net.sourceforge.argparse4j</groupId>
42             <artifactId>argparse4j</artifactId>
43         </dependency>
44         <dependency>
45             <groupId>ch.qos.logback</groupId>
46             <artifactId>logback-classic</artifactId>
47             <scope>compile</scope>
48         </dependency>
49         <dependency>
50             <groupId>org.bouncycastle</groupId>
51             <artifactId>bcpkix-jdk18on</artifactId>
52         </dependency>
53         <dependency>
54             <groupId>org.bouncycastle</groupId>
55             <artifactId>bcprov-jdk18on</artifactId>
56         </dependency>
57         <dependency>
58             <groupId>${project.groupId}</groupId>
59             <artifactId>netconf-netty-util</artifactId>
60         </dependency>
61         <dependency>
62             <groupId>${project.groupId}</groupId>
63             <artifactId>netconf-auth</artifactId>
64         </dependency>
65         <dependency>
66             <groupId>org.opendaylight.netconf</groupId>
67             <artifactId>netconf-topology</artifactId>
68         </dependency>
69         <dependency>
70             <groupId>${project.groupId}</groupId>
71             <artifactId>netconf-client-mdsal</artifactId>
72         </dependency>
73         <dependency>
74             <groupId>org.slf4j</groupId>
75             <artifactId>slf4j-api</artifactId>
76         </dependency>
77         <dependency>
78             <groupId>com.google.guava</groupId>
79             <artifactId>guava</artifactId>
80         </dependency>
81         <dependency>
82             <groupId>${project.groupId}</groupId>
83             <artifactId>netconf-api</artifactId>
84         </dependency>
85         <dependency>
86             <groupId>org.opendaylight.netconf.model</groupId>
87             <artifactId>rfc6022</artifactId>
88         </dependency>
89         <dependency>
90             <groupId>${project.groupId}</groupId>
91             <artifactId>netconf-client</artifactId>
92         </dependency>
93         <dependency>
94             <groupId>${project.groupId}</groupId>
95             <artifactId>netconf-server</artifactId>
96         </dependency>
97         <dependency>
98             <groupId>com.guicedee.services</groupId>
99             <artifactId>javax.inject</artifactId>
100             <optional>true</optional>
101         </dependency>
102         <dependency>
103             <groupId>org.opendaylight.mdsal.binding.model.ietf</groupId>
104             <artifactId>rfc6991-ietf-inet-types</artifactId>
105         </dependency>
106         <dependency>
107             <groupId>org.opendaylight.mdsal</groupId>
108             <artifactId>mdsal-dom-broker</artifactId>
109         </dependency>
110         <dependency>
111             <groupId>org.opendaylight.mdsal</groupId>
112             <artifactId>mdsal-dom-inmemory-datastore</artifactId>
113         </dependency>
114         <dependency>
115             <groupId>org.opendaylight.netconf</groupId>
116             <artifactId>netconf-server-mdsal</artifactId>
117         </dependency>
118         <dependency>
119             <groupId>org.apache.karaf.features</groupId>
120             <artifactId>org.apache.karaf.features.core</artifactId>
121         </dependency>
122
123        <dependency>
124             <groupId>org.opendaylight.yangtools</groupId>
125             <artifactId>mockito-configuration</artifactId>
126         </dependency>
127         <dependency>
128             <groupId>org.xmlunit</groupId>
129             <artifactId>xmlunit-core</artifactId>
130         </dependency>
131         <dependency>
132             <groupId>org.xmlunit</groupId>
133             <artifactId>xmlunit-assertj</artifactId>
134         </dependency>
135     </dependencies>
136
137     <build>
138         <plugins>
139             <plugin>
140                 <groupId>org.apache.maven.plugins</groupId>
141                 <artifactId>maven-dependency-plugin</artifactId>
142                 <executions>
143                     <execution>
144                         <id>stress-client dependency copy</id>
145                         <goals>
146                             <goal>copy</goal>
147                         </goals>
148                         <configuration>
149                             <artifactItems>
150                                 <artifactItem>
151                                     <groupId>org.bouncycastle</groupId>
152                                     <artifactId>bcpkix-jdk18on</artifactId>
153                                     <outputDirectory>${project.build.directory}/lib</outputDirectory>
154                                     <overWrite>true</overWrite>
155                                     <destFileName>bcpkix-jdk18on.jar</destFileName>
156                                 </artifactItem>
157                                 <artifactItem>
158                                     <groupId>org.bouncycastle</groupId>
159                                     <artifactId>bcprov-jdk18on</artifactId>
160                                     <outputDirectory>${project.build.directory}/lib</outputDirectory>
161                                     <overWrite>true</overWrite>
162                                     <destFileName>bcprov-jdk18on.jar</destFileName>
163                                 </artifactItem>
164                             </artifactItems>
165                         </configuration>
166                     </execution>
167                 </executions>
168             </plugin>
169             <plugin>
170                 <groupId>org.apache.maven.plugins</groupId>
171                 <artifactId>maven-shade-plugin</artifactId>
172                 <configuration>
173                     <createDependencyReducedPom>false</createDependencyReducedPom>
174                 </configuration>
175                 <executions>
176                     <execution>
177                         <goals>
178                             <goal>shade</goal>
179                         </goals>
180                         <phase>package</phase>
181                         <configuration>
182                             <!-- TODO investigate why jar fails without this filter-->
183                             <filters>
184                                 <filter>
185                                     <artifact>*:*</artifact>
186                                     <excludes>
187                                         <exclude>META-INF/*.SF</exclude>
188                                         <exclude>META-INF/*.DSA</exclude>
189                                         <exclude>META-INF/*.RSA</exclude>
190                                         <exclude>org.opendaylight.netconf.test.tool.client</exclude>
191                                     </excludes>
192                                 </filter>
193                             </filters>
194                               <transformers>
195                                   <transformer
196                                           implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
197                                       <mainClass>org.opendaylight.netconf.test.tool.Main</mainClass>
198                                   </transformer>
199                               </transformers>
200                               <shadedArtifactAttached>true</shadedArtifactAttached>
201                               <shadedClassifierName>executable</shadedClassifierName>
202                           </configuration>
203                       </execution>
204
205                       <execution>
206                           <id>stress-client</id>
207                           <goals>
208                               <goal>shade</goal>
209                           </goals>
210                           <phase>package</phase>
211                           <configuration>
212                               <shadedArtifactId>stress-client</shadedArtifactId>
213                               <filters>
214                                   <filter>
215                                       <artifact>*:*</artifact>
216                                       <excludes>
217                                           <exclude>META-INF/*.SF</exclude>
218                                           <exclude>META-INF/*.DSA</exclude>
219                                           <exclude>META-INF/*.RSA</exclude>
220                                           <exclude>org.opendaylight.netconf.test.tool.client.http</exclude>
221                                           <exclude>org.opendaylight.netconf.test.tool.rpc</exclude>
222                                           <exclude>AcceptingAuthProvider</exclude>
223                                           <exclude>org.opendaylight.netconf.test.tool.DummyMonitoringService</exclude>
224                                           <exclude>org.opendaylight.netconf.test.tool.FakeCapability</exclude>
225                                           <exclude>org.opendaylight.netconf.test.tool.Main</exclude>
226                                           <exclude>org.opendaylight.netconf.test.tool.NetconfDeviceSimulator</exclude>
227                                       </excludes>
228                                   </filter>
229                               </filters>
230                               <artifactSet>
231                                   <excludes>
232                                      <exclude>org.bouncycastle:*</exclude>
233                                   </excludes>
234                               </artifactSet>
235                               <transformers>
236                                   <transformer
237                                           implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
238                                       <manifestEntries>
239                                           <Main-Class>org.opendaylight.netconf.test.tool.client.stress.StressClient</Main-Class>
240                                           <Class-Path>. lib lib/bcprov-jdk18on.jar lib/bcpkix-jdk18on.jar</Class-Path>
241                                       </manifestEntries>
242                                   </transformer>
243                               </transformers>
244                               <shadedArtifactAttached>true</shadedArtifactAttached>
245                               <shadedClassifierName>stress-client</shadedClassifierName>
246                           </configuration>
247                       </execution>
248
249                       <execution>
250                           <id>restconf-perf-client</id>
251                           <goals>
252                               <goal>shade</goal>
253                           </goals>
254                           <phase>package</phase>
255                           <configuration>
256                               <shadedArtifactId>rest-perf-client</shadedArtifactId>
257                               <filters>
258                                   <filter>
259                                       <artifact>*:*</artifact>
260                                       <excludes>
261                                           <exclude>META-INF/*.SF</exclude>
262                                           <exclude>META-INF/*.DSA</exclude>
263                                           <exclude>META-INF/*.RSA</exclude>
264                                           <exclude>org.opendaylight.netconf.test.tool.rpc</exclude>
265                                           <exclude>AcceptingAuthProvider</exclude>
266                                           <exclude>org.opendaylight.netconf.test.tool.DummyMonitoringService</exclude>
267                                           <exclude>org.opendaylight.netconf.test.tool.FakeCapability</exclude>
268                                           <exclude>org.opendaylight.netconf.test.tool.Main</exclude>
269                                           <exclude>org.opendaylight.netconf.test.tool.NetconfDeviceSimulator</exclude>
270                                       </excludes>
271                                   </filter>
272                               </filters>
273                               <artifactSet>
274                                   <excludes>
275                                       <exclude>org.bouncycastle:*</exclude>
276                                       <exclude>com.google:*</exclude>
277                                       <exclude>org.opendaylight.yangtools</exclude>
278                                       <exclude>org.opendaylight.yang</exclude>
279                                   </excludes>
280                               </artifactSet>
281                               <transformers>
282                                   <transformer
283                                           implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
284                                       <mainClass>org.opendaylight.netconf.test.tool.client.http.perf.RestPerfClient</mainClass>
285                                   </transformer>
286                               </transformers>
287                               <shadedArtifactAttached>true</shadedArtifactAttached>
288                               <shadedClassifierName>rest-perf-client</shadedClassifierName>
289                           </configuration>
290                       </execution>
291
292                     <execution>
293                         <id>scale-util</id>
294                         <goals>
295                             <goal>shade</goal>
296                         </goals>
297                         <phase>package</phase>
298                         <configuration>
299                             <shadedArtifactId>scale-util</shadedArtifactId>
300                             <filters>
301                                 <filter>
302                                     <artifact>*:*</artifact>
303                                     <excludes>
304                                         <exclude>META-INF/*.SF</exclude>
305                                         <exclude>META-INF/*.DSA</exclude>
306                                         <exclude>META-INF/*.RSA</exclude>
307                                     </excludes>
308                                 </filter>
309                             </filters>
310                             <transformers>
311                                 <transformer
312                                         implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
313                                     <manifestEntries>
314                                         <Main-Class>org.opendaylight.netconf.test.tool.ScaleUtil</Main-Class>
315                                         <Class-Path>. lib lib/bcprov-jdk18on.jar lib/bcpkix-jdk18on.jar</Class-Path>
316                                     </manifestEntries>
317                                 </transformer>
318                             </transformers>
319                             <shadedArtifactAttached>true</shadedArtifactAttached>
320                             <shadedClassifierName>scale-util</shadedClassifierName>
321                         </configuration>
322                     </execution>
323                   </executions>
324               </plugin>
325               <plugin>
326                   <artifactId>maven-assembly-plugin</artifactId>
327                   <configuration>
328                       <descriptors>
329                           <descriptor>src/main/assembly/stress-client.xml</descriptor>
330                       </descriptors>
331                       <overrideGid>0</overrideGid>
332                       <overrideUid>0</overrideUid>
333                       <finalName>stress-client-${project.version}-package</finalName>
334                   </configuration>
335                   <executions>
336                       <execution>
337                           <id>make-assembly</id>
338                           <phase>package</phase>
339                           <goals>
340                               <goal>single</goal>
341                           </goals>
342                       </execution>
343                   </executions>
344               </plugin>
345               <plugin>
346                   <artifactId>maven-surefire-plugin</artifactId>
347                   <configuration>
348                       <reportFormat>plain</reportFormat>
349                   </configuration>
350               </plugin>
351           </plugins>
352       </build>
353
354   </project>