Add cluster scripts to ONAP distribution
[integration/distribution.git] / onap-karaf / 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
4     <parent>
5         <groupId>org.opendaylight.odlparent</groupId>
6         <artifactId>karaf4-parent</artifactId>
7         <version>7.0.1</version>
8         <relativePath/>
9     </parent>
10
11     <groupId>org.opendaylight.integration</groupId>
12     <artifactId>onap-karaf</artifactId>
13     <version>0.13.0-SNAPSHOT</version>
14     <packaging>pom</packaging>
15     <name>ODL :: integration :: ${project.artifactId}</name>
16     <modelVersion>4.0.0</modelVersion>
17
18     <description>The ONAP Karaf distribution.</description>
19     <url>https://wiki.opendaylight.org/view/Integration/Distribution</url>
20     <licenses>
21         <license>
22             <name>Eclipse Public License v1.0</name>
23             <url>http://www.eclipse.org/legal/epl-v10.html</url>
24         </license>
25     </licenses>
26
27     <properties>
28         <karaf.archiveZip>false</karaf.archiveZip>
29         <karaf.archiveTarGz>true</karaf.archiveTarGz>
30     </properties>
31
32     <dependencyManagement>
33         <dependencies>
34             <dependency>
35                 <groupId>org.opendaylight.integration</groupId>
36                 <artifactId>all-artifacts</artifactId>
37                 <version>${project.version}</version>
38                 <scope>import</scope>
39                 <type>pom</type>
40             </dependency>
41         </dependencies>
42     </dependencyManagement>
43
44     <dependencies>
45
46         <!-- AAA -->
47         <dependency>
48             <groupId>org.opendaylight.aaa</groupId>
49             <artifactId>features-aaa</artifactId>
50             <classifier>features</classifier>
51             <type>xml</type>
52             <scope>runtime</scope>
53         </dependency>
54
55         <!-- Controller -->
56         <dependency>
57             <groupId>org.opendaylight.controller</groupId>
58             <artifactId>features-controller</artifactId>
59             <classifier>features</classifier>
60             <type>xml</type>
61             <scope>runtime</scope>
62         </dependency>
63         <dependency>
64             <groupId>org.opendaylight.controller</groupId>
65             <artifactId>features-controller-experimental</artifactId>
66             <classifier>features</classifier>
67             <type>xml</type>
68             <scope>runtime</scope>
69         </dependency>
70
71         <!-- Daexim -->
72         <dependency>
73             <groupId>org.opendaylight.daexim</groupId>
74             <artifactId>daexim-features</artifactId>
75             <classifier>features</classifier>
76             <type>xml</type>
77             <scope>runtime</scope>
78         </dependency>
79
80         <!-- MD-SAL -->
81         <dependency>
82             <groupId>org.opendaylight.mdsal</groupId>
83             <artifactId>features-mdsal</artifactId>
84             <classifier>features</classifier>
85             <type>xml</type>
86             <scope>runtime</scope>
87         </dependency>
88
89         <!-- MD-SAL Trace -->
90         <!-- FIXME: remove this with mdsal-6.0.1+ -->
91         <dependency>
92             <groupId>org.opendaylight.mdsal</groupId>
93             <artifactId>odl-mdsal-trace</artifactId>
94             <classifier>features</classifier>
95             <type>xml</type>
96             <scope>runtime</scope>
97         </dependency>
98
99         <!-- Netconf -->
100         <dependency>
101             <groupId>org.opendaylight.netconf</groupId>
102             <artifactId>features-netconf</artifactId>
103             <classifier>features</classifier>
104             <type>xml</type>
105             <scope>runtime</scope>
106         </dependency>
107         <dependency>
108             <groupId>org.opendaylight.netconf</groupId>
109             <artifactId>features-netconf-connector</artifactId>
110             <classifier>features</classifier>
111             <type>xml</type>
112             <scope>runtime</scope>
113         </dependency>
114         <dependency>
115             <groupId>org.opendaylight.netconf</groupId>
116             <artifactId>features-restconf</artifactId>
117             <classifier>features</classifier>
118             <type>xml</type>
119             <scope>runtime</scope>
120         </dependency>
121         <dependency>
122             <groupId>org.opendaylight.netconf</groupId>
123             <artifactId>features-yanglib</artifactId>
124             <classifier>features</classifier>
125             <type>xml</type>
126             <scope>runtime</scope>
127         </dependency>
128
129         <!--ODL Parent-->
130         <dependency>
131             <groupId>org.opendaylight.odlparent</groupId>
132             <artifactId>features-odlparent</artifactId>
133             <classifier>features</classifier>
134             <type>xml</type>
135             <scope>runtime</scope>
136         </dependency>
137
138         <dependency>
139             <groupId>org.opendaylight.aaa</groupId>
140             <artifactId>aaa-cli-jar</artifactId>
141             <!-- This scope test here is just a trick, so that we can use aaa-cli-jar in maven-dependency-plugin, but don't have karaf-maven-plugin choke on it -->
142             <scope>test</scope>
143         </dependency>
144         <dependency>
145             <groupId>org.opendaylight.integration</groupId>
146             <artifactId>karaf-scripts</artifactId>
147             <version>${project.version}</version>
148             <scope>test</scope>
149         </dependency>
150
151     </dependencies>
152
153     <build>
154         <plugins>
155             <plugin>
156                 <groupId>org.apache.maven.plugins</groupId>
157                 <artifactId>maven-dependency-plugin</artifactId>
158                 <executions>
159                     <execution>
160                         <id>copy-aaa-cli-jar</id>
161                         <phase>prepare-package</phase>
162                         <goals>
163                             <goal>copy-dependencies</goal>
164                         </goals>
165                         <configuration>
166                             <outputDirectory>${project.build.directory}/assembly/bin</outputDirectory>
167                             <includeArtifactIds>aaa-cli-jar</includeArtifactIds>
168                             <overWriteReleases>true</overWriteReleases>
169                             <overWriteSnapshots>true</overWriteSnapshots>
170                             <overWriteIfNewer>true</overWriteIfNewer>
171                             <excludeTransitive>true</excludeTransitive>
172                             <!-- Do not include version in JAR filename, as external scripts call this utility,
173                                  and they understandly do not want to have to adjust for every ODL release;
174                                  see e.g. https://github.com/dfarrell07/puppet-opendaylight/pull/140 -->
175                             <stripVersion>true</stripVersion>
176                         </configuration>
177                     </execution>
178                     <execution>
179                         <id>unpack-odl-karaf-resources</id>
180                         <goals>
181                             <goal>unpack-dependencies</goal>
182                         </goals>
183                         <phase>prepare-package</phase>
184                         <configuration>
185                             <outputDirectory>${project.build.directory}/assembly</outputDirectory>
186                             <groupId>org.opendaylight.integration</groupId>
187                             <includeArtifactIds>karaf-scripts</includeArtifactIds>
188                             <excludes>META-INF\/**</excludes>
189                             <excludeTransitive>true</excludeTransitive>
190                             <ignorePermissions>false</ignorePermissions>
191                         </configuration>
192                     </execution>
193                 </executions>
194             </plugin>
195         </plugins>
196     </build>
197
198 </project>
199