Moved IT code to separate project, Fix for Bug 184, created test-jar
[controller.git] / opendaylight / md-sal / pom.xml
index 478bba81c7175dce24261f38f0e354d487957aa6..0e78598c1137a339c7368be40b0b7a7e39427b9a 100644 (file)
 
         <!-- Binding Aware -->
         <module>sal-binding-api</module>
+        <module>sal-binding-config</module>
         <module>sal-binding-broker</module>
-        <module>sal-binding-it</module>
+
+        <module>sal-binding-util</module>
+        <module>sal-binding-dom-it</module>
 
         <!-- Samples -->
         <module>samples</module>
         <!-- Base Models -->
         <module>model</module>
 
-        <!-- Compability Packages -->
-        <module>sal-compability</module>
 
         <!-- Connectors -->
         <module>sal-connector-api</module>
         <module>sal-rest-connector</module>
-        <module>flow-management-compatibility</module>
+        <module>sal-netconf-connector</module>
+        
+        <!-- Clustered Data Store -->
+        <module>clustered-data-store/implementation</module>
+
+        <module>inventory-manager</module>
+        <module>statistics-manager</module>
+        <module>forwardingrules-manager</module>
+        
+        <!-- Compability Packages -->
+        <module>compatibility</module>
+        <module>zeromq-routingtable/implementation</module>
+        <module>sal-zeromq-connector</module>
     </modules>
 
+
+    <profiles>
+        <profile>
+           <id>integrationtests</id>
+           <activation>
+               <activeByDefault>false</activeByDefault>
+           </activation>
+            <modules>
+                <module>sal-binding-it</module>
+                <module>zeromq-routingtable/integrationtest</module>
+                <module>clustered-data-store/integrationtest</module>
+                <module>test</module>
+            </modules>
+        </profile>
+        <profile>
+          <id>IDE</id>
+          <activation>
+            <property>
+              <name>m2e.version</name>
+            </property>
+          </activation>
+          <build>
+            <!-- Put the IDE's build output in a folder other than target, so that IDE builds don't interact with Maven builds -->
+            <directory>target-ide</directory>
+          </build>
+        </profile>
+    </profiles>
+
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
         <osgi.core.version>5.0.0</osgi.core.version>
         <junit.version>4.8.1</junit.version>
         <xtend.version>2.4.3</xtend.version>
+        <maven.clean.plugin.version>2.5</maven.clean.plugin.version>
+        <jacoco.version>0.5.3.201107060350</jacoco.version>
+        <!-- Sonar properties using jacoco to retrieve integration test results -->
+        <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
+        <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
+        <sonar.jacoco.Reportpath>target/jacoco.exec</sonar.jacoco.Reportpath>
+        <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
+        <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
+        <sonar.branch>${user.name}-private-view</sonar.branch>
+        <sonar.language>java</sonar.language>
     </properties>
 
     <pluginRepositories>
+        <!-- OpenDayLight Repo Mirror -->
         <pluginRepository>
-            <id>central</id>
-            <name>maven repo1</name>
-            <url>http://repo1.maven.org/maven2</url>
-            <snapshots>
-                <enabled>false</enabled>
-            </snapshots>
-            <releases>
-                <enabled>true</enabled>
-            </releases>
-        </pluginRepository>
-        <pluginRepository>
-            <id>opendaylight-snapshot</id>
-            <name>opendaylight-snapshot</name>
-            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
+          <id>opendaylight-mirror</id>
+          <name>opendaylight-mirror</name>
+          <url>${nexusproxy}/groups/public/</url>
+          <snapshots>
+              <enabled>false</enabled>
+          </snapshots>
+          <releases>
+              <enabled>true</enabled>
+              <updatePolicy>never</updatePolicy>
+          </releases>
         </pluginRepository>
+        <!-- OpenDayLight Snapshot artifact -->
         <pluginRepository>
-            <id>opendaylight.release</id>
-            <name>opendaylight.release</name>
-            <url>${nexusproxy}/repositories/opendaylight.release/</url>
+          <id>opendaylight-snapshot</id>
+          <name>opendaylight-snapshot</name>
+          <url> ${nexusproxy}/repositories/opendaylight.snapshot/</url>
+          <snapshots>
+              <enabled>true</enabled>
+          </snapshots>
+          <releases>
+              <enabled>false</enabled>
+          </releases>
         </pluginRepository>
     </pluginRepositories>
 
 
     <repositories>
