diff --git a/CHANGELOG.md b/CHANGELOG.md index 415795e..1141b31 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,8 @@ # Changelog for Maven-Parent -## [v1.1.0] [r4.23.0] 2020-01-27 +## [v1.1.0] - 2020-01-27 + +### Features * New build profiles to support CI/CD * Enforcement for: @@ -8,5 +10,5 @@ * OpenJDK as target Java VM. * Maven 3.3.9+ -## [v1.0.0] [r4.0.0] 2017-12-20 +## [v1.0.0] - 2017-12-20 diff --git a/README.md b/README.md index caf0c60..6a2fced 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,8 @@ A parent pom for all the gCube artifacts. * Java 8 (target and source) * OpenJDK as target Java VM. * Maven 3.3.9+ +* 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]) # Build Profiles diff --git a/pom.xml b/pom.xml index b6b8d10..e485450 100644 --- a/pom.xml +++ b/pom.xml @@ -157,6 +157,15 @@ + + + ${project.basedir} + + LICENSE.md + + META-INF + + org.codehaus.mojo @@ -319,8 +328,17 @@ - + + + ${project.basedir} + + LICENSE.md + + META-INF + + + org.codehaus.mojo build-helper-maven-plugin @@ -448,8 +466,17 @@ - + + + ${project.basedir} + + LICENSE.md + + META-INF + + + org.codehaus.mojo build-helper-maven-plugin @@ -898,6 +925,59 @@ + + org.apache.maven.plugins + maven-enforcer-plugin + 3.0.0-M3 + + + enforce-files-exist + + enforce + + + + + + ${project.basedir}/README.md + ${project.basedir}/LICENSE.md + ${project.basedir}/CHANGELOG.md + + + + true + + + + + + + org.codehaus.gmaven + groovy-maven-plugin + 2.0 + + + process-classes + + execute + + + + tag + + + 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" + + + + + +