blob: 5377fe11f93e8058b3b3fb324bd2247190f87f12 [file] [log] [blame]
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +01001<?xml version="1.0"?>
2<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
4
5 <modelVersion>4.0.0</modelVersion>
6
7 <groupId>eu.mulk</groupId>
8 <artifactId>mulkcms2</artifactId>
9 <version>0.1.0-SNAPSHOT</version>
10
11 <properties>
12 <maven.compiler.parameters>true</maven.compiler.parameters>
13 <maven.compiler.source>11</maven.compiler.source>
14 <maven.compiler.target>11</maven.compiler.target>
15
16 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
17 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
18
19 <compiler-plugin.version>3.8.1</compiler-plugin.version>
Matthias Andreas Benkardf7bf7c42020-01-28 22:31:12 +010020 <dockerfile-plugin.version>1.4.13</dockerfile-plugin.version>
Matthias Andreas Benkard2710bf32020-01-25 10:48:07 +010021 <quarkus-plugin.version>1.2.0.Final</quarkus-plugin.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010022 <surefire-plugin.version>3.0.0-M4</surefire-plugin.version>
23 <spotless-plugin.version>1.26.1</spotless-plugin.version>
24
Matthias Andreas Benkard2710bf32020-01-25 10:48:07 +010025 <!-- <quarkus.platform.artifact-id>quarkus-universe-bom</quarkus.platform.artifact-id> -->
26 <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010027 <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
Matthias Andreas Benkard2710bf32020-01-25 10:48:07 +010028 <quarkus.platform.version>1.2.0.Final</quarkus.platform.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010029
30 <findbugs-jsr305.version>3.0.2</findbugs-jsr305.version>
Matthias Andreas Benkard6fea8132020-02-08 10:17:38 +010031 <hibernate-types.version>2.9.3</hibernate-types.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010032 <mapstruct.version>1.3.1.Final</mapstruct.version>
Matthias Andreas Benkard2710bf32020-01-25 10:48:07 +010033 <testcontainers.version>1.12.5</testcontainers.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010034 <jakarta-jacc-api.version>1.6.1</jakarta-jacc-api.version>
35 <jna.version>5.5.0</jna.version>
Matthias Andreas Benkard4e29a242020-01-25 05:38:27 +010036 <jsoup.version>1.12.1</jsoup.version>
Matthias Andreas Benkard424e16e2020-02-09 18:29:56 +010037 <flexmark.version>0.60.2</flexmark.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010038 </properties>
39
40 <dependencyManagement>
41 <dependencies>
42
43 <dependency>
44 <groupId>${quarkus.platform.group-id}</groupId>
45 <artifactId>${quarkus.platform.artifact-id}</artifactId>
46 <version>${quarkus.platform.version}</version>
47 <type>pom</type>
48 <scope>import</scope>
49 </dependency>
50
51 <!-- Hibernate PostgreSQL Extra Types -->
52 <dependency>
53 <groupId>com.vladmihalcea</groupId>
54 <artifactId>hibernate-types-52</artifactId>
55 <version>${hibernate-types.version}</version>
56 </dependency>
57
Matthias Andreas Benkard4e29a242020-01-25 05:38:27 +010058 <!-- Jsoup -->
59 <dependency>
60 <groupId>org.jsoup</groupId>
61 <artifactId>jsoup</artifactId>
62 <version>${jsoup.version}</version>
63 </dependency>
64
Matthias Andreas Benkard424e16e2020-02-09 18:29:56 +010065 <!-- FlexMark -->
66 <dependency>
67 <groupId>com.vladsch.flexmark</groupId>
68 <artifactId>flexmark-all</artifactId>
69 <version>${flexmark.version}</version>
70 </dependency>
71
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010072 <!-- JNA -->
73 <dependency>
74 <groupId>net.java.dev.jna</groupId>
75 <artifactId>jna</artifactId>
76 <version>${jna.version}</version>
77 </dependency>
78
79 <!-- JACC -->
80 <dependency>
81 <groupId>jakarta.security.jacc</groupId>
82 <artifactId>jakarta.security.jacc-api</artifactId>
83 <version>${jakarta-jacc-api.version}</version>
84 </dependency>
85
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +010086 <!-- JOSE for Java -->
87 <dependency>
88 <groupId>org.bitbucket.b_c</groupId>
89 <artifactId>jose4j</artifactId>
90 <version>0.7.0</version>
91 </dependency>
92
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010093 <!-- MapStruct -->
94 <dependency>
95 <groupId>org.mapstruct</groupId>
96 <artifactId>mapstruct</artifactId>
97 <version>${mapstruct.version}</version>
98 </dependency>
99 <dependency>
100 <groupId>org.mapstruct</groupId>
101 <artifactId>mapstruct-processor</artifactId>
102 <version>${mapstruct.version}</version>
103 <scope>provided</scope>
104 </dependency>
105
106 <!-- Annotations -->
107 <dependency>
108 <groupId>com.google.code.findbugs</groupId>
109 <artifactId>jsr305</artifactId>
110 <version>${findbugs-jsr305.version}</version>
111 <scope>provided</scope>
112 </dependency>
113
114 <!-- Testing -->
115 <dependency>
116 <groupId>org.testcontainers</groupId>
117 <artifactId>testcontainers</artifactId>
118 <version>${testcontainers.version}</version>
119 <scope>test</scope>
120 </dependency>
121 <dependency>
122 <groupId>org.testcontainers</groupId>
123 <artifactId>postgresql</artifactId>
124 <version>${testcontainers.version}</version>
125 <scope>test</scope>
126 </dependency>
127
128 </dependencies>
129 </dependencyManagement>
130
131 <dependencies>
132
133 <dependency>
134 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100135 <artifactId>quarkus-agroal</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100136 </dependency>
137 <dependency>
138 <groupId>io.quarkus</groupId>
Matthias Andreas Benkardc27d1cb2020-01-26 11:11:24 +0100139 <artifactId>quarkus-elytron-security-properties-file</artifactId>
140 </dependency>
141 <dependency>
142 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100143 <artifactId>quarkus-flyway</artifactId>
144 </dependency>
145 <dependency>
146 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100147 <artifactId>quarkus-hibernate-orm-panache</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100148 </dependency>
149 <dependency>
150 <groupId>io.quarkus</groupId>
151 <artifactId>quarkus-hibernate-validator</artifactId>
152 </dependency>
153 <dependency>
154 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100155 <artifactId>quarkus-jdbc-postgresql</artifactId>
156 </dependency>
157 <dependency>
158 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100159 <artifactId>quarkus-kubernetes</artifactId>
160 </dependency>
161 <dependency>
162 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100163 <artifactId>quarkus-mailer</artifactId>
164 </dependency>
165 <dependency>
166 <groupId>io.quarkus</groupId>
167 <artifactId>quarkus-oidc</artifactId>
168 </dependency>
169 <dependency>
170 <groupId>io.quarkus</groupId>
171 <artifactId>quarkus-resteasy</artifactId>
172 </dependency>
173 <dependency>
174 <groupId>io.quarkus</groupId>
175 <artifactId>quarkus-resteasy-jsonb</artifactId>
176 </dependency>
177 <dependency>
178 <groupId>io.quarkus</groupId>
179 <artifactId>quarkus-resteasy-qute</artifactId>
180 </dependency>
181 <dependency>
182 <groupId>io.quarkus</groupId>
183 <artifactId>quarkus-scheduler</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100184 </dependency>
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +0100185 <dependency>
186 <groupId>io.quarkus</groupId>
187 <artifactId>quarkus-smallrye-jwt</artifactId>
188 </dependency>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100189
190 <!-- JNA -->
191 <dependency>
192 <groupId>net.java.dev.jna</groupId>
193 <artifactId>jna</artifactId>
194 </dependency>
195
196 <!-- JACC -->
197 <dependency>
198 <groupId>jakarta.security.jacc</groupId>
199 <artifactId>jakarta.security.jacc-api</artifactId>
200 </dependency>
201
202 <!-- Hibernate PostgreSQL Extra Types -->
203 <dependency>
204 <groupId>com.vladmihalcea</groupId>
205 <artifactId>hibernate-types-52</artifactId>
206 </dependency>
207
Matthias Andreas Benkard4e29a242020-01-25 05:38:27 +0100208 <!-- Jsoup -->
209 <dependency>
210 <groupId>org.jsoup</groupId>
211 <artifactId>jsoup</artifactId>
212 </dependency>
213
Matthias Andreas Benkard424e16e2020-02-09 18:29:56 +0100214 <!-- FlexMark -->
215 <dependency>
216 <groupId>com.vladsch.flexmark</groupId>
217 <artifactId>flexmark-all</artifactId>
218 </dependency>
219
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +0100220 <!-- JOSE for Java -->
221 <dependency>
222 <groupId>org.bitbucket.b_c</groupId>
223 <artifactId>jose4j</artifactId>
224 </dependency>
225
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100226 <!-- MapStruct -->
227 <dependency>
228 <groupId>org.mapstruct</groupId>
229 <artifactId>mapstruct</artifactId>
230 </dependency>
231 <dependency>
232 <groupId>org.mapstruct</groupId>
233 <artifactId>mapstruct-processor</artifactId>
234 <scope>provided</scope>
235 </dependency>
236
237 <!-- Annotations -->
238 <dependency>
239 <groupId>com.google.code.findbugs</groupId>
240 <artifactId>jsr305</artifactId>
241 <scope>provided</scope>
242 </dependency>
243
244 <!-- Testing -->
245 <dependency>
246 <groupId>io.quarkus</groupId>
247 <artifactId>quarkus-junit5</artifactId>
248 <scope>test</scope>
249 </dependency>
250 <dependency>
251 <groupId>io.rest-assured</groupId>
252 <artifactId>rest-assured</artifactId>
253 <scope>test</scope>
254 </dependency>
255 <dependency>
256 <groupId>org.testcontainers</groupId>
257 <artifactId>junit-jupiter</artifactId>
258 <scope>test</scope>
259 </dependency>
260 <dependency>
261 <groupId>org.testcontainers</groupId>
262 <artifactId>testcontainers</artifactId>
263 <scope>test</scope>
264 </dependency>
265 <dependency>
266 <groupId>org.testcontainers</groupId>
267 <artifactId>postgresql</artifactId>
268 <scope>test</scope>
269 </dependency>
270
271 </dependencies>
272
273 <build>
274
275 <plugins>
276
277 <plugin>
278 <groupId>io.quarkus</groupId>
279 <artifactId>quarkus-maven-plugin</artifactId>
280 <version>${quarkus-plugin.version}</version>
281 <executions>
282 <execution>
283 <goals>
284 <goal>build</goal>
285 </goals>
286 </execution>
287 </executions>
288 </plugin>
289
290 <plugin>
291 <artifactId>maven-compiler-plugin</artifactId>
292 <version>${compiler-plugin.version}</version>
293 </plugin>
294
295 <plugin>
296 <artifactId>maven-surefire-plugin</artifactId>
297 <version>${surefire-plugin.version}</version>
298 <configuration>
299 <systemProperties>
300 <java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
301 <compilerArgs>
302 <compilerArg>-Amapstruct.defaultComponentModel=cdi</compilerArg>
303 </compilerArgs>
304 </systemProperties>
305 </configuration>
306 </plugin>
307
308 <!-- Google Java Code Formatter, for enforcing style conventions -->
309 <plugin>
310 <groupId>com.diffplug.spotless</groupId>
311 <artifactId>spotless-maven-plugin</artifactId>
312 <version>${spotless-plugin.version}</version>
313 <configuration>
314 <java>
315 <removeUnusedImports/>
316 <importOrder>
317 <order>java,javax,org,com,de,io,dagger,eu.mulk,</order>
318 </importOrder>
319 <googleJavaFormat>
320 <version>${google.java.format.version}</version>
321 <style>GOOGLE</style>
322 </googleJavaFormat>
323 </java>
324 </configuration>
325 </plugin>
Matthias Andreas Benkardf7bf7c42020-01-28 22:31:12 +0100326
327 <plugin>
328 <groupId>com.spotify</groupId>
329 <artifactId>dockerfile-maven-plugin</artifactId>
330 <version>${dockerfile-plugin.version}</version>
331 <executions>
332 <execution>
333 <id>default</id>
334 <goals>
335 <goal>build</goal>
336 <goal>push</goal>
337 </goals>
338 </execution>
339 </executions>
340 <configuration>
341 <dockerfile>src/main/docker/Dockerfile.jvm</dockerfile>
342 <repository>docker.benkard.de/mulk/mulkcms2</repository>
343 <tag>${project.version}</tag>
344 </configuration>
345 </plugin>
346
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100347 </plugins>
348
Matthias Andreas Benkardb712a012020-01-26 08:10:49 +0100349 <resources>
350 <resource>
351 <directory>src/main/resources</directory>
352 <excludes>
353 <exclude>META-INF/resources/node_modules/**/*</exclude>
Matthias Andreas Benkard97130f92020-01-27 21:03:39 +0100354 <exclude>META-INF/resources/package.json</exclude>
355 <exclude>META-INF/resources/yarn.lock</exclude>
Matthias Andreas Benkardb712a012020-01-26 08:10:49 +0100356 </excludes>
357 <filtering>false</filtering>
358 </resource>
359 </resources>
360
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100361 </build>
362
363 <profiles>
364
365 <profile>
366
367 <id>native</id>
368
369 <activation>
370 <property>
371 <name>native</name>
372 </property>
373 </activation>
374
375 <build>
376 <plugins>
377 <plugin>
378 <artifactId>maven-failsafe-plugin</artifactId>
379 <version>${surefire-plugin.version}</version>
380 <executions>
381 <execution>
382 <goals>
383 <goal>integration-test</goal>
384 <goal>verify</goal>
385 </goals>
386 <configuration>
387 <systemProperties>
388 <native.image.path>${project.build.directory}/${project.build.finalName}-runner</native.image.path>
389 </systemProperties>
390 </configuration>
391 </execution>
392 </executions>
393 </plugin>
394 </plugins>
395 </build>
396
397 <properties>
398 <quarkus.package.type>native</quarkus.package.type>
399 </properties>
400
401 </profile>
402
403 </profiles>
404
405</project>