+        <!-- OpenDayLight Repo Mirror -->
         <repository>
-            <id>opendaylight-release</id>
-            <name>opendaylight-release</name>
-            <url>${nexusproxy}/repositories/opendaylight.release/</url>
+          <id>opendaylight-mirror</id>
+          <name>opendaylight-mirror</name>
+          <url>${nexusproxy}/groups/public/</url>
+          <snapshots>
+              <enabled>false</enabled>
+          </snapshots>
+          <releases>
+              <enabled>true</enabled>
+              <updatePolicy>never</updatePolicy>
+          </releases>
         </repository>
         <!-- OpenDayLight Snapshot artifact -->
         <repository>
-            <id>opendaylight-snapshot</id>
-            <name>opendaylight-snapshot</name>
-            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
-        </repository>
-        <repository>
-            <id>thirdparty</id>
-            <name>thirdparty</name>
-            <url>${nexusproxy}/repositories/thirdparty/</url>
-        </repository>
-        <repository>
-            <id>central</id>
-            <name>central</name>
-            <url>http://repo1.maven.org/maven2</url>
-            <snapshots>
-                <enabled>false</enabled>
-            </snapshots>
-            <releases>
-                <enabled>true</enabled>
-            </releases>
+          <id>opendaylight-snapshot</id>
+          <name>opendaylight-snapshot</name>
+          <url> ${nexusproxy}/repositories/opendaylight.snapshot/</url>
+          <snapshots>
+              <enabled>true</enabled>
+          </snapshots>
+          <releases>
+              <enabled>false</enabled>
+          </releases>
         </repository>
     </repositories>
 
 
     <dependencyManagement>
         <dependencies>
-
-
-
+            <dependency>
+                <groupId>xml-apis</groupId>
+                <artifactId>xml-apis</artifactId>
+                <version>1.4.01</version>
+            </dependency>
 
             <!-- YANG Tools Dependencies -->
             <dependency>
                 </plugin>
                 <plugin>
                     <artifactId>maven-clean-plugin</artifactId>
+                    <version>${maven.clean.plugin.version}</version>
                     <configuration>
                         <filesets>
                             <fileset>
                         </filesets>
                     </configuration>
                 </plugin>
+                <plugin>
+                    <groupId>org.jacoco</groupId>
+                    <artifactId>jacoco-maven-plugin</artifactId>
+                    <version>${jacoco.version}</version>
+                </plugin>
+                <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
+                <plugin>
+                    <groupId>org.eclipse.m2e</groupId>
+                    <artifactId>lifecycle-mapping</artifactId>
+                    <version>1.0.0</version>
+                    <configuration>
+                        <lifecycleMappingMetadata>
+                            <pluginExecutions>
+                                <pluginExecution>
+                                    <pluginExecutionFilter>
+                                        <groupId>org.opendaylight.yangtools</groupId>
+                                        <artifactId>yang-maven-plugin</artifactId>
+                                        <versionRange>[0,)</versionRange>
+                                        <goals>
+                                            <goal>generate-sources</goal>
+                                        </goals>
+                                    </pluginExecutionFilter>
+                                    <action>
+                                        <ignore/>
+                                    </action>
+                                </pluginExecution>
+                                <pluginExecution>
+                                    <pluginExecutionFilter>
+                                        <groupId>net.alchim31.maven</groupId>
+                                        <artifactId>scala-maven-plugin</artifactId>
+                                        <versionRange>[0,)</versionRange>
+                                        <goals>
+                                            <goal>compile</goal>
+                                            <goal>testCompile</goal>
+                                        </goals>
+                                    </pluginExecutionFilter>
+                                    <action>
+                                      <ignore/>
+                                    </action>
+                                </pluginExecution>
+                                <pluginExecution>
+                                    <pluginExecutionFilter>
+                                        <groupId>org.jacoco</groupId>
+                                        <artifactId>jacoco-maven-plugin</artifactId>
+                                        <versionRange>[0,)</versionRange>
+                                        <goals>
+                                            <goal>prepare-agent</goal>
+                                        </goals>
+                                    </pluginExecutionFilter>
+                                    <action>
+                                        <ignore/>
+                                    </action>
+                                </pluginExecution>
+                            </pluginExecutions>
+                        </lifecycleMappingMetadata>
+                    </configuration>
+                </plugin>
             </plugins>
+
         </pluginManagement>
         <plugins>
             <plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-jar-plugin</artifactId>
+                <version>2.4</version>
             </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>