Freeze upstream versions
[netvirt.git] / karaf / pom.xml
index a69df5530677a3e38d50107db232b38d9f3dd702..d3f3eacfd5e644627af6485548c5e7d03147e503 100644 (file)
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-Copyright (C) 2015 Red Hat, Inc. and others. All rights reserved.
+Copyright (c) 2015 Ericsson India Global Services Pvt Ltd. and others.  All rights reserved.
 
 This program and the accompanying materials are made available under the
 terms of the Eclipse Public License v1.0 which accompanies this distribution,
-and is available at http://www.eclipse.org/legal/epl-v10.html
+and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
 -->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.opendaylight.controller</groupId>
-    <artifactId>karaf-parent</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-    <relativePath/>
-  </parent>
+<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">
+
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>karaf4-parent</artifactId>
+        <version>8.1.1</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.opendaylight.netvirt</groupId>
+    <artifactId>karaf</artifactId>
+    <version>0.12.0-SNAPSHOT</version>
+    <name>ODL :: netvirt :: ${project.artifactId}</name>
+    <modelVersion>4.0.0</modelVersion>
+
+    <properties>
+        <!-- <karaf.localFeature>odl-netvirt-openstack</karaf.localFeature> -->
+        <maven.deploy.skip>true</maven.deploy.skip>
+        <maven.install.skip>true</maven.install.skip>
+    </properties>
 
-  <groupId>org.opendaylight.netvirt</groupId>
-  <artifactId>karaf</artifactId>
-  <version>1.3.0-SNAPSHOT</version>
-  <name>${project.artifactId}</name>
-  <prerequisites>
-    <maven>3.1.1</maven>
-  </prerequisites>
-  <properties>
-    <!-- uncomment the next line if you want karaf to automatically load the feature -->
-    <!-- <karaf.localFeature>odl-ovsdb-openstack</karaf.localFeature> -->
-  </properties>
-  <description>The OVSDB Plugin integration project is a project for OpenDaylight that will implement the Open vSwitch Database RFC 7047 management protocol allowing the Southbound configuration of vSwitches and a network virtualization implementation.</description>
-  <licenses>
-    <license>
-      <name>Eclipse Public License v1.0</name>
-      <url>http://www.eclipse.org/legal/epl-v10.html</url>
-    </license>
-  </licenses>
-  <developers>
-    <developer>
-      <name>Sam Hague</name>
-      <email>shague@gmail.com</email>
-      <url>https://github.com/shague</url>
-    </developer>
-  </developers>
-  <scm>
-    <connection>scm:git:ssh://git.opendaylight.org:29418/netvirt.git</connection>
-    <developerConnection>scm:git:ssh://git.opendaylight.org:29418/netvirt.git</developerConnection>
-    <tag>HEAD</tag>
-    <url>https://wiki.opendaylight.org/view/OVSDB_Integration:Main</url>
-  </scm>
-  <dependencyManagement>
     <dependencies>
-      <dependency>
-        <groupId>${project.groupId}</groupId>
-        <artifactId>netvirt-artifacts</artifactId>
-        <version>${project.version}</version>
-        <type>pom</type>
-        <scope>import</scope>
-      </dependency>
-    </dependencies>
-  </dependencyManagement>
-  <dependencies>
-    <dependency>
-      <!-- scope is compile so all features (there is only one) are installed
-      into startup.properties and the feature repo itself is not installed -->
-      <groupId>org.apache.karaf.features</groupId>
-      <artifactId>framework</artifactId>
-      <type>kar</type>
-    </dependency>
+        <dependency>
+            <!-- scope is compile so all features (there is only one) are installed
+            into startup.properties and the feature repo itself is not installed -->
+            <groupId>org.apache.karaf.features</groupId>
+            <artifactId>framework</artifactId>
+            <version>${karaf.version}</version>
+            <type>kar</type>
+            <scope>compile</scope>
+        </dependency>
 
-    <dependency>
-      <groupId>${project.groupId}</groupId>
-      <artifactId>features-netvirt</artifactId>
-      <version>${project.version}</version>
-      <classifier>features</classifier>
-      <type>xml</type>
-      <scope>runtime</scope>
-    </dependency>
-  </dependencies>
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>netvirt-features</artifactId>
+            <version>${project.version}</version>
+            <classifier>features</classifier>
+            <type>xml</type>
+            <scope>runtime</scope>
+        </dependency>
 
-  <build>
-    <plugins>
-      <!-- DO NOT deploy the karaf artifact -->
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-deploy-plugin</artifactId>
-        <configuration>
-          <skip>true</skip>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
+        <dependency>
+            <!-- This is here just so that we have the respective bundles for this development debug feature
+                 in netvirt's Karaf distribution, and it is easy to do "feature:install odl-mdsal-trace" on
+                 test environments to find memory leaks due to non-closed transactions.  This feature is NOT
+                 intended for production, and not installed as a boot feature by default.  (If we do not do
+                 this, then it's quite a pain/complicated to install this feature onto a non-dev environment
+                 on a test server where an ODL binary was installed e.g. from an RPM package, because as is
+                 we currently cannot easily, by a simple CLI command, add additional features from new remote
+                 repos.)
+             -->
+            <groupId>org.opendaylight.mdsal</groupId>
+            <artifactId>odl-mdsal-trace</artifactId>
+            <version>7.0.6</version>
+            <classifier>features</classifier>
+            <type>xml</type>
+            <scope>runtime</scope>
+        </dependency>
 
-  <!--
-      Maven Site Configuration
+        <dependency>
+            <!-- This ensures we have odl-jolokia in the distribution -->
+            <groupId>org.opendaylight.controller</groupId>
+            <artifactId>odl-jolokia</artifactId>
+            <version>3.0.7</version>
+            <type>xml</type>
+            <classifier>features</classifier>
+            <scope>runtime</scope>
+        </dependency>
 
-      The following configuration is necessary for maven-site-plugin to
-      correctly identify the correct deployment path for OpenDaylight Maven
-      sites.
-  -->
-  <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
+        <dependency>
+            <!-- This ensures aaa-cli is available for the copy below -->
+            <groupId>org.opendaylight.aaa</groupId>
+            <artifactId>aaa-cli-jar</artifactId>
+            <version>0.13.2</version>
+            <!-- Use scope test (and not more!) just so we have the dependency for the maven-dependency-plugin below -->
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
 
-  <distributionManagement>
-    <site>
-      <id>opendaylight-site</id>
-      <url>${nexus.site.url}/${project.artifactId}/</url>
-    </site>
-  </distributionManagement>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>copy-aaa-cli-jar</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>copy</goal>
+                        </goals>
+                        <configuration>
+                            <artifactItems>
+                                <artifactItem>
+                                    <groupId>org.opendaylight.aaa</groupId>
+                                    <artifactId>aaa-cli-jar</artifactId>
+                                    <version>0.13.2</version>
+                                </artifactItem>
+                            </artifactItems>
+                            <outputDirectory>${project.build.directory}/assembly/bin</outputDirectory>
+                            <includeArtifactIds>aaa-cli-jar</includeArtifactIds>
+                            <overWriteReleases>true</overWriteReleases>
+                            <overWriteSnapshots>true</overWriteSnapshots>
+                            <overWriteIfNewer>true</overWriteIfNewer>
+                            <excludeTransitive>true</excludeTransitive>
+                            <!-- Do not include version in JAR filename, as external scripts call this utility,
+                                 and they understandly do not want to have to adjust for every ODL release;
+                                 see e.g. https://github.com/dfarrell07/puppet-opendaylight/pull/140 -->
+                            <stripVersion>true</stripVersion>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
 </project>