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