pom.xml 11.60 KiB
<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>
<parent>
<groupId>ch.unige.solidify</groupId>
<artifactId>solidify-parent</artifactId>
<version>2.0.2</version>
<relativePath />
</parent>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-Parent</artifactId>
<name>AoU Parent</name>
<version>1.0.11</version>
<packaging>pom</packaging>
<description>AoU Parent project. Manage dependencies and version for AoU modules/applications</description>
<modules>
<!-- AoU Shared Modules -->
<module>AoU-Model</module>
<module>AoU-Common</module>
<module>AoU-ResourceServerSecurity</module>
<module>AoU-ResourceServerCommon</module>
<!-- AoU Modules -->
<module>AoU-Admin</module>
<module>AoU-Access</module>
<!-- AoU Clients -->
<module>AoU-Client</module>
<!-- AoU Tests -->
<module>AoU-IntegrationTests</module>
<module>AoU-IntegrationTestsRunner</module>
<!-- AoU Applications -->
<module>AoU-Solution</module>
</modules>
<properties>
<!--General properties -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.build.timestamp.format>yyyy-MM-dd</maven.build.timestamp.format>
<!-- Solidify Authorization Client properties -->
<solidify.authorization.client.version>1.3.0</solidify.authorization.client.version>
<!--AoU properties -->
<aou.version>${project.version}</aou.version>
<aou.model.version>1.0.11</aou.model.version>
<aou.common.version>1.0.11</aou.common.version>
<aou.resource.server.security.version>1.0.11</aou.resource.server.security.version>
<aou.resource.server.common.version>1.0.11</aou.resource.server.common.version>
<aou.admin.version>1.0.11</aou.admin.version>
<aou.access.version>1.0.11</aou.access.version>
<aou.client.version>1.0.11</aou.client.version>
<aou.integration.tests.version>1.0.11</aou.integration.tests.version>
<aou.integration.tests.runner.version>1.0.11</aou.integration.tests.runner.version>
<aou.tool.openapi.version>1.3.0</aou.tool.openapi.version>
<aou.tool.asciidoctor.toc.version>1.3.0</aou.tool.asciidoctor.toc.version>
<!--Libraries properties -->
<spring-security-oauth2.version>2.5.0.RELEASE</spring-security-oauth2.version>
<spring-security-jwt.version>1.1.1.RELEASE</spring-security-jwt.version>
<elasticsearch.version>6.7.1</elasticsearch.version>
<fedora.repository.version>3.8.1</fedora.repository.version>
<asciidoctor-maven-plugin.version>2.1.0</asciidoctor-maven-plugin.version>
<asciidoctorj-pdf.version>1.5.3</asciidoctorj-pdf.version>
<jaxb2-maven-plugin.version>2.5.0</jaxb2-maven-plugin.version>
<properties-maven-plugin.version>1.0.0</properties-maven-plugin.version>
<joss.version>0.10.4</joss.version>
<nimbus-jose-jwt.version>8.20</nimbus-jose-jwt.version>
<maven-release-plugin.version>2.5.3</maven-release-plugin.version>
<restdocs-spec-maven-plugin.version>0.18</restdocs-spec-maven-plugin.version>
<commons-validator.version>1.7</commons-validator.version>
<jgit.version>5.9.0.202009080501-r</jgit.version>
<spring-cloud-config-client.version>3.0.3</spring-cloud-config-client.version> <jna-platform.version>5.6.0</jna-platform.version>
<skipTests>false</skipTests>
<skipDocs>false</skipDocs>
<skipTools>false</skipTools>
<snippets.baseDir>${project.build.directory}/generated-snippets</snippets.baseDir>
<documentation.host>localhost</documentation.host>
<documentation.basePath />
<documentation.specification>OPENAPI_V3</documentation.specification>
<documentation.scheme>http</documentation.scheme>
<documentation.server.servlet.context-path>/aou</documentation.server.servlet.context-path>
<documentation.format>JSON</documentation.format>
<!-- Mandatory property to prevent inheritance of the parent property. If not set the module in Sonar will be the same as the parent module -->
<sonar.projectName>${project.name}</sonar.projectName>
<aggregate.report.dir>tests/target/site/jacoco-aggregate/jacoco.xml</aggregate.report.dir>
<sonar.exclusions>AoU-IntegrationTests/src/test/resources/**</sonar.exclusions>
</properties>
<dependencyManagement>
<dependencies>
<!--Spring dependencies -->
<dependency>
<groupId>org.springframework.security.oauth</groupId>
<artifactId>spring-security-oauth2</artifactId>
<version>${spring-security-oauth2.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-jwt</artifactId>
<version>${spring-security-jwt.version}</version>
</dependency>
<!--AoU dependencies -->
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-Model</artifactId>
<version>${aou.model.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-Common</artifactId>
<version>${aou.common.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-ResourceServerSecurity</artifactId>
<version>${aou.resource.server.security.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-ResourceServerCommon</artifactId>
<version>${aou.resource.server.common.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-Admin</artifactId>
<version>${aou.admin.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-Deposit</artifactId>
<version>${aou.deposit.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-Access</artifactId>
<version>${aou.access.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-Client</artifactId> <version>${aou.client.version}</version>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-IntegrationTests</artifactId>
<version>${aou.integration.tests.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ch.unige.aou</groupId>
<artifactId>AoU-IntegrationTestsRunner</artifactId>
<version>${aou.integration.tests.runner.version}</version>
<scope>test</scope>
</dependency>
<!-- Search dependencies -->
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>x-pack-transport</artifactId>
<version>${elasticsearch.version}</version>
</dependency>
<!-- Swift S3 -->
<dependency>
<groupId>org.javaswift</groupId>
<artifactId>joss</artifactId>
<version>${joss.version}</version>
</dependency>
<!-- Used for validating URLs -->
<dependency>
<groupId>commons-validator</groupId>
<artifactId>commons-validator</artifactId>
<version>${commons-validator.version}</version>
</dependency>
<!-- JOSE, JWT and OAuth2 libraries -->
<dependency>
<groupId>com.nimbusds</groupId>
<artifactId>nimbus-jose-jwt</artifactId>
<version>${nimbus-jose-jwt.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-client</artifactId>
<version>${spring-cloud-config-client.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit</artifactId>
<version>${jgit.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit.ssh.jsch</artifactId>
<version>${jgit.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- Solidify-Authorization-Client -->
<dependency>
<groupId>ch.unige.solidify</groupId>
<artifactId>solidify-authorization-client</artifactId>
<version>${solidify.authorization.client.version}</version>
</dependency>
<!-- Spring Boot starter -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!-- Generate Spring configuration metadata file -->
<dependency> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<!-- Java Native Access allowing JDBC MariaDB driver to use Unix socket -->
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna-platform</artifactId>
<version>${jna-platform.version}</version>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<configuration>
<dotGitDirectory>${project.basedir}/../.git</dotGitDirectory>
<offline>true</offline>
<verbose>false</verbose>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>${asciidoctor-maven-plugin.version}</version>
<dependencies>
<dependency>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctorj-pdf</artifactId>
<version>${asciidoctorj-pdf.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>generate-docs</id>
<phase>prepare-package</phase>
<goals>
<goal>process-asciidoc</goal>
</goals>
</execution>
<execution>
<id>generate-pdf-doc</id>
<phase>prepare-package</phase>
<goals>
<goal>process-asciidoc</goal>
</goals>
<configuration>
<backend>pdf</backend>
<attributes>
<icons>font</icons>
<pagenums />
<toc />
</attributes>
</configuration>
</execution>
</executions>
<configuration> <skip>${skipDocs}</skip>
<sourceDirectory>${project.basedir}/src/main/docs</sourceDirectory>
<backend>xhtml</backend>
<doctype>book</doctype>
<attributes>
<version>${project.version}</version>
<builddate>${maven.build.timestamp}</builddate>
<snippets>${snippets.baseDir}</snippets>
<includedirectory>${project.basedir}/src/main/asciidoc</includedirectory>
<imagesdir>images</imagesdir>
</attributes>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>${jaxb2-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>${properties-maven-plugin.version}</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>${maven-release-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
</plugin>
</plugins>
</build>
<scm>
<connection>scm:git:git@gitlab.unige.ch:aou/aou-backend.git</connection>
<tag>aou-1.0.11</tag>
<url>https://gitlab.unige.ch/aou/aou-backend</url>
</scm>
<organization>
<name>University of Geneva</name>
<url>https://www.unige.ch</url>
</organization>
</project>