pom.xml 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Copyright 2016-2017 Steinar Bang -->
  3. <!-- -->
  4. <!-- Licensed under the Apache License, Version 2.0 (the "License"); -->
  5. <!-- you may not use this file except in compliance with the License. -->
  6. <!-- You may obtain a copy of the License at -->
  7. <!-- http://www.apache.org/licenses/LICENSE-2.0 -->
  8. <!-- Unless required by applicable law or agreed to in writing, -->
  9. <!-- software distributed under the License is distributed on an "AS IS" BASIS, -->
  10. <!-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -->
  11. <!-- See the License for the specific language governing permissions and limitations -->
  12. <!-- under the License. -->
  13. <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" xml:space="preserve">
  14. <modelVersion>4.0.0</modelVersion>
  15. <parent>
  16. <artifactId>parent</artifactId>
  17. <groupId>no.priv.bang.ukelonn</groupId>
  18. <version>1.0.0-SNAPSHOT</version>
  19. </parent>
  20. <artifactId>ukelonn.bundle.db.postgresql</artifactId>
  21. <name>Ukelonn webapp PostgreSQL database connection OSGi bundle</name>
  22. <properties>
  23. <Bundle-SymbolicName>no.priv.bang.ukelonn.db.postgresql</Bundle-SymbolicName>
  24. <karaf-feature-name>ukelonn-db-postgresql</karaf-feature-name>
  25. </properties>
  26. <dependencies>
  27. <dependency>
  28. <groupId>no.priv.bang.ukelonn</groupId>
  29. <artifactId>ukelonn.api</artifactId>
  30. <version>${project.version}</version>
  31. <scope>provided</scope>
  32. </dependency>
  33. <dependency>
  34. <groupId>no.priv.bang.ukelonn</groupId>
  35. <artifactId>ukelonn.bundle.db.liquibase</artifactId>
  36. <version>${project.version}</version>
  37. <scope>provided</scope>
  38. </dependency>
  39. <dependency>
  40. <groupId>no.priv.bang.ukelonn</groupId>
  41. <artifactId>ukelonn.api</artifactId>
  42. <version>${project.version}</version>
  43. <type>xml</type>
  44. <classifier>features</classifier>
  45. </dependency>
  46. <dependency>
  47. <groupId>no.priv.bang.ukelonn</groupId>
  48. <artifactId>ukelonn.bundle.db.liquibase</artifactId>
  49. <version>${project.version}</version>
  50. <type>xml</type>
  51. <classifier>features</classifier>
  52. </dependency>
  53. <dependency>
  54. <groupId>org.osgi</groupId>
  55. <artifactId>org.osgi.core</artifactId>
  56. </dependency>
  57. <dependency>
  58. <groupId>org.osgi</groupId>
  59. <artifactId>org.osgi.service.component.annotations</artifactId>
  60. </dependency>
  61. <dependency>
  62. <groupId>org.osgi</groupId>
  63. <artifactId>org.osgi.service.log</artifactId>
  64. </dependency>
  65. <dependency>
  66. <groupId>org.osgi</groupId>
  67. <artifactId>org.osgi.service.jdbc</artifactId>
  68. </dependency>
  69. <dependency>
  70. <groupId>junit</groupId>
  71. <artifactId>junit</artifactId>
  72. </dependency>
  73. <dependency>
  74. <groupId>org.assertj</groupId>
  75. <artifactId>assertj-core</artifactId>
  76. </dependency>
  77. <dependency>
  78. <groupId>org.mockito</groupId>
  79. <artifactId>mockito-core</artifactId>
  80. </dependency>
  81. <dependency>
  82. <groupId>org.ops4j.pax.jdbc</groupId>
  83. <artifactId>pax-jdbc</artifactId>
  84. </dependency>
  85. <dependency>
  86. <groupId>org.liquibase</groupId>
  87. <artifactId>liquibase-core</artifactId>
  88. </dependency>
  89. <dependency>
  90. <groupId>org.postgresql</groupId>
  91. <artifactId>postgresql</artifactId>
  92. <scope>compile</scope>
  93. </dependency>
  94. </dependencies>
  95. <build>
  96. <plugins>
  97. <plugin>
  98. <groupId>org.apache.felix</groupId>
  99. <artifactId>maven-bundle-plugin</artifactId>
  100. <extensions>true</extensions>
  101. <configuration>
  102. <supportedProjectTypes>
  103. <supportedProjectType>jar</supportedProjectType>
  104. <supportedProjectType>bundle</supportedProjectType>
  105. <supportedProjectType>war</supportedProjectType>
  106. </supportedProjectTypes>
  107. <instructions>
  108. <Bundle-SymbolicName>no.priv.bang.ukelonn.db.postgresql</Bundle-SymbolicName>
  109. <Bundle-Version>${project.version}</Bundle-Version>
  110. <Export-Package>!*</Export-Package>
  111. <Provide-Capability>osgi.service;effective:=active;objectClass=no.priv.bang.ukelonn.UkelonnDatabase</Provide-Capability>
  112. <_removeheaders>
  113. Include-Resource,
  114. Private-Package,
  115. Embed-Dependency,
  116. Embed-Transitive
  117. </_removeheaders>
  118. </instructions>
  119. </configuration>
  120. <executions>
  121. <execution>
  122. <id>bundle</id>
  123. <goals>
  124. <goal>bundle</goal>
  125. </goals>
  126. </execution>
  127. </executions>
  128. </plugin>
  129. <plugin>
  130. <groupId>org.apache.maven.plugins</groupId>
  131. <artifactId>maven-surefire-plugin</artifactId>
  132. <configuration>
  133. <systemProperties>
  134. <property>
  135. <name>derby.stream.error.file</name>
  136. <value>target/derby.log</value>
  137. </property>
  138. </systemProperties>
  139. </configuration>
  140. </plugin>
  141. <plugin>
  142. <groupId>org.apache.karaf.tooling</groupId>
  143. <artifactId>karaf-maven-plugin</artifactId>
  144. <configuration>
  145. <primaryFeatureName>${karaf-feature-name}</primaryFeatureName>
  146. </configuration>
  147. </plugin>
  148. <plugin>
  149. <groupId>com.github.cjnygard</groupId>
  150. <artifactId>rest-maven-plugin</artifactId>
  151. <executions>
  152. <execution>
  153. <id>update-bundle</id>
  154. <phase>deploy</phase>
  155. <goals>
  156. <goal>rest-request</goal>
  157. </goals>
  158. <configuration>
  159. <resource>system/console/bundles/${Bundle-SymbolicName}</resource>
  160. <method>POST</method>
  161. <fileset>
  162. <directory>${project.build.directory}</directory>
  163. <includes>
  164. <include>karaf-console-rest-post-update-arguments</include>
  165. </includes>
  166. </fileset>
  167. </configuration>
  168. </execution>
  169. </executions>
  170. </plugin>
  171. </plugins>
  172. </build>
  173. </project>