a73bfceb99f4374e53fb62fd6be30967e9bcb6ba
[neutron.git] / integration / test / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
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   <modelVersion>4.0.0</modelVersion>
4   <parent>
5     <groupId>org.opendaylight.odlparent</groupId>
6     <artifactId>features-parent</artifactId>
7     <version>1.8.0-Carbon</version>
8     <relativePath/>
9   </parent>
10
11   <groupId>org.opendaylight.neutron</groupId>
12   <artifactId>integration-test</artifactId>
13   <version>0.9.0-SNAPSHOT</version>
14   <packaging>jar</packaging>
15
16   <!--<modules>-->
17     <!--<module>features4-odl-neutron-test</module>-->
18   <!--</modules>-->
19
20   <!--TODO:to run integration test with karaf4: odlparent/features4-test is missing or can we just use odlparent/features-test?-->
21
22   <!-- <name> formatting is used by autorelease to parse and notify projects on
23        build failure. Please do not modify this unless you have a good reason. -->
24   <name>ODL :: neutron :: ${project.artifactId}</name>
25   <properties>
26     <checkstyle.location>${project.parent.basedir}/src/main/resources</checkstyle.location>
27     <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
28     <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
29     <sonar.sources>pom.xml,target/generated-sources/dependency</sonar.sources>
30   </properties>
31   <dependencies>
32     <dependency>
33       <groupId>org.opendaylight.neutron</groupId>
34       <artifactId>features-neutron</artifactId>
35       <version>${project.version}</version>
36       <classifier>features</classifier>
37       <type>xml</type>
38     </dependency>
39     <dependency>
40       <groupId>org.opendaylight.neutron</groupId>
41       <artifactId>neutron-logger</artifactId>
42       <version>${project.version}</version>
43     </dependency>
44     <dependency>
45       <groupId>org.opendaylight.neutron</groupId>
46       <artifactId>odl-neutron-service</artifactId>
47       <version>${project.version}</version>
48       <classifier>features</classifier>
49       <type>xml</type>
50     </dependency>
51     <dependency>
52       <groupId>org.opendaylight.neutron</groupId>
53       <artifactId>odl-neutron-logger</artifactId>
54       <version>${project.version}</version>
55       <classifier>features</classifier>
56       <type>xml</type>
57     </dependency>
58     <dependency>
59       <groupId>org.opendaylight.neutron</groupId>
60       <artifactId>neutron-karaf</artifactId>
61       <version>${project.version}</version>
62       <type>zip</type>
63     </dependency>
64     <dependency>
65       <groupId>org.jacoco</groupId>
66       <artifactId>org.jacoco.agent</artifactId>
67       <version>${jacoco.version}</version>
68     </dependency>
69     <dependency>
70       <groupId>com.google.code.gson</groupId>
71       <artifactId>gson</artifactId>
72     </dependency>
73   </dependencies>
74
75   <build>
76     <pluginManagement>
77       <plugins>
78          <plugin>
79           <artifactId>maven-checkstyle-plugin</artifactId>
80           <configuration>
81             <excludes>org/opendaylight/yang/gen/**,**/yang/**</excludes>
82             <consoleOutput>true</consoleOutput>
83              <propertyExpansion>checkstyle.violationSeverity=error</propertyExpansion>
84           </configuration>
85           <executions>
86             <execution>
87               <goals>
88                 <goal>check</goal>
89               </goals>
90               <phase>process-sources</phase>
91             </execution>
92           </executions>
93         </plugin>
94         <plugin>
95           <groupId>org.jacoco</groupId>
96           <artifactId>jacoco-maven-plugin</artifactId>
97           <version>${jacoco.version}</version>
98         </plugin>
99       </plugins>
100     </pluginManagement>
101     <plugins>
102       <plugin>
103         <groupId>org.apache.maven.plugins</groupId>
104         <artifactId>maven-dependency-plugin</artifactId>
105         <executions>
106           <execution>
107             <id>unpack-classes</id>
108             <goals>
109               <goal>unpack</goal>
110             </goals>
111             <configuration>
112               <artifactItems>
113                 <artifactItem>
114                   <groupId>${project.groupId}</groupId>
115                   <artifactId>neutron-logger</artifactId>
116                   <version>${project.version}</version>
117                 </artifactItem>
118                 <artifactItem>
119                   <groupId>${project.groupId}</groupId>
120                   <artifactId>neutron-spi</artifactId>
121                   <version>${project.version}</version>
122                 </artifactItem>
123                 <artifactItem>
124                   <groupId>${project.groupId}</groupId>
125                   <artifactId>northbound-api</artifactId>
126                   <version>${project.version}</version>
127                 </artifactItem>
128                 <artifactItem>
129                   <groupId>${project.groupId}</groupId>
130                   <artifactId>transcriber</artifactId>
131                   <version>${project.version}</version>
132                 </artifactItem>
133               </artifactItems>
134               <outputDirectory>target/classes</outputDirectory>
135             </configuration>
136           </execution>
137         </executions>
138       </plugin>
139       <plugin>
140         <groupId>org.ops4j.pax.exam</groupId>
141         <artifactId>maven-paxexam-plugin</artifactId>
142         <executions>
143           <execution>
144             <id>generate-config</id>
145             <goals>
146               <goal>generate-depends-file</goal>
147             </goals>
148           </execution>
149         </executions>
150       </plugin>
151       <plugin>
152         <artifactId>maven-failsafe-plugin</artifactId>
153         <version>${failsafe.version}</version>
154         <executions>
155           <execution>
156             <id>integration-tests</id>
157             <phase>integration-test</phase>
158             <goals>
159               <goal>integration-test</goal>
160               <goal>verify</goal>
161             </goals>
162             <configuration>
163               <argLine>${failsafeArgLine}</argLine>
164             </configuration>
165           </execution>
166         </executions>
167       </plugin>
168       <plugin>
169         <artifactId>maven-antrun-plugin</artifactId>
170         <executions>
171           <execution>
172             <id>prep-jacoco-agent</id>
173             <phase>pre-integration-test</phase>
174             <goals>
175               <goal>run</goal>
176             </goals>
177             <configuration>
178               <target>
179                 <copy file="${settings.localRepository}/org/jacoco/org.jacoco.agent/${jacoco.version}/org.jacoco.agent-${jacoco.version}-runtime.jar"
180                       tofile="target/pax/jars/org.jacoco.agent.jar" />
181                 <copy todir="target/generated-sources/dependency" overwrite="true">
182                   <fileset dir="../../neutron-spi/src/main/java" casesensitive="yes" />
183                   <fileset dir="../../northbound-api/src/main/java" casesensitive="yes" />
184                   <fileset dir="../../transcriber/src/main/java" casesensitive="yes" />
185                 </copy>
186               </target>
187             </configuration>
188           </execution>
189           <execution>
190             <id>copyout-coverage-file</id>
191             <phase>post-integration-test</phase>
192             <goals>
193               <goal>run</goal>
194             </goals>
195             <configuration>
196               <target>
197                 <copy todir="${project.basedir}/target" flatten="true" overwrite="true">
198                   <fileset dir="target/pax" casesensitive="yes">
199                     <include name="**/jacoco-it.exec" />
200                   </fileset>
201                 </copy>
202               </target>
203             </configuration>
204           </execution>
205           <execution>
206             <id>remove-generated-sources</id>
207             <phase>verify</phase>
208             <goals>
209               <goal>run</goal>
210             </goals>
211             <configuration>
212               <target>
213                 <delete includeEmptyDirs="true">
214                   <fileset dir="target/generated-sources/dependency" includes="**/*" defaultexcludes="no"/>
215                 </delete>
216               </target>
217             </configuration>
218           </execution>
219         </executions>
220       </plugin>
221       <plugin>
222         <groupId>org.jacoco</groupId>
223         <artifactId>jacoco-maven-plugin</artifactId>
224         <executions>
225           <execution>
226             <id>post-integration-test</id>
227             <phase>post-integration-test</phase>
228             <goals>
229               <goal>report-integration</goal>
230             </goals>
231             <configuration>
232               <dataFile>${sonar.jacoco.itReportPath}</dataFile>
233               <outputDirectory>${project.basedir}/target/site/jacoco-it</outputDirectory>
234             </configuration>
235           </execution>
236         </executions>
237       </plugin>
238     </plugins>
239   </build>
240   <scm>
241     <connection>scm:git:ssh://git.opendaylight.org:29418/neutron.git</connection>
242     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/neutron.git</developerConnection>
243     <tag>HEAD</tag>
244     <url>https://wiki.opendaylight.org/view/NeutronNorthBound:Main</url>
245   </scm>
246
247   <!--
248       Maven Site Configuration
249
250       The following configuration is necessary for maven-site-plugin to
251       correctly identify the correct deployment path for OpenDaylight Maven
252       sites.
253   -->
254   <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
255
256   <distributionManagement>
257     <site>
258       <id>opendaylight-site</id>
259       <url>${nexus.site.url}/${project.artifactId}/</url>
260     </site>
261   </distributionManagement>
262 </project>