Configure git access for SCM and release plug-ins
[aquarium] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ Copyright 2011 GRNET S.A. All rights reserved.
4   ~
5   ~ Redistribution and use in source and binary forms, with or
6   ~ without modification, are permitted provided that the following
7   ~ conditions are met:
8   ~
9   ~   1. Redistributions of source code must retain the above
10   ~      copyright notice, this list of conditions and the following
11   ~      disclaimer.
12   ~
13   ~   2. Redistributions in binary form must reproduce the above
14   ~      copyright notice, this list of conditions and the following
15   ~      disclaimer in the documentation and/or other materials
16   ~      provided with the distribution.
17   ~
18   ~ THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
19   ~ OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20   ~ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21   ~ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
22   ~ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23   ~ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24   ~ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
25   ~ USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
26   ~ AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27   ~ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28   ~ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29   ~ POSSIBILITY OF SUCH DAMAGE.
30   ~
31   ~ The views and conclusions contained in the software and
32   ~ documentation are those of the authors and should not be
33   ~ interpreted as representing official policies, either expressed
34   ~ or implied, of GRNET S.A.
35   -->
36
37 <project xmlns="http://maven.apache.org/POM/4.0.0"
38          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
39          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
40
41
42   <modelVersion>4.0.0</modelVersion>
43   <groupId>gr.grnet</groupId>
44   <artifactId>aquarium</artifactId>
45   <version>0.0.1-SNAPSHOT</version>
46   <packaging>pom</packaging>
47
48   <!-- Project details-->
49   <name>Aquarium</name>
50   <description>
51     Account handling, sharing and charging services for the Okeanos cloud
52   </description>
53   <url>http://code.grnet.gr/projects/aquarium</url>
54   <inceptionYear>2011</inceptionYear>
55   <organization>
56     <name>GRNet</name>
57     <url>http://www.grnet.gr/</url>
58   </organization>
59
60   <developers>
61     <developer>
62       <id>gousiosg</id>
63       <name>Georgios Gousios</name>
64       <email>gousiosg@grnet.gr</email>
65     </developer>
66   </developers>
67
68   <scm>
69     <url>http://code.grnet.gr/projects/aquarium/repository</url>
70     <connection>scm:git:https://code.grnet.gr/git/aquarium</connection>
71     <developerConnection>scm:git:https://code.grnet.gr/git/aquarium</developerConnection>
72   </scm>
73
74   <issueManagement>
75     <system>redmine</system>
76     <url>http://code.grnet.gr/projects/aquarium/issues</url>
77   </issueManagement>
78
79   <distributionManagement>
80     <repository>
81       <id>aq-release</id>
82       <name>Aquarium releases repo</name>
83       <url>http://aquarium.dev.grnet.gr:8081/nexus/content/repositories/releases</url>
84     </repository>
85     <snapshotRepository>
86       <id>aq-snapshot</id>
87       <name>Aquarium snapshots repo</name>
88       <url>http://aquarium.dev.grnet.gr:8081/nexus/content/repositories/snapshots</url>
89     </snapshotRepository>
90   </distributionManagement>
91
92   <!--Common project settings-->
93   <properties>
94     <scala.version>2.9.1</scala.version>
95     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
96     <project.reporting.outputEncoding>${project.build.sourceEncoding}
97     </project.reporting.outputEncoding>
98   </properties>
99
100   <!-- Lib and plugin repositories -->
101   <repositories>
102     <repository>
103       <id>scala-tools.releases</id>
104       <name>Scala-Tools Dependencies Repository for Releases</name>
105       <url>http://scala-tools.org/repo-releases</url>
106     </repository>
107     <repository>
108       <id>java.net.maven2</id>
109       <name>java.net Maven2 Repository</name>
110       <url>http://download.java.net/maven/2/</url>
111     </repository>
112     <repository>
113       <id>EclipseLink Repo</id>
114       <url>http://www.eclipse.org/downloads/download.php?r=1&amp;nf=1&amp;file=/rt/eclipselink/maven.repo</url>
115     </repository>
116     <repository>
117       <name>JBoss</name>
118       <id>jboss</id>
119       <url>http://repository.jboss.org/nexus/content/groups/public/</url>
120     </repository>
121   </repositories>
122
123   <pluginRepositories>
124     <pluginRepository>
125       <id>scala-tools.releases</id>
126       <name>Scala-Tools Plugins Repository for Releases</name>
127       <url>http://scala-tools.org/repo-releases</url>
128     </pluginRepository>
129   </pluginRepositories>
130
131   <!-- Master properties (inherited by modules) -->
132   <dependencies>
133     <dependency>
134       <groupId>org.scala-lang</groupId>
135       <artifactId>scala-library</artifactId>
136       <version>${scala.version}</version>
137     </dependency>
138     <dependency>
139       <groupId>org.slf4j</groupId>
140       <artifactId>slf4j-api</artifactId>
141       <version>1.6.1</version>
142     </dependency>
143     <dependency>
144       <groupId>org.scala-lang</groupId>
145       <artifactId>scala-compiler</artifactId>
146       <version>${scala.version}</version>
147       <scope>test</scope>
148     </dependency>
149     <dependency>
150       <groupId>junit</groupId>
151       <artifactId>junit</artifactId>
152       <version>4.7</version>
153       <scope>test</scope>
154     </dependency>
155     <dependency>
156       <groupId>com.h2database</groupId>
157       <artifactId>h2</artifactId>
158       <version>1.3.160</version>
159     </dependency>
160     <dependency>
161       <groupId>mysql</groupId>
162       <artifactId>mysql-connector-java</artifactId>
163       <version>5.1.17</version>
164     </dependency>
165     <dependency>
166       <groupId>org.scala-libs</groupId>
167       <artifactId>scalajpa_2.9.1</artifactId>
168       <version>1.4</version>
169     </dependency>
170     <dependency>
171       <groupId>org.eclipse.persistence</groupId>
172       <artifactId>eclipselink</artifactId>
173       <version>2.2.0</version>
174     </dependency>
175     <!--<dependency>
176       <groupId>org.hibernate</groupId>
177       <artifactId>hibernate-entitymanager</artifactId>
178       <version>3.6.7.Final</version>
179     </dependency>-->
180     <!--<dependency>
181       <groupId>org.apache.openjpa</groupId>
182       <artifactId>openjpa-all</artifactId>
183       <version>2.1.1</version>
184     </dependency>-->
185     <dependency>
186       <groupId>org.slf4j</groupId>
187       <artifactId>slf4j-log4j12</artifactId>
188       <version>1.6.3</version>
189     </dependency>
190   </dependencies>
191
192   <!--Configuration shared with subprojects-->
193   <build>
194     <sourceDirectory>src/main/scala</sourceDirectory>
195     <testSourceDirectory>src/test/scala</testSourceDirectory>
196     <resources>
197       <resource>
198         <directory>${basedir}/src/main/resources</directory>
199       </resource>
200       <resource>
201         <directory>${project.build.directory}/generated-resources</directory>
202         <filtering>true</filtering>
203       </resource>
204     </resources>
205     <testResources>
206       <testResource>
207         <directory>${basedir}/src/test/resources</directory>
208       </testResource>
209       <testResource>
210         <directory>${project.build.directory}/generated-resources</directory>
211         <filtering>true</filtering>
212       </testResource>
213     </testResources>
214     <plugins>
215       <plugin>
216         <groupId>org.scala-tools</groupId>
217         <artifactId>maven-scala-plugin</artifactId>
218         <version>2.15.2</version>
219         <configuration>
220           <charset>${project.build.sourceEncoding}</charset>
221           <jvmArgs>
222             <jvmArg>-Xmx1024m</jvmArg>
223             <jvmArg>
224               -DpackageLinkDefs=file://${project.build.directory}/packageLinkDefs.properties
225             </jvmArg>
226           </jvmArgs>
227           <args>
228             <arg>-deprecation</arg>
229           </args>
230         </configuration>
231         <executions>
232           <execution>
233             <goals>
234               <goal>compile</goal>
235               <goal>testCompile</goal>
236             </goals>
237           </execution>
238         </executions>
239       </plugin>
240       <plugin>
241         <groupId>org.apache.maven.plugins</groupId>
242         <artifactId>maven-resources-plugin</artifactId>
243         <version>2.5</version>
244         <executions>
245           <execution>
246             <id>default-copy-resources</id>
247             <phase>process-resources</phase>
248             <goals>
249               <goal>copy-resources</goal>
250             </goals>
251             <configuration>
252               <overwrite>true</overwrite>
253               <outputDirectory>${project.build.directory}</outputDirectory>
254               <resources>
255                 <resource>
256                   <directory>${project.basedir}/src</directory>
257                   <includes>
258                     <include>packageLinkDefs.properties</include>
259                   </includes>
260                   <filtering>true</filtering>
261                 </resource>
262               </resources>
263             </configuration>
264           </execution>
265         </executions>
266       </plugin>
267       <plugin>
268         <groupId>org.apache.maven.plugins</groupId>
269         <artifactId>maven-release-plugin</artifactId>
270         <version>2.2.1</version>
271         <configuration>
272           <scmCommentPrefix/>
273         </configuration>
274       </plugin>
275       <!-- Redmine maven plugin -->
276       <plugin>
277         <groupId>org.nuiton.jredmine</groupId>
278         <artifactId>maven-jredmine-plugin</artifactId>
279         <version>1.2.2</version>
280       </plugin>
281       <!-- Produces configuration files for Intellij Idea -->
282       <plugin>
283         <groupId>org.apache.maven.plugins</groupId>
284         <artifactId>maven-idea-plugin</artifactId>
285         <version>2.2</version>
286         <configuration>
287           <downloadSources>true</downloadSources>
288           <downloadJavadocs>true</downloadJavadocs>
289         </configuration>
290       </plugin>
291       <!-- Make sure tests display failures at the console-->
292       <plugin>
293         <groupId>org.apache.maven.plugins</groupId>
294         <artifactId>maven-surefire-plugin</artifactId>
295         <version>2.9</version>
296         <configuration>
297           <useFile>false</useFile>
298           <reportFormat>plain</reportFormat>
299         </configuration>
300       </plugin>
301       <!-- Shared resources -->
302       <plugin>
303         <groupId>org.apache.maven.plugins</groupId>
304         <artifactId>maven-dependency-plugin</artifactId>
305         <executions>
306           <execution>
307             <id>unpack-shared-resources</id>
308             <goals>
309               <goal>unpack-dependencies</goal>
310             </goals>
311             <phase>generate-resources</phase>
312             <configuration>
313               <outputDirectory>${project.build.directory}/generated-resources
314               </outputDirectory>
315               <includeArtifactIds>shared</includeArtifactIds>
316               <includeGroupIds>gr.grnet.aquarium</includeGroupIds>
317               <excludeTransitive>true</excludeTransitive>
318             </configuration>
319           </execution>
320         </executions>
321       </plugin>
322       <!-- Bundle up source code on release/snapshot -->
323       <plugin>
324         <groupId>org.apache.maven.plugins</groupId>
325         <artifactId>maven-source-plugin</artifactId>
326         <version>2.1.2</version>
327         <executions>
328           <execution>
329             <id>attach-sources</id>
330             <goals>
331               <goal>jar-no-fork</goal>
332             </goals>
333           </execution>
334         </executions>
335       </plugin>
336       <!-- Release plug-in configuration -->
337       <plugin>
338         <groupId>org.apache.maven.plugins</groupId>
339         <artifactId>maven-release-plugin</artifactId>
340         <version>2.2.1</version>
341         <configuration>
342           <preparationGoals>clean verify</preparationGoals>
343         </configuration>
344       </plugin>
345     </plugins>
346   </build>
347   <!--Sub projects-->
348   <modules>
349     <module>model</module>
350     <module>logic</module>
351     <module>shared</module>
352   </modules>
353 </project>