delete jenkins-snapshot profile. Refactoring of all profiles. Added
activation option on dev, staging and release profiles. Other changes should be done on settings.xml files in order to work properly. These profiles are currently under test
This commit is contained in:
parent
7403d93594
commit
382d09217a
847
pom.xml
847
pom.xml
|
@ -82,15 +82,15 @@
|
|||
<!-- This profile sets an additional parameter for javadoc generation to disables the doclint.
|
||||
It avoids the build fails if formal/syntax errors are found in javadoc comments.
|
||||
The parameter is only understood by jdk 1.8, so we set it only when jdk 1.8 is used -->
|
||||
<profile>
|
||||
<id>disable-java8-doclint</id>
|
||||
<activation>
|
||||
<jdk>[1.8,)</jdk>
|
||||
</activation>
|
||||
<properties>
|
||||
<javadoc.opts>-Xdoclint:none</javadoc.opts>
|
||||
</properties>
|
||||
</profile>
|
||||
<!-- <profile> -->
|
||||
<!-- <id>disable-java8-doclint</id> -->
|
||||
<!-- <activation> -->
|
||||
<!-- <jdk>[1.8,)</jdk> -->
|
||||
<!-- </activation> -->
|
||||
<!-- <properties> -->
|
||||
<!-- <javadoc.opts>-Xdoclint:none</javadoc.opts> -->
|
||||
<!-- </properties> -->
|
||||
<!-- </profile> -->
|
||||
|
||||
<!--
|
||||
This profile enables the generation fo the source package
|
||||
|
@ -124,10 +124,27 @@
|
|||
<profile>
|
||||
<id>gcube-developer</id>
|
||||
<activation>
|
||||
<!-- This profile will automatically be active for all builds unless another profile in the POM is activated -->
|
||||
<!-- This profile will automatically be active for all builds unless another profile in the POM is activated -->
|
||||
<activeByDefault>true</activeByDefault>
|
||||
<!-- <property> -->
|
||||
<!-- <name>java8</name> -->
|
||||
<!-- </property> -->
|
||||
</activation>
|
||||
|
||||
<!-- <activation> -->
|
||||
<!-- <jdk>[1.6, 11)</jdk> -->
|
||||
<!-- <property> -->
|
||||
<!-- <name>java8</name> -->
|
||||
<!-- </property> -->
|
||||
<!-- </activation> -->
|
||||
<!-- This profile sets an additional parameter for javadoc generation to disables the doclint.
|
||||
It avoids the build fails if formal/syntax errors are found in javadoc comments.
|
||||
The parameter is only understood by jdk 1.8, so we set it only when jdk 1.8 is used -->
|
||||
<properties>
|
||||
<javadoc.opts>-Xdoclint:none</javadoc.opts>
|
||||
<java_version>1.8</java_version>
|
||||
<maven.compiler.source>${java_version}</maven.compiler.source>
|
||||
<maven.compiler.target>${java_version}</maven.compiler.target>
|
||||
</properties>
|
||||
<!-- Repositories for dependency resolution -->
|
||||
<repositories>
|
||||
<repository>
|
||||
|
@ -189,80 +206,6 @@
|
|||
<skip>${skip.when.is.release.used}</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
<profile>
|
||||
<id>jenkins-snapshots</id>
|
||||
<activation>
|
||||
<activeByDefault>false</activeByDefault>
|
||||
<property>
|
||||
<name>jenkins-snapshots</name>
|
||||
<value>true</value>
|
||||
</property>
|
||||
</activation>
|
||||
|
||||
<!-- Repositories for dependency resolution -->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>gcube-snapshots</id>
|
||||
<name>gCube Snapshots</name>
|
||||
<url>${repository.snapshots.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-releases</id>
|
||||
<name>gCube Releases</name>
|
||||
<url>${repository.releases.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-externals</id>
|
||||
<name>gCube Externals</name>
|
||||
<url>${repository.externals.readonly}</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<!-- Repositories for deployments -->
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>gcube-snapshots</id>
|
||||
<name>gCube Snapshots</name>
|
||||
<url>${repository.snapshots.url}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>${plugin.build.helper.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<!-- sets the skip.when.is.release.used property to true if SNAPSHOT is NOT used,
|
||||
to the project version otherwise -->
|
||||
<id>build-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>skip.when.is.release.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>^((?!.*-SNAPSHOT).)*$</regex>
|
||||
<replacement>true</replacement>
|
||||
<failIfNoMatch>false</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${plugin.deploy.version}</version>
|
||||
<configuration>
|
||||
<skip>${skip.when.is.release.used}</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-install-plugin</artifactId>
|
||||
|
@ -271,15 +214,313 @@
|
|||
<skip>${skip.when.is.release.used}</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
<!-- following plugins added just for test they were configured globally -->
|
||||
<plugin>
|
||||
<groupId>org.codehaus.gmaven</groupId>
|
||||
<artifactId>groovy-maven-plugin</artifactId>
|
||||
<version>2.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>process-classes</phase>
|
||||
<goals>
|
||||
<goal>execute</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<defaults>
|
||||
<name>tag</name>
|
||||
</defaults>
|
||||
<source>
|
||||
def fileContents = new File("${project.basedir}/CHANGELOG.md").getText('UTF-8')
|
||||
matcher = (fileContents =~ /(?s).\[v$project.version\].*?/)
|
||||
if (!matcher.find()) {
|
||||
throw new IllegalArgumentException("Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md")
|
||||
}
|
||||
assert matcher[0][1]: "Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md"
|
||||
</source>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin> </plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<!-- Just a profile activation test for jdk > 8 -->
|
||||
<profile>
|
||||
<id>gcube-developer-next</id>
|
||||
<activation>
|
||||
<activeByDefault>false</activeByDefault>
|
||||
<jdk>[9,)</jdk>
|
||||
<property>
|
||||
<name>!Release</name>
|
||||
</property>
|
||||
</activation>
|
||||
<properties>
|
||||
<javadoc.opts>-Xdoclint:none</javadoc.opts>
|
||||
<java_version>11</java_version>
|
||||
<maven.compiler.source>${java_version}</maven.compiler.source>
|
||||
<maven.compiler.target>${java_version}</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<!-- Repositories for dependency resolution -->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>gcube-snapshots</id>
|
||||
<name>gCube Snapshots</name>
|
||||
<url>${repository.snapshots.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-releases</id>
|
||||
<name>gCube Releases</name>
|
||||
<url>${repository.releases.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-externals</id>
|
||||
<name>gCube Externals</name>
|
||||
<url>${repository.externals.readonly}</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<!-- Repositories for deployments -->
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>gcube-snapshots</id>
|
||||
<name>gCube Snapshots</name>
|
||||
<url>${repository.snapshots.url}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>${plugin.build.helper.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<!-- sets the skip.when.is.release.used property to true if SNAPSHOT is NOT used, -->
|
||||
<!-- to the project version otherwise -->
|
||||
<id>build-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>skip.when.is.release.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>^((?!-SNAPSHOT).)*$</regex>
|
||||
<replacement>true</replacement>
|
||||
<failIfNoMatch>false</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${plugin.deploy.version}</version>
|
||||
<configuration>
|
||||
<skip>${skip.when.is.release.used}</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-install-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
<configuration>
|
||||
<skip>${skip.when.is.release.used}</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- following plugins added just for test they were configured globally -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-enforcer-plugin</artifactId>
|
||||
<version>${plugin.enforcer.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>enforce</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>enforce</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<rules>
|
||||
<requireMavenVersion>
|
||||
<version>[${maven.version},)</version>
|
||||
<message>Check for Maven version >=${maven.version} failed. Update your Maven
|
||||
install.
|
||||
</message>
|
||||
</requireMavenVersion>
|
||||
<requireJavaVersion>
|
||||
<version>[11,)</version>
|
||||
</requireJavaVersion>
|
||||
</rules>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.gmaven</groupId>
|
||||
<artifactId>groovy-maven-plugin</artifactId>
|
||||
<version>2.1.1</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>process-classes</phase>
|
||||
<goals>
|
||||
<goal>execute</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<defaults>
|
||||
<name>tag</name>
|
||||
</defaults>
|
||||
<source>
|
||||
def fileContents = new File("${project.basedir}/CHANGELOG.md").getText('UTF-8')
|
||||
matcher = (fileContents =~ /(?s).\[v$project.version\].*?/)
|
||||
if (!matcher.find()) {
|
||||
throw new IllegalArgumentException("Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md")
|
||||
}
|
||||
assert matcher[0][1]: "Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md"
|
||||
</source>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<!-- end test -->
|
||||
<!-- Just a profile activation test for jdk 11 -->
|
||||
<profile>
|
||||
<id>gcube-developer-old</id>
|
||||
<activation>
|
||||
<jdk>[, 1.8)</jdk>
|
||||
<property>
|
||||
<name>!Release</name>
|
||||
</property>
|
||||
</activation>
|
||||
|
||||
<!-- Repositories for dependency resolution -->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>gcube-snapshots</id>
|
||||
<name>gCube Snapshots</name>
|
||||
<url>${repository.snapshots.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-releases</id>
|
||||
<name>gCube Releases</name>
|
||||
<url>${repository.releases.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-externals</id>
|
||||
<name>gCube Externals</name>
|
||||
<url>${repository.externals.readonly}</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<!-- Repositories for deployments -->
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>gcube-snapshots</id>
|
||||
<name>gCube Snapshots</name>
|
||||
<url>${repository.snapshots.url}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>${plugin.build.helper.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<!-- sets the skip.when.is.release.used property to true if SNAPSHOT is NOT used, -->
|
||||
<!-- to the project version otherwise -->
|
||||
<id>build-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>skip.when.is.release.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>^((?!-SNAPSHOT).)*$</regex>
|
||||
<replacement>true</replacement>
|
||||
<failIfNoMatch>false</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${plugin.deploy.version}</version>
|
||||
<configuration>
|
||||
<skip>${skip.when.is.release.used}</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- following plugins added just for test they were configured globally -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-enforcer-plugin</artifactId>
|
||||
<version>${plugin.enforcer.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>enforce</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>enforce</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<rules>
|
||||
<requireMavenVersion>
|
||||
<version>[${maven.version},)</version>
|
||||
<message>Check for Maven version >=${maven.version} failed. Update your Maven
|
||||
install.
|
||||
</message>
|
||||
</requireMavenVersion>
|
||||
<requireJavaVersion>
|
||||
<version>[1.8,)</version>
|
||||
</requireJavaVersion>
|
||||
</rules>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.gmaven</groupId>
|
||||
<artifactId>groovy-maven-plugin</artifactId>
|
||||
<version>2.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>process-classes</phase>
|
||||
<goals>
|
||||
<goal>execute</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<defaults>
|
||||
<name>tag</name>
|
||||
</defaults>
|
||||
<source>
|
||||
def fileContents = new File("${project.basedir}/CHANGELOG.md").getText('UTF-8')
|
||||
matcher = (fileContents =~ /(?s).\[v$project.version\].*?/)
|
||||
if (!matcher.find()) {
|
||||
throw new IllegalArgumentException("Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md")
|
||||
}
|
||||
assert matcher[0][1]: "Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md"
|
||||
</source>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<!-- end test -->
|
||||
<profile>
|
||||
<id>jenkins-releases</id>
|
||||
|
||||
<activation>
|
||||
<activeByDefault>false</activeByDefault>
|
||||
<jdk>[1.8,9)</jdk>
|
||||
<property>
|
||||
<name>jenkins-releases</name>
|
||||
<value>true</value>
|
||||
|
@ -407,11 +648,145 @@
|
|||
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
<profile>
|
||||
<id>jenkins-staging</id>
|
||||
<id>jenkins-releases-next</id>
|
||||
<activation>
|
||||
<activeByDefault>false</activeByDefault>
|
||||
<jdk>[9,)</jdk>
|
||||
<property>
|
||||
<name>jenkins-releases</name>
|
||||
<value>true</value>
|
||||
</property>
|
||||
</activation>
|
||||
<!-- Repositories for dependency resolution -->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>gcube-releases</id>
|
||||
<name>gCube Releases</name>
|
||||
<url>${repository.releases.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-jenkins-staging</id>
|
||||
<name>gCube Jenkins Staging</name>
|
||||
<url>${repository.jenkins.staging.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-jenkins-staging-next</id>
|
||||
<name>gCube Jenkins Staging Next</name>
|
||||
<url>${repository.jenkins.staging.java11.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-staging</id>
|
||||
<name>gCube Staging</name>
|
||||
<url>${repository.staging.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-externals</id>
|
||||
<name>gCube Externals</name>
|
||||
<url>${repository.externals.readonly}</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<!-- Repositories for deployments -->
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>gcube-releases</id>
|
||||
<name>gCube Releases</name>
|
||||
<url>${repository.releases.url}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
|
||||
<build>
|
||||
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>${plugin.build.helper.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<!-- sets the skip.when.is.snapshot.used property to true if SNAPSHOT was used,
|
||||
to the project version otherwise -->
|
||||
<id>build-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>skip.when.is.snapshot.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>.*-SNAPSHOT$</regex>
|
||||
<replacement>true</replacement>
|
||||
<failIfNoMatch>false</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<!--fails if SNAPSHOT was used-->
|
||||
<id>fail-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>fail.when.is.snapshot.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>^((?!.*-SNAPSHOT).)*$</regex>
|
||||
<failIfNoMatch>true</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${plugin.deploy.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>fail-if-snapshot-used</id>
|
||||
<phase>deploy</phase>
|
||||
<configuration>
|
||||
<skip>${skip.when.is.snapshot.used}</skip>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>io.github.olivierlemasle.maven</groupId>
|
||||
<artifactId>plaintext-maven-plugin</artifactId>
|
||||
<version>${plugin.plaintext.version}</version>
|
||||
<configuration>
|
||||
<outputDirectory>${env.MAVEN_CONFIG_FOLDER}</outputDirectory>
|
||||
<files>
|
||||
<file>
|
||||
<name>build_commits.csv</name>
|
||||
<append>true</append>
|
||||
<lines>
|
||||
<line>
|
||||
${project.groupId},${project.artifactId},${project.version},${project.scm.url},${buildNumber},${repository.releases.url},${project.build.finalName},${project.packaging}
|
||||
</line>
|
||||
</lines>
|
||||
</file>
|
||||
</files>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-file</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>write</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
|
||||
<finalName>${project.artifactId}-${project.version}</finalName>
|
||||
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>jenkins-staging-old</id>
|
||||
<activation>
|
||||
<jdk>[,1.8)</jdk>
|
||||
<property>
|
||||
<name>jenkins-staging</name>
|
||||
<value>true</value>
|
||||
|
@ -532,6 +907,295 @@
|
|||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<!-- following plugins added just for test they were configured globally -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-enforcer-plugin</artifactId>
|
||||
<version>${plugin.enforcer.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>enforce</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>enforce</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<rules>
|
||||
<requireMavenVersion>
|
||||
<version>[${maven.version},)</version>
|
||||
<message>Check for Maven version >=${maven.version} failed. Update your Maven
|
||||
install.
|
||||
</message>
|
||||
</requireMavenVersion>
|
||||
<requireJavaVersion>
|
||||
<version>[1.8,)</version>
|
||||
</requireJavaVersion>
|
||||
</rules>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
<finalName>${project.artifactId}-${project.version}</finalName>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>jenkins-staging</id>
|
||||
<activation>
|
||||
<jdk>[1.8,9)</jdk>
|
||||
<property>
|
||||
<name>jenkins-staging</name>
|
||||
<value>true</value>
|
||||
</property>
|
||||
</activation>
|
||||
|
||||
<!-- Repositories for dependency resolution -->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>gcube-staging-jenkins</id>
|
||||
<name>gCube Jenkins Staging</name>
|
||||
<url>${repository.jenkins.staging.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-staging</id>
|
||||
<name>gCube Staging</name>
|
||||
<url>${repository.staging.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-releases</id>
|
||||
<name>gCube Releases</name>
|
||||
<url>${repository.releases.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-externals</id>
|
||||
<name>gCube Externals</name>
|
||||
<url>${repository.externals.readonly}</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<!-- Repositories for deployments -->
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>gcube-staging-jenkins</id>
|
||||
<name>gCube Staging</name>
|
||||
<url>${repository.jenkins.staging.url}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
<build>
|
||||
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>${plugin.build.helper.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<!-- sets the skip.when.is.snapshot.used property to true if SNAPSHOT was used,
|
||||
to the project version otherwise -->
|
||||
<id>build-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>skip.when.is.snapshot.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>.*-SNAPSHOT$</regex>
|
||||
<replacement>true</replacement>
|
||||
<failIfNoMatch>false</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<!--fails if SNAPSHOT was used-->
|
||||
<id>fail-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>fail.when.is.snapshot.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>^((?!.*-SNAPSHOT).)*$</regex>
|
||||
<failIfNoMatch>true</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>io.github.olivierlemasle.maven</groupId>
|
||||
<artifactId>plaintext-maven-plugin</artifactId>
|
||||
<version>${plugin.plaintext.version}</version>
|
||||
<configuration>
|
||||
<outputDirectory>${env.MAVEN_CONFIG_FOLDER}</outputDirectory>
|
||||
<files>
|
||||
<file>
|
||||
<name>build_commits.csv</name>
|
||||
<append>true</append>
|
||||
<lines>
|
||||
<line>
|
||||
${project.groupId},${project.artifactId},${project.version},${project.scm.url},${buildNumber},${repository.jenkins.staging.url},${project.build.finalName},${project.packaging}
|
||||
</line>
|
||||
</lines>
|
||||
</file>
|
||||
</files>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-file</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>write</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${plugin.deploy.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>fail-if-snapshot-used</id>
|
||||
<phase>deploy</phase>
|
||||
<configuration>
|
||||
<skip>${skip.when.is.snapshot.used}</skip>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
<finalName>${project.artifactId}-${project.version}</finalName>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>jenkins-staging-next</id>
|
||||
<activation>
|
||||
<jdk>[9,)</jdk>
|
||||
<property>
|
||||
<name>jenkins-staging</name>
|
||||
<value>true</value>
|
||||
</property>
|
||||
</activation>
|
||||
|
||||
<!-- Repositories for dependency resolution -->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>gcube-staging-jenkins</id>
|
||||
<name>gCube Jenkins Staging</name>
|
||||
<url>${repository.jenkins.staging.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-staging-jenkins-java11</id>
|
||||
<name>gCube Jenkins Staging Java11</name>
|
||||
<url>${repository.jenkins.staging.java11.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-staging</id>
|
||||
<name>gCube Staging</name>
|
||||
<url>${repository.staging.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-releases</id>
|
||||
<name>gCube Releases</name>
|
||||
<url>${repository.releases.url}</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>gcube-externals</id>
|
||||
<name>gCube Externals</name>
|
||||
<url>${repository.externals.readonly}</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<!-- Repositories for deployments -->
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>gcube-staging-jenkins-java11</id>
|
||||
<name>gCube Staging</name>
|
||||
<url>${repository.jenkins.staging.java11.url}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
<build>
|
||||
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>${plugin.build.helper.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<!-- sets the skip.when.is.snapshot.used property to true if SNAPSHOT was used,
|
||||
to the project version otherwise -->
|
||||
<id>build-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>skip.when.is.snapshot.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>.*-SNAPSHOT$</regex>
|
||||
<replacement>true</replacement>
|
||||
<failIfNoMatch>false</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<!--fails if SNAPSHOT was used-->
|
||||
<id>fail-helper-regex-is-snapshot-used</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>regex-property</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<name>fail.when.is.snapshot.used</name>
|
||||
<value>${project.version}</value>
|
||||
<regex>^((?!.*-SNAPSHOT).)*$</regex>
|
||||
<failIfNoMatch>true</failIfNoMatch>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>io.github.olivierlemasle.maven</groupId>
|
||||
<artifactId>plaintext-maven-plugin</artifactId>
|
||||
<version>${plugin.plaintext.version}</version>
|
||||
<configuration>
|
||||
<outputDirectory>${env.MAVEN_CONFIG_FOLDER}</outputDirectory>
|
||||
<files>
|
||||
<file>
|
||||
<name>build_commits.csv</name>
|
||||
<append>true</append>
|
||||
<lines>
|
||||
<line>
|
||||
${project.groupId},${project.artifactId},${project.version},${project.scm.url},${buildNumber},${repository.jenkins.staging.java11.url},${project.build.finalName},${project.packaging}
|
||||
</line>
|
||||
</lines>
|
||||
</file>
|
||||
</files>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-file</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>write</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${plugin.deploy.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>fail-if-snapshot-used</id>
|
||||
<phase>deploy</phase>
|
||||
<configuration>
|
||||
<skip>${skip.when.is.snapshot.used}</skip>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
<finalName>${project.artifactId}-${project.version}</finalName>
|
||||
</build>
|
||||
|
@ -1131,6 +1795,9 @@
|
|||
<repository.jenkins.staging.url>
|
||||
https://nexus.d4science.org/nexus/content/repositories/gcube-staging-jenkins
|
||||
</repository.jenkins.staging.url>
|
||||
<repository.jenkins.staging.java11.url>
|
||||
https://nexus.d4science.org/nexus/content/repositories/gcube-staging-jenkins-java11
|
||||
</repository.jenkins.staging.java11.url>
|
||||
<repository.staging.url>https://nexus.d4science.org/nexus/content/repositories/gcube-staging/
|
||||
</repository.staging.url>
|
||||
|
||||
|
|
Loading…
Reference in New Issue