Merge "Initial clustering feature"
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / 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.controller</groupId>
6     <artifactId>sal-parent</artifactId>
7     <version>1.1-SNAPSHOT</version>
8   </parent>
9   <artifactId>sal-distributed-datastore</artifactId>
10   <packaging>bundle</packaging>
11
12   <dependencies>
13     <dependency>
14       <groupId>com.google.guava</groupId>
15       <artifactId>guava</artifactId>
16     </dependency>
17
18     <dependency>
19       <groupId>com.typesafe.akka</groupId>
20       <artifactId>akka-actor_${scala.version}</artifactId>
21     </dependency>
22
23     <dependency>
24       <groupId>com.typesafe.akka</groupId>
25       <artifactId>akka-cluster_${scala.version}</artifactId>
26     </dependency>
27
28     <dependency>
29       <groupId>com.typesafe.akka</groupId>
30       <artifactId>akka-persistence-experimental_${scala.version}</artifactId>
31     </dependency>
32
33     <dependency>
34       <groupId>com.typesafe.akka</groupId>
35       <artifactId>akka-remote_${scala.version}</artifactId>
36     </dependency>
37
38     <dependency>
39       <groupId>com.typesafe.akka</groupId>
40       <artifactId>akka-testkit_${scala.version}</artifactId>
41     </dependency>
42
43     <dependency>
44       <groupId>com.typesafe.akka</groupId>
45       <artifactId>akka-slf4j_${scala.version}</artifactId>
46     </dependency>
47
48     <dependency>
49       <groupId>com.typesafe.akka</groupId>
50       <artifactId>akka-osgi_${scala.version}</artifactId>
51     </dependency>
52
53     <!-- SAL Dependencies -->
54
55     <dependency>
56       <groupId>org.opendaylight.controller</groupId>
57       <artifactId>config-api</artifactId>
58     </dependency>
59
60     <dependency>
61       <groupId>org.opendaylight.controller</groupId>
62       <artifactId>sal-binding-api</artifactId>
63     </dependency>
64
65     <dependency>
66       <groupId>org.opendaylight.controller</groupId>
67       <artifactId>sal-binding-config</artifactId>
68     </dependency>
69
70       <dependency>
71           <groupId>org.opendaylight.yangtools</groupId>
72           <artifactId>yang-data-api</artifactId>
73       </dependency>
74
75       <dependency>
76       <groupId>org.opendaylight.yangtools</groupId>
77       <artifactId>yang-data-impl</artifactId>
78       </dependency>
79
80     <dependency>
81       <groupId>org.opendaylight.controller</groupId>
82       <artifactId>sal-inmemory-datastore</artifactId>
83       <version>1.1-SNAPSHOT</version>
84     </dependency>
85
86     <dependency>
87       <groupId>org.opendaylight.controller</groupId>
88       <artifactId>sal-common-api</artifactId>
89     </dependency>
90
91     <dependency>
92       <groupId>org.opendaylight.controller</groupId>
93       <artifactId>sal-common-util</artifactId>
94     </dependency>
95
96     <dependency>
97       <groupId>org.opendaylight.controller</groupId>
98       <artifactId>sal-core-spi</artifactId>
99     </dependency>
100
101     <dependency>
102       <groupId>org.opendaylight.yangtools</groupId>
103       <artifactId>concepts</artifactId>
104     </dependency>
105
106     <dependency>
107       <groupId>org.opendaylight.yangtools</groupId>
108       <artifactId>yang-binding</artifactId>
109     </dependency>
110
111     <dependency>
112       <groupId>org.opendaylight.yangtools</groupId>
113       <artifactId>yang-common</artifactId>
114     </dependency>
115
116     <dependency>
117       <groupId>org.opendaylight.yangtools</groupId>
118       <artifactId>yang-data-api</artifactId>
119     </dependency>
120
121     <dependency>
122       <groupId>org.osgi</groupId>
123       <artifactId>org.osgi.core</artifactId>
124     </dependency>
125
126     <dependency>
127       <groupId>org.scala-lang</groupId>
128       <artifactId>scala-library</artifactId>
129     </dependency>
130
131     <dependency>
132         <groupId>org.opendaylight.controller</groupId>
133         <artifactId>sal-clustering-commons</artifactId>
134         <version>1.1-SNAPSHOT</version>
135     </dependency>
136
137     <dependency>
138         <groupId>org.opendaylight.controller</groupId>
139         <artifactId>sal-akka-raft</artifactId>
140         <version>1.1-SNAPSHOT</version>
141     </dependency>
142
143       <dependency>
144           <groupId>com.codahale.metrics</groupId>
145           <artifactId>metrics-core</artifactId>
146       </dependency>
147
148       <dependency>
149           <groupId>com.codahale.metrics</groupId>
150           <artifactId>metrics-graphite</artifactId>
151       </dependency>
152     <!-- Test Dependencies -->
153     <dependency>
154       <groupId>junit</groupId>
155       <artifactId>junit</artifactId>
156       <scope>test</scope>
157     </dependency>
158     <dependency>
159       <groupId>org.mockito</groupId>
160       <artifactId>mockito-all</artifactId>
161       <scope>test</scope>
162     </dependency>
163
164     <dependency>
165       <groupId>org.slf4j</groupId>
166       <artifactId>slf4j-simple</artifactId>
167       <version>${slf4j.version}</version>
168       <scope>test</scope>
169     </dependency>
170
171   </dependencies>
172
173   <build>
174     <plugins>
175
176       <plugin>
177         <groupId>org.apache.felix</groupId>
178         <artifactId>maven-bundle-plugin</artifactId>
179         <extensions>true</extensions>
180         <configuration>
181           <instructions>
182             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
183             <Export-package></Export-package>
184             <Private-Package></Private-Package>
185             <Import-Package>!*snappy;!org.jboss.*;!com.jcraft.*;!*jetty*;!sun.security.*;*</Import-Package>
186             <!--
187             <Embed-Dependency>
188                 sal-clustering-commons;
189                 sal-akka-raft;
190                 *metrics*;
191                 !sal*;
192                 !*config-api*;
193                 !*testkit*;
194                 akka*;
195                 *leveldb*;
196                 *config*;
197                 *hawt*;
198                 *protobuf*;
199                 *netty*;
200                 *uncommons*;
201                 *scala*;
202             </Embed-Dependency>
203             <Embed-Transitive>true</Embed-Transitive>
204             -->
205           </instructions>
206         </configuration>
207       </plugin>
208
209       <plugin>
210         <groupId>org.apache.maven.plugins</groupId>
211         <artifactId>maven-jar-plugin</artifactId>
212         <executions>
213           <execution>
214             <goals>
215               <goal>test-jar</goal>
216             </goals>
217           </execution>
218         </executions>
219       </plugin>
220       <plugin>
221         <groupId>org.jacoco</groupId>
222         <artifactId>jacoco-maven-plugin</artifactId>
223         <configuration>
224           <includes>
225             <include>org.opendaylight.controller.*</include>
226
227           </includes>
228           <excludes>
229               <exclude>org.opendaylight.controller.config.yang.config.*</exclude>
230           </excludes>
231           <check>false</check>
232         </configuration>
233         <executions>
234           <execution>
235             <id>pre-test</id>
236             <goals>
237               <goal>prepare-agent</goal>
238             </goals>
239           </execution>
240           <execution>
241             <id>post-test</id>
242             <goals>
243               <goal>report</goal>
244             </goals>
245             <phase>test</phase>
246           </execution>
247         </executions>
248       </plugin>
249       <plugin>
250         <groupId>org.opendaylight.yangtools</groupId>
251         <artifactId>yang-maven-plugin</artifactId>
252         <executions>
253           <execution>
254             <id>config</id>
255             <goals>
256               <goal>generate-sources</goal>
257             </goals>
258             <configuration>
259               <codeGenerators>
260                 <generator>
261                   <codeGeneratorClass>org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator</codeGeneratorClass>
262                   <outputBaseDir>${jmxGeneratorPath}</outputBaseDir>
263                   <additionalConfiguration>
264                     <namespaceToPackage1>urn:opendaylight:params:xml:ns:yang:controller==org.opendaylight.controller.config.yang</namespaceToPackage1>
265                   </additionalConfiguration>
266                 </generator>
267                 <generator>
268                   <codeGeneratorClass>org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
269                   <outputBaseDir>${salGeneratorPath}</outputBaseDir>
270                 </generator>
271               </codeGenerators>
272               <inspectDependencies>true</inspectDependencies>
273             </configuration>
274           </execution>
275         </executions>
276       </plugin>
277     </plugins>
278   </build>
279   <scm>
280     <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
281     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
282     <tag>HEAD</tag>
283     <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:Architecture:Clustering</url>
284   </scm>
285 </project>