0e3aa357c184361288e3828f5250e2728bb81c30
[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 <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.odlparent</groupId>
14         <artifactId>odlparent</artifactId>
15         <version>2.0.7</version>
16         <relativePath/>
17     </parent>
18
19     <groupId>org.opendaylight.netconf</groupId>
20     <artifactId>netconf-testtool</artifactId>
21     <name>${project.artifactId}</name>
22     <version>1.3.3-SNAPSHOT</version>
23     <packaging>jar</packaging>
24
25     <properties>
26         <sonar.skip>true</sonar.skip>
27     </properties>
28
29     <dependencyManagement>
30         <dependencies>
31             <dependency>
32                 <groupId>org.opendaylight.netconf</groupId>
33                 <artifactId>netconf-artifacts</artifactId>
34                 <version>${project.version}</version>
35                 <type>pom</type>
36                 <scope>import</scope>
37             </dependency>
38             <dependency>
39                 <groupId>org.opendaylight.yangtools</groupId>
40                 <artifactId>yangtools-artifacts</artifactId>
41                 <version>1.2.3-SNAPSHOT</version>
42                 <type>pom</type>
43                 <scope>import</scope>
44             </dependency>
45             <dependency>
46                 <groupId>org.opendaylight.controller</groupId>
47                 <artifactId>config-artifacts</artifactId>
48                 <version>0.7.3-SNAPSHOT</version>
49                 <type>pom</type>
50                 <scope>import</scope>
51             </dependency>
52             <dependency>
53                 <groupId>org.opendaylight.controller</groupId>
54                 <artifactId>mdsal-artifacts</artifactId>
55                 <version>1.6.3-SNAPSHOT</version>
56                 <type>pom</type>
57                 <scope>import</scope>
58             </dependency>
59             <dependency>
60                 <groupId>org.opendaylight.mdsal.model</groupId>
61                 <artifactId>mdsal-model-artifacts</artifactId>
62                 <version>0.11.3-SNAPSHOT</version>
63                 <type>pom</type>
64                 <scope>import</scope>
65             </dependency>
66         </dependencies>
67     </dependencyManagement>
68
69     <dependencies>
70         <dependency>
71             <groupId>org.codehaus.janino</groupId>
72             <artifactId>janino</artifactId>
73             <version>2.6.1</version>
74         </dependency>
75         <dependency>
76             <groupId>net.sourceforge.argparse4j</groupId>
77             <artifactId>argparse4j</artifactId>
78             <version>0.4.3</version>
79         </dependency>
80         <dependency>
81             <groupId>ch.qos.logback</groupId>
82             <artifactId>logback-classic</artifactId>
83             <scope>compile</scope>
84         </dependency>
85         <dependency>
86             <groupId>com.ning</groupId>
87             <artifactId>async-http-client</artifactId>
88             <version>1.9.24</version>
89         </dependency>
90         <dependency>
91             <groupId>org.bouncycastle</groupId>
92             <artifactId>bcpkix-jdk15on</artifactId>
93         </dependency>
94         <dependency>
95             <groupId>org.bouncycastle</groupId>
96             <artifactId>bcprov-jdk15on</artifactId>
97         </dependency>
98         <dependency>
99             <groupId>${project.groupId}</groupId>
100             <artifactId>netconf-netty-util</artifactId>
101         </dependency>
102         <dependency>
103             <groupId>${project.groupId}</groupId>
104             <artifactId>netconf-auth</artifactId>
105         </dependency>
106         <dependency>
107             <groupId>${project.groupId}</groupId>
108             <artifactId>config-netconf-connector</artifactId>
109         </dependency>
110         <dependency>
111             <groupId>${project.groupId}</groupId>
112             <artifactId>sal-netconf-connector</artifactId>
113         </dependency>
114        <dependency>
115             <groupId>org.opendaylight.yangtools</groupId>
116             <artifactId>mockito-configuration</artifactId>
117         </dependency>
118         <dependency>
119             <groupId>org.slf4j</groupId>
120             <artifactId>slf4j-api</artifactId>
121         </dependency>
122         <dependency>
123             <groupId>com.google.guava</groupId>
124             <artifactId>guava</artifactId>
125         </dependency>
126         <dependency>
127             <groupId>${project.groupId}</groupId>
128             <artifactId>netconf-api</artifactId>
129         </dependency>
130         <dependency>
131             <groupId>${project.groupId}</groupId>
132             <artifactId>ietf-netconf-monitoring</artifactId>
133         </dependency>
134         <dependency>
135             <groupId>${project.groupId}</groupId>
136             <artifactId>ietf-netconf-monitoring-extension</artifactId>
137         </dependency>
138         <dependency>
139             <groupId>${project.groupId}</groupId>
140             <artifactId>netconf-client</artifactId>
141         </dependency>
142         <dependency>
143             <groupId>org.opendaylight.mdsal.model</groupId>
144             <artifactId>ietf-yang-types-20130715</artifactId>
145         </dependency>
146         <dependency>
147             <groupId>org.opendaylight.mdsal.model</groupId>
148             <artifactId>ietf-inet-types-2013-07-15</artifactId>
149         </dependency>
150         <dependency>
151             <groupId>${project.groupId}</groupId>
152             <artifactId>netconf-impl</artifactId>
153         </dependency>
154         <dependency>
155             <groupId>${project.groupId}</groupId>
156             <artifactId>netconf-mapping-api</artifactId>
157         </dependency>
158         <dependency>
159             <groupId>${project.groupId}</groupId>
160             <artifactId>netconf-monitoring</artifactId>
161         </dependency>
162         <dependency>
163             <groupId>${project.groupId}</groupId>
164             <artifactId>netconf-ssh</artifactId>
165         </dependency>
166         <dependency>
167             <groupId>org.opendaylight.controller</groupId>
168             <artifactId>netty-config-api</artifactId>
169         </dependency>
170         <dependency>
171             <groupId>org.opendaylight.controller</groupId>
172             <artifactId>sal-inmemory-datastore</artifactId>
173         </dependency>
174         <dependency>
175             <groupId>org.opendaylight.netconf</groupId>
176             <artifactId>mdsal-netconf-connector</artifactId>
177         </dependency>
178         <dependency>
179             <groupId>org.apache.karaf.features</groupId>
180             <artifactId>org.apache.karaf.features.core</artifactId>
181             <version>${karaf.version}</version>
182         </dependency>
183     </dependencies>
184
185     <build>
186         <plugins>
187             <plugin>
188                 <groupId>org.apache.maven.plugins</groupId>
189                 <artifactId>maven-dependency-plugin</artifactId>
190                 <executions>
191                     <execution>
192                         <id>stress-client dependency copy</id>
193                         <goals>
194                             <goal>copy</goal>
195                         </goals>
196                         <configuration>
197                             <artifactItems>
198                                 <artifactItem>
199                                     <groupId>org.bouncycastle</groupId>
200                                     <artifactId>bcpkix-jdk15on</artifactId>
201                                     <outputDirectory>${project.build.directory}/lib</outputDirectory>
202                                     <overWrite>true</overWrite>
203                                     <destFileName>bcpkix-jdk15on.jar</destFileName>
204                                 </artifactItem>
205                                 <artifactItem>
206                                     <groupId>org.bouncycastle</groupId>
207                                     <artifactId>bcprov-jdk15on</artifactId>
208                                     <outputDirectory>${project.build.directory}/lib</outputDirectory>
209                                     <overWrite>true</overWrite>
210                                     <destFileName>bcprov-jdk15on.jar</destFileName>
211                                 </artifactItem>
212                             </artifactItems>
213                         </configuration>
214                     </execution>
215                 </executions>
216             </plugin>
217             <plugin>
218                 <groupId>org.apache.maven.plugins</groupId>
219                 <artifactId>maven-shade-plugin</artifactId>
220                 <configuration/>
221                 <executions>
222                     <execution>
223                         <goals>
224                             <goal>shade</goal>
225                         </goals>
226                         <phase>package</phase>
227                         <configuration>
228                             <!-- TODO investigate why jar fails without this filter-->
229                             <filters>
230                                 <filter>
231                                     <artifact>*:*</artifact>
232                                     <excludes>
233                                         <exclude>META-INF/*.SF</exclude>
234                                         <exclude>META-INF/*.DSA</exclude>
235                                         <exclude>META-INF/*.RSA</exclude>
236                                         <exclude>org.opendaylight.netconf.test.tool.client</exclude>
237                                     </excludes>
238                                 </filter>
239                             </filters>
240                               <transformers>
241                                   <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
242                                       <mainClass>org.opendaylight.netconf.test.tool.Main</mainClass>
243                                   </transformer>
244                               </transformers>
245                               <shadedArtifactAttached>true</shadedArtifactAttached>
246                               <shadedClassifierName>executable</shadedClassifierName>
247                           </configuration>
248                       </execution>
249
250                       <execution>
251                           <id>stress-client</id>
252                           <goals>
253                               <goal>shade</goal>
254                           </goals>
255                           <phase>package</phase>
256                           <configuration>
257                               <shadedArtifactId>stress-client</shadedArtifactId>
258                               <filters>
259                                   <filter>
260                                       <artifact>*:*</artifact>
261                                       <excludes>
262                                           <exclude>META-INF/*.SF</exclude>
263                                           <exclude>META-INF/*.DSA</exclude>
264                                           <exclude>META-INF/*.RSA</exclude>
265                                           <exclude>org.opendaylight.netconf.test.tool.client.http</exclude>
266                                           <exclude>org.opendaylight.netconf.test.tool.rpc</exclude>
267                                           <exclude>AcceptingAuthProvider</exclude>
268                                           <exclude>org.opendaylight.netconf.test.tool.DummyMonitoringService</exclude>
269                                           <exclude>org.opendaylight.netconf.test.tool.FakeCapability</exclude>
270                                           <exclude>org.opendaylight.netconf.test.tool.Main</exclude>
271                                           <exclude>org.opendaylight.netconf.test.tool.NetconfDeviceSimulator</exclude>
272                                       </excludes>
273                                   </filter>
274                               </filters>
275                               <artifactSet>
276                                   <excludes>
277                                      <exclude>org.bouncycastle:*</exclude>
278                                   </excludes>
279                               </artifactSet>
280                               <transformers>
281                                   <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
282                                       <manifestEntries>
283                                           <Main-Class>org.opendaylight.netconf.test.tool.client.stress.StressClient</Main-Class>
284                                           <Class-Path>. lib lib/bcprov-jdk15on.jar lib/bcpkix-jdk15on.jar</Class-Path>
285                                       </manifestEntries>
286                                   </transformer>
287                               </transformers>
288                               <shadedArtifactAttached>true</shadedArtifactAttached>
289                               <shadedClassifierName>stress-client</shadedClassifierName>
290                           </configuration>
291                       </execution>
292
293                       <execution>
294                           <id>restconf-perf-client</id>
295                           <goals>
296                               <goal>shade</goal>
297                           </goals>
298                           <phase>package</phase>
299                           <configuration>
300                               <shadedArtifactId>rest-perf-client</shadedArtifactId>
301                               <filters>
302                                   <filter>
303                                       <artifact>*:*</artifact>
304                                       <excludes>
305                                           <exclude>META-INF/*.SF</exclude>
306                                           <exclude>META-INF/*.DSA</exclude>
307                                           <exclude>META-INF/*.RSA</exclude>
308                                           <exclude>org.opendaylight.netconf.test.tool.rpc</exclude>
309                                           <exclude>AcceptingAuthProvider</exclude>
310                                           <exclude>org.opendaylight.netconf.test.tool.DummyMonitoringService</exclude>
311                                           <exclude>org.opendaylight.netconf.test.tool.FakeCapability</exclude>
312                                           <exclude>org.opendaylight.netconf.test.tool.Main</exclude>
313                                           <exclude>org.opendaylight.netconf.test.tool.NetconfDeviceSimulator</exclude>
314                                       </excludes>
315                                   </filter>
316                               </filters>
317                               <artifactSet>
318                                   <excludes>
319                                       <exclude>org.bouncycastle:*</exclude>
320                                       <exclude>com.google:*</exclude>
321                                       <exclude>org.opendaylight.yangtools</exclude>
322                                       <exclude>org.opendaylight.yang</exclude>
323                                   </excludes>
324                               </artifactSet>
325                               <transformers>
326                                   <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
327                                       <mainClass>org.opendaylight.netconf.test.tool.client.http.perf.RestPerfClient</mainClass>
328                                   </transformer>
329                               </transformers>
330                               <shadedArtifactAttached>true</shadedArtifactAttached>
331                               <shadedClassifierName>rest-perf-client</shadedClassifierName>
332                           </configuration>
333                       </execution>
334
335                     <execution>
336                         <id>scale-util</id>
337                         <goals>
338                             <goal>shade</goal>
339                         </goals>
340                         <phase>package</phase>
341                         <configuration>
342                             <shadedArtifactId>scale-util</shadedArtifactId>
343                             <filters>
344                                 <filter>
345                                     <artifact>*:*</artifact>
346                                     <excludes>
347                                         <exclude>META-INF/*.SF</exclude>
348                                         <exclude>META-INF/*.DSA</exclude>
349                                         <exclude>META-INF/*.RSA</exclude>
350                                     </excludes>
351                                 </filter>
352                             </filters>
353                             <transformers>
354                                 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
355                                     <manifestEntries>
356                                         <Main-Class>org.opendaylight.netconf.test.tool.ScaleUtil</Main-Class>
357                                         <Class-Path>. lib lib/bcprov-jdk15on.jar lib/bcpkix-jdk15on.jar</Class-Path>
358                                     </manifestEntries>
359                                 </transformer>
360                             </transformers>
361                             <shadedArtifactAttached>true</shadedArtifactAttached>
362                             <shadedClassifierName>scale-util</shadedClassifierName>
363                         </configuration>
364                     </execution>
365                   </executions>
366               </plugin>
367               <plugin>
368                   <artifactId>maven-assembly-plugin</artifactId>
369                   <configuration>
370                       <descriptors>
371                           <descriptor>src/main/assembly/stress-client.xml</descriptor>
372                       </descriptors>
373                       <finalName>stress-client-${project.version}-package</finalName>
374                   </configuration>
375                   <executions>
376                       <execution>
377                           <id>make-assembly</id>
378                           <phase>package</phase>
379                           <goals>
380                               <goal>single</goal>
381                           </goals>
382                       </execution>
383                   </executions>
384               </plugin>
385               <plugin>
386                   <groupId>org.apache.maven.plugins</groupId>
387                   <artifactId>maven-checkstyle-plugin</artifactId>
388                   <configuration>
389                       <propertyExpansion>checkstyle.violationSeverity=error</propertyExpansion>
390                   </configuration>
391               </plugin>
392           </plugins>
393       </build>
394
395   </project>