236 lines
9.6 KiB
XML
236 lines
9.6 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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<groupId>dev.lions.unionflow</groupId>
|
|
<artifactId>unionflow-server-api</artifactId>
|
|
<version>1.0.0</version>
|
|
<packaging>jar</packaging>
|
|
|
|
<name>UnionFlow Server API</name>
|
|
<description>API définitions pour le serveur UnionFlow</description>
|
|
|
|
<properties>
|
|
<maven.compiler.source>17</maven.compiler.source>
|
|
<maven.compiler.target>17</maven.compiler.target>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
|
|
<quarkus.platform.version>3.15.1</quarkus.platform.version>
|
|
<jackson.version>2.17.0</jackson.version>
|
|
<validation-api.version>3.0.2</validation-api.version>
|
|
<microprofile-openapi.version>3.1.1</microprofile-openapi.version>
|
|
|
|
<!-- Versions des plugins de qualité -->
|
|
<jacoco.version>0.8.11</jacoco.version>
|
|
<checkstyle.version>10.12.4</checkstyle.version>
|
|
<maven-checkstyle-plugin.version>3.3.1</maven-checkstyle-plugin.version>
|
|
<junit.version>5.10.1</junit.version>
|
|
<mockito.version>5.7.0</mockito.version>
|
|
<assertj.version>3.24.2</assertj.version>
|
|
|
|
<!-- Seuils de couverture Jacoco - 100% obligatoire -->
|
|
<jacoco.line.coverage.minimum>1.00</jacoco.line.coverage.minimum>
|
|
<jacoco.branch.coverage.minimum>1.00</jacoco.branch.coverage.minimum>
|
|
<jacoco.instruction.coverage.minimum>1.00</jacoco.instruction.coverage.minimum>
|
|
<jacoco.method.coverage.minimum>1.00</jacoco.method.coverage.minimum>
|
|
<jacoco.class.coverage.minimum>1.00</jacoco.class.coverage.minimum>
|
|
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<!-- Jackson pour la sérialisation JSON -->
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-annotations</artifactId>
|
|
<version>${jackson.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Bean Validation -->
|
|
<dependency>
|
|
<groupId>jakarta.validation</groupId>
|
|
<artifactId>jakarta.validation-api</artifactId>
|
|
<version>${validation-api.version}</version>
|
|
</dependency>
|
|
|
|
<!-- MicroProfile OpenAPI pour la documentation -->
|
|
<dependency>
|
|
<groupId>org.eclipse.microprofile.openapi</groupId>
|
|
<artifactId>microprofile-openapi-api</artifactId>
|
|
<version>${microprofile-openapi.version}</version>
|
|
</dependency>
|
|
|
|
|
|
|
|
<!-- Dépendances de test -->
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<version>${mockito.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-junit-jupiter</artifactId>
|
|
<version>${mockito.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.assertj</groupId>
|
|
<artifactId>assertj-core</artifactId>
|
|
<version>${assertj.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.hibernate.validator</groupId>
|
|
<artifactId>hibernate-validator</artifactId>
|
|
<version>8.0.1.Final</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.glassfish</groupId>
|
|
<artifactId>jakarta.el</artifactId>
|
|
<version>4.0.2</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<!-- Lombok pour génération automatique des getters/setters -->
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>1.18.30</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.11.0</version>
|
|
<configuration>
|
|
<source>17</source>
|
|
<target>17</target>
|
|
<encoding>UTF-8</encoding>
|
|
<annotationProcessorPaths>
|
|
<path>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>1.18.30</version>
|
|
</path>
|
|
</annotationProcessorPaths>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<!-- Plugin Jacoco pour la couverture de code -->
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>${jacoco.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>report</id>
|
|
<phase>test</phase>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>check</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<rule>
|
|
<element>BUNDLE</element>
|
|
<limits>
|
|
<limit>
|
|
<counter>LINE</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${jacoco.line.coverage.minimum}</minimum>
|
|
</limit>
|
|
<limit>
|
|
<counter>BRANCH</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${jacoco.branch.coverage.minimum}</minimum>
|
|
</limit>
|
|
<limit>
|
|
<counter>INSTRUCTION</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${jacoco.instruction.coverage.minimum}</minimum>
|
|
</limit>
|
|
<limit>
|
|
<counter>METHOD</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${jacoco.method.coverage.minimum}</minimum>
|
|
</limit>
|
|
<limit>
|
|
<counter>CLASS</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${jacoco.class.coverage.minimum}</minimum>
|
|
</limit>
|
|
</limits>
|
|
</rule>
|
|
</rules>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- Plugin Checkstyle pour la qualité du code -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>${maven-checkstyle-plugin.version}</version>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.puppycrawl.tools</groupId>
|
|
<artifactId>checkstyle</artifactId>
|
|
<version>${checkstyle.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<configuration>
|
|
<configLocation>google_checks.xml</configLocation>
|
|
<consoleOutput>true</consoleOutput>
|
|
<failsOnError>true</failsOnError>
|
|
<violationSeverity>warning</violationSeverity>
|
|
<includeTestSourceDirectory>true</includeTestSourceDirectory>
|
|
<excludes>**/target/**/*</excludes>
|
|
</configuration>
|
|
<!-- Executions désactivées temporairement pour les tests
|
|
<executions>
|
|
<execution>
|
|
<id>validate</id>
|
|
<phase>validate</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
-->
|
|
</plugin>
|
|
|
|
</plugins>
|
|
</build>
|
|
</project> |