2019-05-16 05:19:17 +02:00
|
|
|
# MAVEN PARENT POM
|
|
|
|
|
|
|
|
A parent pom for all the gCube artifacts.
|
|
|
|
|
|
|
|
# Enforcements
|
2023-07-21 12:58:38 +02:00
|
|
|
* Java 8 (target and source) unless otherwise specified inside the pom
|
2019-05-16 05:19:17 +02:00
|
|
|
* OpenJDK as target Java VM.
|
2020-06-07 16:45:51 +02:00
|
|
|
* Maven 3.3.9+
|
2020-06-25 03:21:05 +02:00
|
|
|
* README.md, CHANGELOG.md and LICENSE.md are present in the baseDir of each Maven module
|
|
|
|
* CHANGELOG.md must declare a tag [v+Pom version] (e.g. [v1.0.0])
|
2019-05-22 03:58:38 +02:00
|
|
|
|
|
|
|
# Build Profiles
|
|
|
|
|
2023-07-21 12:58:38 +02:00
|
|
|
The build profiles are separated in three main branches: developer, staging, releases.
|
|
|
|
Each branch has a set of profile based on the idk.
|
|
|
|
The developer branch contains the profiles related to the snapshot build:
|
2023-07-26 16:25:54 +02:00
|
|
|
|
2023-07-21 12:58:38 +02:00
|
|
|
* gcore-legacy jdk7
|
|
|
|
* gcube-legacy - jdk8
|
|
|
|
* gcube-official -jdk11
|
|
|
|
* gcube-experimental - jdk17
|
|
|
|
|
|
|
|
In the same way are organised the other branch profiles related to the staging (integration) phase and to the release phase.
|
|
|
|
|
|
|
|
In addition there are a set of common profiles useful in order to avoid replication of plugins and rules definitions:
|
2023-07-26 16:25:54 +02:00
|
|
|
|
2023-07-21 12:58:38 +02:00
|
|
|
* common-snapshot
|
|
|
|
* common-release
|
|
|
|
* dry-run
|
|
|
|
* disable-java8-doclint
|
|
|
|
* set-local-classpath
|
|
|
|
* generate-distribution-packages
|
|
|
|
|
|
|
|
Below the descriptions of the most used profiles by gCube components:
|
|
|
|
|
|
|
|
## common-snapshot
|
|
|
|
This profile defines the common plugin used by all the snapshot profiles
|
|
|
|
|
|
|
|
## common-releases
|
|
|
|
This profile defines the common plugin used by all the staging and release profiles
|
|
|
|
|
|
|
|
## gcube-official
|
2019-09-12 06:01:33 +02:00
|
|
|
* Dependencies resolved against local, gcube-snapshots and gcube-releases
|
|
|
|
* Snapshot artifacts installed to local
|
2019-05-22 03:58:38 +02:00
|
|
|
* Snapshot artifacts deployed to gcube-snapshots
|
|
|
|
* Deployments of releases artifacts are not permitted
|
|
|
|
|
2023-07-21 12:58:38 +02:00
|
|
|
## jenkins-staging-official
|
2019-09-21 05:11:51 +02:00
|
|
|
* Dependencies resolved against local-staging, gcube-jenkins-staging, gcube-staging and gcube-releases
|
2019-09-12 06:01:33 +02:00
|
|
|
* Release/snapshot artifacts installed to local-staging
|
|
|
|
* Release/snapshot artifacts deployed to gcube-jenkins-staging
|
|
|
|
|
2019-05-22 03:58:38 +02:00
|
|
|
## jenkins-releases
|
2019-09-21 05:11:51 +02:00
|
|
|
* Dependencies resolved against local-releases, gcube-releases, gcube-jenkins-staging and gcube staging
|
2019-09-12 06:01:33 +02:00
|
|
|
* Release artifacts installed to local-releases
|
2019-05-22 03:58:38 +02:00
|
|
|
* Deployments of snapshot artifacts are not permitted
|
|
|
|
* Release artifacts deployed to gcube-releases
|
|
|
|
|
2019-05-29 00:48:39 +02:00
|
|
|
## dry-run
|
|
|
|
This profile disables the deployment of the artifacts.
|
|
|
|
|
2019-05-22 03:58:38 +02:00
|
|
|
## disable-java8-doclint
|
|
|
|
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.
|
|
|
|
|
2023-07-21 12:58:38 +02:00
|
|
|
## set-local-classpath
|
|
|
|
This profile set a generic folder that will be added to the classpath
|
|
|
|
|