2023-06-29 16:03:38 +02:00
<?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">
<parent >
<artifactId > maven-parent</artifactId>
<groupId > org.gcube.tools</groupId>
<version > 1.2.0</version>
<relativePath />
</parent>
<modelVersion > 4.0.0</modelVersion>
<groupId > org.gcube.fullstackapps.informationsystemmonitor</groupId>
<artifactId > informationsystemmonitor</artifactId>
<version > 1.0.0-SNAPSHOT</version>
<packaging > jar</packaging>
<name > Informationsystemmonitor</name>
<description > Description for informationsystemmonitor</description>
<scm >
<connection > scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git</connection>
<developerConnection > scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git</developerConnection>
<url > https://code-repo.d4science.org/gCubeSystem/${project.artifactId}</url>
</scm>
<developers >
<developer >
<name > Maria Teresa Paratore</name>
<email > mariateresa.paratore@isti.cnr.it</email>
<organization > CNR Pisa, Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo"</organization>
<roles >
<role > architect</role>
<role > developer</role>
</roles>
</developer>
<developer >
<name > Giancarlo Panichi</name>
<email > g.panichi@isti.cnr.it</email>
<organization > CNR Pisa, Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo"</organization>
<roles >
<role > architect</role>
<role > developer</role>
</roles>
</developer>
</developers>
<repositories >
<!-- jhipster - needle - maven - repository -->
</repositories>
<pluginRepositories >
<!-- jhipster - needle - maven - plugin - repository -->
</pluginRepositories>
<!-- jhipster - needle - distribution - management -->
<properties >
<!-- Build properties -->
<maven.version > 3.2.5</maven.version>
<java.version > 11</java.version>
<node.version > v16.17.0</node.version>
<npm.version > 8.19.1</npm.version>
<project.build.sourceEncoding > UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding > UTF-8</project.reporting.outputEncoding>
<maven.build.timestamp.format > yyyyMMddHHmmss</maven.build.timestamp.format>
<maven.compiler.source > ${java.version}</maven.compiler.source>
<maven.compiler.target > ${java.version}</maven.compiler.target>
<start-class > org.gcube.fullstackapps.informationsystemmonitor.InformationsystemmonitorApp</start-class>
<argLine > -Djava.security.egd=file:/dev/./urandom -Xmx1G</argLine>
<m2e.apt.activation > jdt_apt</m2e.apt.activation>
<run.addResources > false</run.addResources>
<!-- These remain empty unless the corresponding profile is active -->
<profile.api-docs />
<profile.tls />
<profile.e2e />
<!-- Dependency versions -->
<jhipster-dependencies.version > 7.9.3</jhipster-dependencies.version>
<!-- The spring - boot version should match the one managed by https://mvnrepository.com/artifact/tech.jhipster/jhipster - dependencies/${jhipster - dependencies.version} -->
<spring-boot.version > 2.7.3</spring-boot.version>
<archunit-junit5.version > 0.22.0</archunit-junit5.version>
<mapstruct.version > 1.5.2.Final</mapstruct.version>
<jackson-databind-nullable.version > 0.2.3</jackson-databind-nullable.version>
<caffeine.version > 3.1.1</caffeine.version>
<!-- Plugin versions -->
<maven-clean-plugin.version > 3.2.0</maven-clean-plugin.version>
<maven-site-plugin.version > 3.12.1</maven-site-plugin.version>
<maven-compiler-plugin.version > 3.10.1</maven-compiler-plugin.version>
<maven-javadoc-plugin.version > 3.4.1</maven-javadoc-plugin.version>
<maven-eclipse-plugin.version > 2.10</maven-eclipse-plugin.version>
<maven-enforcer-plugin.version > 3.1.0</maven-enforcer-plugin.version>
<maven-failsafe-plugin.version > 3.0.0-M7</maven-failsafe-plugin.version>
<maven-jar-plugin.version > 3.2.2</maven-jar-plugin.version>
<maven-idea-plugin.version > 2.2.1</maven-idea-plugin.version>
<maven-resources-plugin.version > 3.3.0</maven-resources-plugin.version>
<maven-surefire-plugin.version > 3.0.0-M7</maven-surefire-plugin.version>
<maven-war-plugin.version > 3.3.2</maven-war-plugin.version>
<maven-checkstyle-plugin.version > 3.1.2</maven-checkstyle-plugin.version>
<checkstyle.version > 10.3.2</checkstyle.version>
<nohttp-checkstyle.version > 0.0.10</nohttp-checkstyle.version>
<frontend-maven-plugin.version > 1.12.1</frontend-maven-plugin.version>
<checksum-maven-plugin.version > 1.11</checksum-maven-plugin.version>
<maven-antrun-plugin.version > 3.1.0</maven-antrun-plugin.version>
<git-commit-id-plugin.version > 5.0.0</git-commit-id-plugin.version>
<modernizer-maven-plugin.version > 2.4.0</modernizer-maven-plugin.version>
<jacoco-maven-plugin.version > 0.8.8</jacoco-maven-plugin.version>
<jib-maven-plugin.version > 3.2.1</jib-maven-plugin.version>
<jib-maven-plugin.image > eclipse-temurin:11-jre-focal</jib-maven-plugin.image>
<jib-maven-plugin.architecture > amd64</jib-maven-plugin.architecture>
<lifecycle-mapping.version > 1.0.0</lifecycle-mapping.version>
<openapi-generator-maven-plugin.version > 6.0.1</openapi-generator-maven-plugin.version>
<properties-maven-plugin.version > 1.1.0</properties-maven-plugin.version>
<sonar-maven-plugin.version > 3.9.1.2184</sonar-maven-plugin.version>
<lombok.version > 1.18.24</lombok.version>
<!-- jhipster - needle - maven - property -->
</properties>
<dependencyManagement >
<dependencies >
<dependency >
<groupId > tech.jhipster</groupId>
<artifactId > jhipster-dependencies</artifactId>
<version > ${jhipster-dependencies.version}</version>
<type > pom</type>
<scope > import</scope>
</dependency>
<!-- jhipster - needle - maven - add - dependency - management -->
<dependency >
<groupId > org.gcube.distribution</groupId>
<artifactId > gcube-bom</artifactId>
<version > 2.4.0-SNAPSHOT</version>
<type > pom</type>
<scope > import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies >
<dependency >
<groupId > tech.jhipster</groupId>
<artifactId > jhipster-framework</artifactId>
</dependency>
<dependency >
<groupId > javax.annotation</groupId>
<artifactId > javax.annotation-api</artifactId>
</dependency>
<dependency >
<groupId > com.fasterxml.jackson.datatype</groupId>
<artifactId > jackson-datatype-hppc</artifactId>
</dependency>
<dependency >
<groupId > com.fasterxml.jackson.datatype</groupId>
<artifactId > jackson-datatype-jsr310</artifactId>
</dependency>
<dependency >
<groupId > org.springdoc</groupId>
<artifactId > springdoc-openapi-webmvc-core</artifactId>
</dependency>
<dependency >
<groupId > org.apache.commons</groupId>
<artifactId > commons-lang3</artifactId>
</dependency>
<dependency >
<groupId > org.openapitools</groupId>
<artifactId > jackson-databind-nullable</artifactId>
<version > ${jackson-databind-nullable.version}</version>
</dependency>
<dependency >
<groupId > com.github.ben-manes.caffeine</groupId>
<artifactId > caffeine</artifactId>
<version > ${caffeine.version}</version>
</dependency>
<dependency >
<groupId > org.mapstruct</groupId>
<artifactId > mapstruct</artifactId>
<version > ${mapstruct.version}</version>
</dependency>
<dependency >
<groupId > org.mapstruct</groupId>
<artifactId > mapstruct-processor</artifactId>
<version > ${mapstruct.version}</version>
<scope > provided</scope>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-configuration-processor</artifactId>
<scope > provided</scope>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-loader-tools</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-actuator</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-logging</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-thymeleaf</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-web</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-test</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-test</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.springframework.security</groupId>
<artifactId > spring-security-test</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > com.tngtech.archunit</groupId>
<artifactId > archunit-junit5-api</artifactId>
<version > ${archunit-junit5.version}</version>
<scope > test</scope>
</dependency>
<!-- Adding the engine dependency to the surefire - plugin unfortunately
does not work in the current version. -->
<!-- https://www.archunit.org/userguide/html/000_Index.html#_junit_5 -->
<dependency >
<groupId > com.tngtech.archunit</groupId>
<artifactId > archunit-junit5-engine</artifactId>
<version > ${archunit-junit5.version}</version>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.zalando</groupId>
<artifactId > problem-spring-web</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-undertow</artifactId>
</dependency>
<!-- Spring Security OAuth 2.0 -->
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-oauth2-client</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-oauth2-resource-server</artifactId>
</dependency>
<!-- Spring Cloud -->
<dependency >
<groupId > io.micrometer</groupId>
<artifactId > micrometer-registry-prometheus</artifactId>
</dependency>
<dependency >
<groupId > io.dropwizard.metrics</groupId>
<artifactId > metrics-core</artifactId>
</dependency>
<!-- jhipster - needle - maven - add - dependency -->
<!-- lombok -->
<dependency >
<groupId > org.projectlombok</groupId>
<artifactId > lombok</artifactId>
<scope > provided</scope>
</dependency>
<dependency >
<groupId > org.gcube.information-system</groupId>
<artifactId > resource-registry-client</artifactId>
</dependency>
<dependency >
<groupId > org.gcube.common</groupId>
<artifactId > authorization-utils</artifactId>
<version > [2.1.0-SNAPSHOT, 3.0.0-SNAPSHOT)</version>
</dependency>
2023-11-02 18:05:32 +01:00
<!-- jsonpath -->
<dependency >
<groupId > com.jayway.jsonpath</groupId>
<artifactId > json-path</artifactId>
<version > 2.4.0</version>
</dependency>
2023-06-29 16:03:38 +02:00
</dependencies>
<build >
<defaultGoal > spring-boot:run</defaultGoal>
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-checkstyle-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-javadoc-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-eclipse-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-enforcer-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-idea-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-resources-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-surefire-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.jacoco</groupId>
<artifactId > jacoco-maven-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.sonarsource.scanner.maven</groupId>
<artifactId > sonar-maven-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-maven-plugin</artifactId>
</plugin>
<plugin >
<groupId > com.google.cloud.tools</groupId>
<artifactId > jib-maven-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.codehaus.mojo</groupId>
<artifactId > properties-maven-plugin</artifactId>
</plugin>
<plugin >
<groupId > org.gaul</groupId>
<artifactId > modernizer-maven-plugin</artifactId>
</plugin>
<plugin >
<!-- Plugin that provides API - first development using openapi - generator - cli
to generate Spring-MVC endpoint stubs at compile time from an OpenAPI definition
file -->
<groupId > org.openapitools</groupId>
<artifactId > openapi-generator-maven-plugin</artifactId>
</plugin>
<!-- jhipster - needle - maven - add - plugin -->
</plugins>
<pluginManagement >
<plugins >
<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>
<dependency >
<groupId > io.spring.nohttp</groupId>
<artifactId > nohttp-checkstyle</artifactId>
<version > ${nohttp-checkstyle.version}</version>
</dependency>
</dependencies>
<configuration >
<configLocation > checkstyle.xml</configLocation>
<includes > pom.xml,README.md</includes>
<excludes > .git/**/*,target/**/*,node_modules/**/*,node/**/*</excludes>
<sourceDirectories > ./</sourceDirectories>
</configuration>
<executions >
<execution >
<goals >
<goal > check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<version > ${maven-compiler-plugin.version}</version>
<configuration >
<source > ${java.version}</source>
<target > ${java.version}</target>
<annotationProcessorPaths >
<path >
<groupId > org.projectlombok</groupId>
<artifactId > lombok</artifactId>
<version > ${lombok.version}</version>
</path>
<path >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-configuration-processor</artifactId>
<version > ${spring-boot.version}</version>
</path>
<path >
<groupId > org.mapstruct</groupId>
<artifactId > mapstruct-processor</artifactId>
<version > ${mapstruct.version}</version>
</path>
<!-- jhipster - needle - maven - add - annotation - processor -->
</annotationProcessorPaths>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-javadoc-plugin</artifactId>
<version > ${maven-javadoc-plugin.version}</version>
<configuration >
<source > ${maven.compiler.source}</source>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-war-plugin</artifactId>
<version > ${maven-war-plugin.version}</version>
<executions >
<execution >
<id > default-war</id>
<goals >
<goal > war</goal>
</goals>
<phase > package</phase>
</execution>
</executions>
<configuration >
<warSourceIncludes > WEB-INF/**,META-INF/**</warSourceIncludes>
<failOnMissingWebXml > false</failOnMissingWebXml>
<warSourceDirectory > target/classes/static/</warSourceDirectory>
<webResources >
<resource >
<directory > src/main/webapp</directory>
<includes >
<include > WEB-INF/**</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
<plugin >
<groupId > com.github.eirslett</groupId>
<artifactId > frontend-maven-plugin</artifactId>
<version > ${frontend-maven-plugin.version}</version>
<configuration >
<installDirectory > target</installDirectory>
</configuration>
</plugin>
<plugin >
<groupId > org.codehaus.mojo</groupId>
<artifactId > properties-maven-plugin</artifactId>
<version > ${properties-maven-plugin.version}</version>
<executions >
<execution >
<phase > initialize</phase>
<goals >
<goal > read-project-properties</goal>
</goals>
<configuration >
<files >
<file > sonar-project.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
<plugin >
<groupId > io.github.git-commit-id</groupId>
<artifactId > git-commit-id-maven-plugin</artifactId>
<version > ${git-commit-id-plugin.version}</version>
<executions >
<execution >
<goals >
<goal > revision</goal>
</goals>
</execution>
</executions>
<configuration >
<failOnNoGitDirectory > false</failOnNoGitDirectory>
<failOnUnableToExtractRepoInfo > false</failOnUnableToExtractRepoInfo>
<generateGitPropertiesFile > true</generateGitPropertiesFile>
<includeOnlyProperties >
<includeOnlyProperty > ^git.commit.id.abbrev$</includeOnlyProperty>
<includeOnlyProperty > ^git.commit.id.describe$</includeOnlyProperty>
<includeOnlyProperty > ^git.branch$</includeOnlyProperty>
</includeOnlyProperties>
</configuration>
</plugin>
<plugin >
<groupId > org.gaul</groupId>
<artifactId > modernizer-maven-plugin</artifactId>
<version > ${modernizer-maven-plugin.version}</version>
<executions >
<execution >
<id > modernizer</id>
<phase > package</phase>
<goals >
<goal > modernizer</goal>
</goals>
</execution>
</executions>
<configuration >
<javaVersion > ${java.version}</javaVersion>
</configuration>
</plugin>
<plugin >
<groupId > org.jacoco</groupId>
<artifactId > jacoco-maven-plugin</artifactId>
<version > ${jacoco-maven-plugin.version}</version>
<executions >
<execution >
<id > pre-unit-tests</id>
<goals >
<goal > prepare-agent</goal>
</goals>
</execution>
<!-- Ensures that the code coverage report for unit tests is created
after unit tests have been run -->
<execution >
<id > post-unit-test</id>
<phase > test</phase>
<goals >
<goal > report</goal>
</goals>
</execution>
<execution >
<id > pre-integration-tests</id>
<goals >
<goal > prepare-agent-integration</goal>
</goals>
</execution>
<!-- Ensures that the code coverage report for integration tests is
created after integration tests have been run -->
<execution >
<id > post-integration-tests</id>
<phase > post-integration-test</phase>
<goals >
<goal > report-integration</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin >
<groupId > com.google.cloud.tools</groupId>
<artifactId > jib-maven-plugin</artifactId>
<version > ${jib-maven-plugin.version}</version>
<configuration >
<from >
<image > ${jib-maven-plugin.image}</image>
<platforms >
<platform >
<architecture > ${jib-maven-plugin.architecture}</architecture>
<os > linux</os>
</platform>
</platforms>
</from>
<to >
<image > informationsystemmonitor:latest</image>
</to>
<container >
<entrypoint >
<shell > bash</shell>
<option > -c</option>
<arg > /entrypoint.sh</arg>
</entrypoint>
<ports >
<port > 8080</port>
</ports>
<environment >
<SPRING_OUTPUT_ANSI_ENABLED > ALWAYS</SPRING_OUTPUT_ANSI_ENABLED>
<JHIPSTER_SLEEP > 0</JHIPSTER_SLEEP>
</environment>
<creationTime > USE_CURRENT_TIMESTAMP</creationTime>
<user > 1000</user>
</container>
<extraDirectories >
<paths > src/main/docker/jib</paths>
<permissions >
<permission >
<file > /entrypoint.sh</file>
<mode > 755</mode>
</permission>
</permissions>
</extraDirectories>
</configuration>
</plugin>
<plugin >
<artifactId > maven-clean-plugin</artifactId>
<version > ${maven-clean-plugin.version}</version>
</plugin>
<plugin >
<artifactId > maven-site-plugin</artifactId>
<version > ${maven-site-plugin.version}</version>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-eclipse-plugin</artifactId>
<version > ${maven-eclipse-plugin.version}</version>
<configuration >
<downloadSources > true</downloadSources>
<downloadJavadocs > true</downloadJavadocs>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-enforcer-plugin</artifactId>
<version > ${maven-enforcer-plugin.version}</version>
<executions >
<execution >
<id > enforce-versions</id>
<goals >
<goal > enforce</goal>
</goals>
</execution>
<execution >
<id > enforce-dependencyConvergence</id>
<configuration >
<rules >
<DependencyConvergence />
</rules>
<fail > false</fail>
</configuration>
<goals >
<goal > enforce</goal>
</goals>
</execution>
</executions>
<configuration >
<rules >
<requireMavenVersion >
<message > You are running an older version of Maven. JHipster
requires at least Maven ${maven.version}</message>
<version > [${maven.version},)</version>
</requireMavenVersion>
<requireJavaVersion >
<message > You are running an incompatible version of Java.
JHipster supports JDK 11 to 18.</message>
<version > [11,12),[12,13),[13,14),[14,15),[15,16),[16,17),[17,18),[18,19)</version>
</requireJavaVersion>
</rules>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-idea-plugin</artifactId>
<version > ${maven-idea-plugin.version}</version>
<configuration >
<exclude > node_modules</exclude>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-resources-plugin</artifactId>
<version > ${maven-resources-plugin.version}</version>
<executions >
<execution >
<id > default-resources</id>
<phase > validate</phase>
<goals >
<goal > copy-resources</goal>
</goals>
<configuration >
<outputDirectory > ${project.build.directory}/classes</outputDirectory>
<useDefaultDelimiters > false</useDefaultDelimiters>
<delimiters >
<delimiter > #</delimiter>
</delimiters>
<resources >
<resource >
<directory > src/main/resources/</directory>
<filtering > true</filtering>
<includes >
<include > config/*.yml</include>
</includes>
</resource>
<resource >
<directory > src/main/resources/</directory>
<filtering > false</filtering>
<excludes >
<exclude > config/*.yml</exclude>
</excludes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-surefire-plugin</artifactId>
<version > ${maven-surefire-plugin.version}</version>
<configuration >
<!-- Force alphabetical order to have a reproducible build -->
<runOrder > alphabetical</runOrder>
<excludes >
<exclude > **/*IT*</exclude>
<exclude > **/*IntTest*</exclude>
</excludes>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-jar-plugin</artifactId>
<version > ${maven-jar-plugin.version}</version>
</plugin>
<plugin >
<!-- Plugin that provides API - first development using openapi - generator - cli
to generate Spring-MVC endpoint stubs at compile time from an OpenAPI definition
file -->
<groupId > org.openapitools</groupId>
<artifactId > openapi-generator-maven-plugin</artifactId>
<version > ${openapi-generator-maven-plugin.version}</version>
<executions >
<execution >
<goals >
<goal > generate</goal>
</goals>
<configuration >
<inputSpec > ${project.basedir}/src/main/resources/swagger/api.yml</inputSpec>
<generatorName > spring</generatorName>
<apiPackage > org.gcube.fullstackapps.informationsystemmonitor.web.api</apiPackage>
<modelPackage > org.gcube.fullstackapps.informationsystemmonitor.service.api.dto</modelPackage>
<supportingFilesToGenerate > ApiUtil.java</supportingFilesToGenerate>
<importMappings > Problem=org.zalando.problem.Problem</importMappings>
<skipValidateSpec > false</skipValidateSpec>
<configOptions >
<delegatePattern > true</delegatePattern>
<title > informationsystemmonitor</title>
</configOptions>
</configuration>
</execution>
</executions>
</plugin>
<plugin >
<groupId > org.sonarsource.scanner.maven</groupId>
<artifactId > sonar-maven-plugin</artifactId>
<version > ${sonar-maven-plugin.version}</version>
</plugin>
<plugin >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-maven-plugin</artifactId>
<version > ${spring-boot.version}</version>
<executions >
<execution >
<goals >
<goal > repackage</goal>
</goals>
</execution>
</executions>
<configuration >
<mainClass > ${start-class}</mainClass>
<fork > true</fork>
<!-- Enable the line below to have remote debugging of your application
on port 5005 <jvmArguments > -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments> -->
</configuration>
</plugin>
<!-- jhipster - needle - maven - add - plugin - management -->
</plugins>
</pluginManagement>
</build>
<profiles >
<profile >
<id > api-docs</id>
<properties >
<profile.api-docs > ,api-docs</profile.api-docs>
</properties>
</profile>
<profile >
<id > tls</id>
<properties >
<profile.tls > ,tls</profile.tls>
</properties>
</profile>
<profile >
<id > webapp</id>
<activation >
<activeByDefault > true</activeByDefault>
</activation>
<build >
<plugins >
<plugin >
<groupId > net.nicoulaj.maven.plugins</groupId>
<artifactId > checksum-maven-plugin</artifactId>
<version > ${checksum-maven-plugin.version}</version>
<executions >
<execution >
<id > create-pre-compiled-webapp-checksum</id>
<goals >
<goal > files</goal>
</goals>
<phase > generate-resources</phase>
</execution>
<execution >
<id > create-compiled-webapp-checksum</id>
<goals >
<goal > files</goal>
</goals>
<phase > compile</phase>
<configuration >
<csvSummaryFile > checksums.csv.old</csvSummaryFile>
</configuration>
</execution>
</executions>
<configuration >
<fileSets >
<fileSet >
<directory > ${project.basedir}</directory>
<includes >
<include > src/main/webapp/**/*.*</include>
<include > target/classes/static/**/*.*</include>
<include > package-lock.json</include>
<include > package.json</include>
<include > webpack/*.*</include>
<include > tsconfig.json</include>
<include > tsconfig.app.json</include>
</includes>
<excludes >
<exclude > **/app/**/service-worker.js</exclude>
<exclude > **/app/**/vendor.css</exclude>
</excludes>
</fileSet>
</fileSets>
<failOnError > false</failOnError>
<failIfNoFiles > false</failIfNoFiles>
<individualFiles > false</individualFiles>
<algorithms >
<algorithm > SHA-1</algorithm>
</algorithms>
<includeRelativePath > true</includeRelativePath>
<quiet > true</quiet>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-antrun-plugin</artifactId>
<version > ${maven-antrun-plugin.version}</version>
<executions >
<execution >
<id > eval-frontend-checksum</id>
<phase > generate-resources</phase>
<goals >
<goal > run</goal>
</goals>
<configuration >
<target >
<condition property= "skip.npm" value= "true"
else="false">
<and >
<available file= "checksums.csv"
filepath="${project.build.directory}" />
<available file= "checksums.csv.old"
filepath="${project.build.directory}" />
<filesmatch
file1="${project.build.directory}/checksums.csv"
file2="${project.build.directory}/checksums.csv.old" />
</and>
</condition>
</target>
<exportAntProperties > true</exportAntProperties>
</configuration>
</execution>
</executions>
</plugin>
<plugin >
<groupId > com.github.eirslett</groupId>
<artifactId > frontend-maven-plugin</artifactId>
<executions >
<execution >
<id > install-node-and-npm</id>
<goals >
<goal > install-node-and-npm</goal>
</goals>
<configuration >
<nodeVersion > ${node.version}</nodeVersion>
<npmVersion > ${npm.version}</npmVersion>
</configuration>
</execution>
<execution >
<id > npm install</id>
<goals >
<goal > npm</goal>
</goals>
</execution>
<execution >
<id > webapp build dev</id>
<goals >
<goal > npm</goal>
</goals>
<phase > generate-resources</phase>
<configuration >
<arguments > run webapp:build</arguments>
<environmentVariables >
<APP_VERSION > ${project.version}</APP_VERSION>
</environmentVariables>
<npmInheritsProxyConfigFromMaven > false</npmInheritsProxyConfigFromMaven>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<properties >
<!-- default Spring profiles -->
<spring.profiles.active > dev</spring.profiles.active>
</properties>
</profile>
<profile >
<id > dev</id>
<activation >
<activeByDefault > true</activeByDefault>
</activation>
<dependencies >
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-devtools</artifactId>
<optional > true</optional>
</dependency>
</dependencies>
<build >
<pluginManagement >
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
<version > ${maven-failsafe-plugin.version}</version>
<configuration >
<!-- Due to spring - boot repackage, without adding this property test
classes are not found See https://github.com/spring-projects/spring-boot/issues/6254 -->
<classesDirectory > ${project.build.outputDirectory}</classesDirectory>
<!-- Force alphabetical order to have a reproducible build -->
<runOrder > alphabetical</runOrder>
<includes >
<include > **/*IT*</include>
<include > **/*IntTest*</include>
</includes>
<argLine > @{argLine} -Dspring.profiles.active=testdev</argLine>
</configuration>
<executions >
<execution >
<id > integration-test</id>
<goals >
<goal > integration-test</goal>
</goals>
</execution>
<execution >
<id > verify</id>
<goals >
<goal > verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
<properties >
<!-- default Spring profiles -->
<spring.profiles.active > dev${profile.tls}</spring.profiles.active>
</properties>
</profile>
<profile >
<id > prod</id>
<build >
<pluginManagement >
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
<version > ${maven-failsafe-plugin.version}</version>
<configuration >
<!-- Due to spring - boot repackage, without adding this property test
classes are not found See https://github.com/spring-projects/spring-boot/issues/6254 -->
<classesDirectory > ${project.build.outputDirectory}</classesDirectory>
<!-- Force alphabetical order to have a reproducible build -->
<runOrder > alphabetical</runOrder>
<includes >
<include > **/*IT*</include>
<include > **/*IntTest*</include>
</includes>
<argLine > @{argLine} -Dspring.profiles.active=testprod</argLine>
</configuration>
<executions >
<execution >
<id > integration-test</id>
<goals >
<goal > integration-test</goal>
</goals>
</execution>
<execution >
<id > verify</id>
<goals >
<goal > verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
<plugins >
<plugin >
<artifactId > maven-clean-plugin</artifactId>
<configuration >
<filesets >
<fileset >
<directory > target/classes/static/</directory>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-maven-plugin</artifactId>
<executions >
<execution >
<goals >
<goal > build-info</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin >
<groupId > com.github.eirslett</groupId>
<artifactId > frontend-maven-plugin</artifactId>
<executions >
<execution >
<id > install-node-and-npm</id>
<goals >
<goal > install-node-and-npm</goal>
</goals>
<configuration >
<nodeVersion > ${node.version}</nodeVersion>
<npmVersion > ${npm.version}</npmVersion>
</configuration>
</execution>
<execution >
<id > npm install</id>
<goals >
<goal > npm</goal>
</goals>
</execution>
<execution >
<id > webapp build test</id>
<goals >
<goal > npm</goal>
</goals>
<phase > test</phase>
<configuration >
<arguments > run webapp:test</arguments>
<npmInheritsProxyConfigFromMaven > false</npmInheritsProxyConfigFromMaven>
</configuration>
</execution>
<execution >
<id > webapp build prod</id>
<goals >
<goal > npm</goal>
</goals>
<phase > generate-resources</phase>
<configuration >
<arguments > run webapp:prod</arguments>
<environmentVariables >
<APP_VERSION > ${project.version}</APP_VERSION>
</environmentVariables>
<npmInheritsProxyConfigFromMaven > false</npmInheritsProxyConfigFromMaven>
</configuration>
</execution>
</executions>
</plugin>
<plugin >
<groupId > io.github.git-commit-id</groupId>
<artifactId > git-commit-id-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<properties >
<!-- default Spring profiles -->
<spring.profiles.active > prod${profile.api-docs}${profile.tls}${profile.e2e}</spring.profiles.active>
</properties>
</profile>
<profile >
<id > war</id>
<build >
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-war-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile >
<!-- Profile for applying IDE - specific configuration. At the moment it
configures MapStruct and Hibernate JPA Metamodel Generator, which you need
when working with DTOs and entity filtering. -->
<id > IDE</id>
<dependencies >
<dependency >
<groupId > org.mapstruct</groupId>
<artifactId > mapstruct-processor</artifactId>
<version > ${mapstruct.version}</version>
</dependency>
</dependencies>
</profile>
<profile >
<!-- This is automatically activated when working in Eclipse -->
<id > eclipse</id>
<activation >
<property >
<name > m2e.version</name>
</property>
</activation>
<dependencies >
<!-- The following dependency is added due to issue #9175 -->
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-undertow</artifactId>
</dependency>
</dependencies>
<build >
<pluginManagement >
<plugins >
<!-- This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. Remove when the m2e
plugin can correctly bind to Maven lifecycle -->
<plugin >
<groupId > org.eclipse.m2e</groupId>
<artifactId > lifecycle-mapping</artifactId>
<version > ${lifecycle-mapping.version}</version>
<configuration >
<lifecycleMappingMetadata >
<pluginExecutions >
<pluginExecution >
<pluginExecutionFilter >
<groupId > org.jacoco</groupId>
<artifactId >
jacoco-maven-plugin
</artifactId>
<versionRange >
${jacoco-maven-plugin.version}
</versionRange>
<goals >
<goal > prepare-agent</goal>
</goals>
</pluginExecutionFilter>
<action >
<ignore />
</action>
</pluginExecution>
<pluginExecution >
<pluginExecutionFilter >
<groupId > com.github.eirslett</groupId>
<artifactId > frontend-maven-plugin</artifactId>
<versionRange > ${frontend-maven-plugin.version}</versionRange>
<goals >
<goal > install-node-and-npm</goal>
<goal > npm</goal>
</goals>
</pluginExecutionFilter>
<action >
<ignore />
</action>
</pluginExecution>
<pluginExecution >
<pluginExecutionFilter >
<groupId > org.openapitools</groupId>
<artifactId > openapi-generator-maven-plugin</artifactId>
<versionRange > ${openapi-generator-maven-plugin.version}</versionRange>
<goals >
<goal > generate</goal>
</goals>
</pluginExecutionFilter>
<action >
<ignore />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
<!-- jhipster - needle - maven - add - profile -->
</profiles>
</project>