358 lines
15 KiB
XML
358 lines
15 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<parent>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
<version>2.6.3</version>
|
|
<relativePath /> <!-- lookup parent from repository -->
|
|
</parent>
|
|
|
|
<groupId>de.nclazz.service</groupId>
|
|
<artifactId>mail-relay</artifactId>
|
|
<version>1.0.1</version>
|
|
<name>mail-relay</name>
|
|
<description>Service for relaying mails from other services or static sites</description>
|
|
|
|
<scm>
|
|
<connection>scm:git:https://git.l--n.de/nclazz/nclazz-mail-relay</connection>
|
|
<tag>v1.0.0</tag>
|
|
</scm>
|
|
|
|
<properties>
|
|
<java.version>11</java.version>
|
|
<maven.compiler.target>11</maven.compiler.target>
|
|
<maven.compiler.source>11</maven.compiler.source>
|
|
<maven.compiler.release>11</maven.compiler.release>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
|
|
<assertj.version>3.21.0</assertj.version>
|
|
<maven.surefire.version>3.0.0-M5</maven.surefire.version>
|
|
<maven.failsafe.version>3.0.0-M5</maven.failsafe.version>
|
|
<maven.enforcer.version>3.0.0</maven.enforcer.version>
|
|
<git.id.version>5.0.0</git.id.version>
|
|
<spotbugs.version>4.2.0</spotbugs.version>
|
|
<jacoco.version>0.8.7</jacoco.version>
|
|
<checkstyle.version>3.1.2</checkstyle.version>
|
|
<liquibase.version>4.3.5</liquibase.version>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-web</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-mail</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-validation</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-actuator</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>mysql</groupId>
|
|
<artifactId>mysql-connector-java</artifactId>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.h2database</groupId>
|
|
<artifactId>h2</artifactId>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.liquibase</groupId>
|
|
<artifactId>liquibase-core</artifactId>
|
|
<version>${liquibase.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.assertj</groupId>
|
|
<artifactId>assertj-core</artifactId>
|
|
<version>${assertj.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<configuration>
|
|
<excludes>
|
|
<exclude>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>build-info</id>
|
|
<goals>
|
|
<goal>build-info</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>repackage</id>
|
|
<goals>
|
|
<goal>repackage</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>build-helper-maven-plugin</artifactId>
|
|
<version>3.2.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>add-test-source</id>
|
|
<phase>generate-test-sources</phase>
|
|
<goals>
|
|
<goal>add-test-source</goal>
|
|
</goals>
|
|
<configuration>
|
|
<sources>
|
|
<source>src/integration/java</source>
|
|
</sources>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-release-plugin</artifactId>
|
|
<version>3.0.0-M1</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>io.github.git-commit-id</groupId>
|
|
<artifactId>git-commit-id-maven-plugin</artifactId>
|
|
<version>5.0.0</version>
|
|
<configuration>
|
|
<excludeProperties>
|
|
<excludeProperty>^git.local.branch.*$</excludeProperty>
|
|
</excludeProperties>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.liquibase</groupId>
|
|
<artifactId>liquibase-maven-plugin</artifactId>
|
|
<version>${liquibase.version}</version>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.liquibase.ext</groupId>
|
|
<artifactId>liquibase-hibernate5</artifactId>
|
|
<version>4.5.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
|
<version>2.5.2</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>javax.validation</groupId>
|
|
<artifactId>validation-api</artifactId>
|
|
<version>2.0.1.Final</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.h2database</groupId>
|
|
<artifactId>h2</artifactId>
|
|
<version>1.4.200</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<configuration>
|
|
<changeLogFile>src/main/resources/db/master.xml</changeLogFile>
|
|
<diffChangeLogFile>src/main/resources/db/changelogs/diff/_changelog.xml</diffChangeLogFile>
|
|
|
|
<driver>org.h2.Driver</driver>
|
|
<url>jdbc:h2:~/migration</url>
|
|
<username>sa</username>
|
|
|
|
<referenceUrl>
|
|
hibernate:spring:de.nclazz.service.mailrelay?dialect=org.hibernate.dialect.H2Dialect&
|
|
hibernate.physical\_naming\_strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy&
|
|
hibernate.implicit\_naming\_strategy=org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy
|
|
</referenceUrl>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
<testResources>
|
|
<testResource>
|
|
<directory>src/test/resources</directory>
|
|
</testResource>
|
|
<testResource>
|
|
<directory>src/integration/resources</directory>
|
|
</testResource>
|
|
</testResources>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>test</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.github.spotbugs</groupId>
|
|
<artifactId>spotbugs-maven-plugin</artifactId>
|
|
<version>${spotbugs.version}</version>
|
|
<configuration>
|
|
<xmlOutput>true</xmlOutput>
|
|
<effort>Medium</effort>
|
|
<threshold>Low</threshold>
|
|
<failOnError>false</failOnError>
|
|
<excludeFilterFile>spotbugs-ignore.xml</excludeFilterFile>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>compile-findbugs</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<!-- Intellj doesnt find the plugin for whatever reason, in maven build everything works -->
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<!--suppress MavenModelInspection -->
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<!--suppress MavenModelInspection -->
|
|
<version>${checkstyle.version}</version>
|
|
<configuration>
|
|
<configLocation>checkstyle.xml</configLocation>
|
|
<sourceDirectories>
|
|
<sourceDirectory>src/main/java</sourceDirectory>
|
|
</sourceDirectories>
|
|
<failsOnError>false</failsOnError>
|
|
<failOnViolation>true</failOnViolation>
|
|
<maxAllowedViolations>0</maxAllowedViolations>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>checkstyle-check</id>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>${jacoco.version}</version>
|
|
<configuration>
|
|
<rules>
|
|
<rule>
|
|
<element>BUNDLE</element>
|
|
<excludes>
|
|
<exclude>**/*Configuration.class</exclude>
|
|
<exclude>**/*Application.class</exclude>
|
|
</excludes>
|
|
</rule>
|
|
</rules>
|
|
<haltOnFailure>false</haltOnFailure>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>prepare-agent</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>report</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>check</id>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<version>${maven.enforcer.version}</version>
|
|
<configuration>
|
|
<rules>
|
|
<requireMavenVersion>
|
|
<version>3.5</version>
|
|
</requireMavenVersion>
|
|
<requireJavaVersion>
|
|
<version>11</version>
|
|
</requireJavaVersion>
|
|
<banDuplicatePomDependencyVersions />
|
|
</rules>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>enforce-maven</id>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
<reporting>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.github.spotbugs</groupId>
|
|
<artifactId>spotbugs-maven-plugin</artifactId>
|
|
<version>${spotbugs.version}</version>
|
|
<configuration>
|
|
<xmlOutput>true</xmlOutput>
|
|
<effort>Medium</effort>
|
|
<threshold>Low</threshold>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<!--suppress MavenModelInspection -->
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<!--suppress MavenModelInspection -->
|
|
<version>${checkstyle.version}</version>
|
|
<configuration>
|
|
<configLocation>../checkstyle.xml</configLocation>
|
|
<sourceDirectories>
|
|
<sourceDirectory>src/main/java</sourceDirectory>
|
|
</sourceDirectories>
|
|
<failsOnError>false</failsOnError>
|
|
<failOnViolation>false</failOnViolation>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</reporting>
|
|
</profile>
|
|
</profiles>
|
|
|
|
</project>
|