diff --git a/.externalToolBuilders/asciidoctor.launch b/.externalToolBuilders/asciidoctor.launch
index 57fb8f3242..44a1f8be7a 100644
--- a/.externalToolBuilders/asciidoctor.launch
+++ b/.externalToolBuilders/asciidoctor.launch
@@ -1,10 +1,11 @@
-
+
+
-
+
diff --git a/.externalToolBuilders/compile sass.launch b/.externalToolBuilders/compile sass.launch
index 09167ca136..b5eb54bf6b 100644
--- a/.externalToolBuilders/compile sass.launch
+++ b/.externalToolBuilders/compile sass.launch
@@ -1,6 +1,7 @@
+
diff --git a/.externalToolBuilders/site [target].launch b/.externalToolBuilders/site [target][no-report].launch
similarity index 67%
rename from .externalToolBuilders/site [target].launch
rename to .externalToolBuilders/site [target][no-report].launch
index 217252139f..b5324402ff 100644
--- a/.externalToolBuilders/site [target].launch
+++ b/.externalToolBuilders/site [target][no-report].launch
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/.travis.yml b/.travis.yml
index e4c46cc5c4..49016a5f46 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -25,62 +25,282 @@ addons:
branches:
except:
- gh-.*
-
+
+
before_install:
- - echo "MAVEN_OPTS='-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m'" > ~/.mavenrc # see https://github.com/travis-ci/travis-ci/issues/4613
+ #- echo "MAVEN_OPTS='-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m'" > ~/.mavenrc # see https://github.com/travis-ci/travis-ci/issues/4613
- set -o pipefail
- # detect current Java version in order to execute classpath tests only for this version
- - |
- java_version=$(java -version 2>&1 | grep -i version | cut -d'"' -f2)
- major=$(echo $java_version | cut -d'.' -f1)
- [ "1" = "$major" ] \
- && echo "$java_version" | cut -d'.' -f2 > "$HOME/java-version.info" \
- || echo "$java_version" | cut -d'.' -f1 > "$HOME/java-version.info"
- - JAVA_RELEASE_VERSION=$(cat "$HOME/java-version.info")
- # start spring initializr for Ogham in background
- - |
- touch "$HOME/spring-initializr.log"
- spring-initializr/./mvnw clean spring-boot:run -f spring-initializr > "$HOME/spring-initializr.log" &
- echo "$!" > "$HOME/spring-initializr.pid"
- tail -f "$HOME/spring-initializr.log" &
- - grep -q 'Started SpringInitializrApplication' <(tail -f "$HOME/spring-initializr.log")
- - cat "$HOME/spring-initializr.log"
- - |
- [ "$JAVA_RELEASE_VERSION" != "8" ] && exit 0
- touch "$HOME/spring-initializr-older-versions.log"
- spring-initializr/./mvnw clean spring-boot:run -f spring-initializr -Dspring-boot.version=1.5.21.RELEASE -Dspring-initializr.version=0.4.0.RELEASE -Drun.jvmArguments="-Dspring.profiles.active=older-versions" > "$HOME/spring-initializr-older-versions.log" &
- echo "$!" > "$HOME/spring-initializr-older-versions.pid"
- tail -f "$HOME/spring-initializr-older-versions.log" &
- - grep -q 'Started SpringInitializrApplication' <(tail -f "$HOME/spring-initializr-older-versions.log")
- - cat "$HOME/spring-initializr-older-versions.log"
- # generate projects used to test the classpath on the current Ogham version
- - OGHAM_VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
- # TODO: it seems that parallel execution sometimes fails on Travis (seems to be spring-initializr that fails, why ?)
- - ./mvnw spring-boot:run -pl :ogham-test-classpath -Dspring-boot.run.arguments="$HOME/classpath-tests" -Dspring-boot.run.jvmArguments="-Drunner.parallel=false -Dogham-version=$OGHAM_VERSION -Dspring.initializer.url=http://localhost:8050/starter.zip"
- - |
- [ "$JAVA_RELEASE_VERSION" != "8" ] && exit 0
- ./mvnw spring-boot:run -pl :ogham-test-classpath -Dspring-boot.run.arguments="$HOME/classpath-tests" -Dspring-boot.run.jvmArguments="-Drunner.parallel=false -Dogham-version=$OGHAM_VERSION -Dspring.profiles.active=older-versions -Dspring.initializer.url=http://localhost:8052/starter.zip"
- - ls -l "$HOME"
- - ls -l "$HOME/classpath-tests"
- # stop spring initializr
- - kill `cat "$HOME/spring-initializr.pid"` || echo ""
- - kill `cat "$HOME/spring-initializr-older-versions.pid"` || echo ""
- - TEST_FOLDER=$(echo "JAVA_$JAVA_RELEASE_VERSION")
- - echo $TEST_FOLDER
- - ls -l "$HOME/classpath-tests/$TEST_FOLDER"
-script:
- - ./mvnw clean install -DskipTests=true -Dmaven.javadoc.skip=true -Dskip.integration.tests=true -Dskip.unit.tests=true -B -q
- - ./mvnw test verify -Dmaven.test.redirectTestOutputToFile=true -fae -B -q
- - ./mvnw javadoc:javadoc -fae -B | grep -Ei '(error|warn)'
- # execute generated classpath tests for the right java version
- - $HOME/classpath-tests/$TEST_FOLDER/./mvnw test -T 2.5C -f "$HOME/classpath-tests/$TEST_FOLDER/pom.xml" -Dmaven.test.redirectTestOutputToFile=true -fae -q -B #| grep -Ei '(error|exception|Tests run:)'
-after_success:
- - ./mvnw sonar:sonar -B | grep -Ei '(warn|error|ANALYSIS SUCCESSFUL)'
- - ./mvnw deploy --settings .travis-settings.xml -DskipTests=true -B | grep -Ei '(Uploading|Downloading|Uploaded|Downloaded)'
-# TODO: after error -> grab logs and send it
-after_failure:
- - cat "$HOME/spring-initializr.log"
- - cat "$HOME/spring-initializr-older-versions.log"
+
+jobs:
+ include:
+ - stage: "Prepare"
+ jdk: oraclejdk8
+ script:
+ - TEST_FOLDER=JAVA_8 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+ - TEST_FOLDER=JAVA_8 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8052 INITIALIZER_ARGS='-Dspring-boot.version=1.5.21.RELEASE -Dspring-initializr.version=0.4.0.RELEASE -Drun.jvmArguments="-Dspring.profiles.active=older-versions"' GENERATION_ARGS="-Dspring.profiles.active=older-versions" build/./generate-classpath-tests.sh
+ - stage: "Prepare"
+ jdk: openjdk8
+ script:
+ - TEST_FOLDER=JAVA_8 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+ - TEST_FOLDER=JAVA_8 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8052 INITIALIZER_ARGS='-Dspring-boot.version=1.5.21.RELEASE -Dspring-initializr.version=0.4.0.RELEASE -Drun.jvmArguments="-Dspring.profiles.active=older-versions"' GENERATION_ARGS="-Dspring.profiles.active=older-versions" build/./generate-classpath-tests.sh
+ - stage: "Prepare"
+ jdk: oraclejdk9
+ script:
+ - TEST_FOLDER=JAVA_9 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+ - stage: "Prepare"
+ jdk: openjdk9
+ script:
+ - TEST_FOLDER=JAVA_9 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+ - stage: "Prepare"
+ jdk: openjdk10
+ script:
+ - TEST_FOLDER=JAVA_10 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+ - stage: "Prepare"
+ jdk: oraclejdk11
+ script:
+ - TEST_FOLDER=JAVA_11 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+ - stage: "Prepare"
+ jdk: openjdk11
+ script:
+ - TEST_FOLDER=JAVA_11 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+ - stage: "Prepare"
+ jdk: openjdk12
+ script:
+ - TEST_FOLDER=JAVA_12 INITIALIZER_NAME=spring-initializr INITIALIZER_PORT=8050 build/./generate-classpath-tests.sh
+
+ - stage: "Build"
+ jdk: oraclejdk8
+ script:
+ - build/./build.sh
+ - stage: "Build"
+ jdk: openjdk8
+ script:
+ - build/./build.sh
+ - stage: "Build"
+ jdk: oraclejdk9
+ script:
+ - build/./build.sh
+ - stage: "Build"
+ jdk: openjdk9
+ script:
+ - build/./build.sh
+ - stage: "Build"
+ jdk: openjdk10
+ script:
+ - build/./build.sh
+ - stage: "Build"
+ jdk: oraclejdk11
+ script:
+ - build/./build.sh
+ - stage: "Build"
+ jdk: openjdk11
+ script:
+ - build/./build.sh
+ - stage: "Build"
+ jdk: openjdk12
+ script:
+ - build/./build.sh
+
+ - stage: test
+ name: "Unit Tests"
+ jdk: oraclejdk8
+ script: build/./run-unit-tests.sh
+ - stage: test
+ name: "Unit Tests"
+ jdk: openjdk8
+ script: build/./run-unit-tests.sh
+ - stage: test
+ name: "Unit Tests"
+ jdk: oraclejdk9
+ script: build/./run-unit-tests.sh
+ - stage: test
+ name: "Unit Tests"
+ jdk: openjdk9
+ script: build/./run-unit-tests.sh
+ - stage: test
+ name: "Unit Tests"
+ jdk: openjdk10
+ script: build/./run-unit-tests.sh
+ - stage: test
+ name: "Unit Tests"
+ jdk: oraclejdk11
+ script: build/./run-unit-tests.sh
+ - stage: test
+ name: "Unit Tests"
+ jdk: openjdk11
+ script: build/./run-unit-tests.sh
+ - stage: test
+ name: "Unit Tests"
+ jdk: openjdk12
+ script: build/./run-unit-tests.sh
+
+ - stage: test
+ name: "Integration Tests"
+ jdk: oraclejdk8
+ script: build/./run-integration-tests.sh
+ - stage: test
+ name: "Integration Tests"
+ jdk: openjdk8
+ script: build/./run-integration-tests.sh
+ - stage: test
+ name: "Integration Tests"
+ jdk: oraclejdk9
+ script: build/./run-integration-tests.sh
+ - stage: test
+ name: "Integration Tests"
+ jdk: openjdk9
+ script: build/./run-integration-tests.sh
+ - stage: test
+ name: "Integration Tests"
+ jdk: openjdk10
+ script: build/./run-integration-tests.sh
+ - stage: test
+ name: "Integration Tests"
+ jdk: oraclejdk11
+ script: build/./run-integration-tests.sh
+ - stage: test
+ name: "Integration Tests"
+ jdk: openjdk11
+ script: build/./run-integration-tests.sh
+ - stage: test
+ name: "Integration Tests"
+ jdk: openjdk12
+ script: build/./run-integration-tests.sh
+
+ - stage: test
+ name: "Classpath Tests"
+ jdk: oraclejdk8
+ script: TEST_FOLDER=JAVA_8 build/./run-classpath-tests.sh
+ - stage: test
+ name: "Classpath Tests"
+ jdk: openjdk8
+ script: TEST_FOLDER=JAVA_8 build/./run-classpath-tests.sh
+ - stage: test
+ name: "Classpath Tests"
+ jdk: oraclejdk9
+ script: TEST_FOLDER=JAVA_9 build/./run-classpath-tests.sh
+ - stage: test
+ name: "Classpath Tests"
+ jdk: openjdk9
+ script: TEST_FOLDER=JAVA_9 build/./run-classpath-tests.sh
+ - stage: test
+ name: "Classpath Tests"
+ jdk: openjdk10
+ script: TEST_FOLDER=JAVA_10 build/./run-classpath-tests.sh
+ - stage: test
+ name: "Classpath Tests"
+ jdk: oraclejdk11
+ script: TEST_FOLDER=JAVA_11 build/./run-classpath-tests.sh
+ - stage: test
+ name: "Classpath Tests"
+ jdk: openjdk11
+ script: TEST_FOLDER=JAVA_11 build/./run-classpath-tests.sh
+ - stage: test
+ name: "Classpath Tests"
+ jdk: openjdk12
+ script: TEST_FOLDER=JAVA_12 build/./run-classpath-tests.sh
+
+ - stage: "Analyze"
+ jdk: oraclejdk8
+ script: build/./analyze.sh
+
+ - stage: "Documentation"
+ jdk: oraclejdk8
+ script: build/./generate-documentation.sh
+
+
+ - stage: "Deploy"
+ jdk: oraclejdk8
+ deploy:
+ skip_cleanup: true
+ provider: surge
+ project: $HOME/docs/
+ domain: ogham-documentation.surge.sh
+ on:
+ all_branches: true
+
+stages:
+ - "Prepare"
+ - "Build"
+ - test
+ - "Analyze"
+ - "Documentation"
+ - "Deploy"
+#
+#before_install:
+# - echo "MAVEN_OPTS='-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m'" > ~/.mavenrc # see https://github.com/travis-ci/travis-ci/issues/4613
+# - set -o pipefail
+# # detect current Java version in order to execute classpath tests only for this version
+# - |
+# java_version=$(java -version 2>&1 | grep -i version | cut -d'"' -f2)
+# major=$(echo $java_version | cut -d'.' -f1)
+# [ "1" = "$major" ] \
+# && echo "$java_version" | cut -d'.' -f2 > "$HOME/java-version.info" \
+# || echo "$java_version" | cut -d'.' -f1 > "$HOME/java-version.info"
+# - JAVA_RELEASE_VERSION=$(cat "$HOME/java-version.info")
+# # start spring initializr for Ogham in background
+# - |
+# touch "$HOME/spring-initializr.log"
+# spring-initializr/./mvnw clean spring-boot:run -f spring-initializr > "$HOME/spring-initializr.log" &
+# echo "$!" > "$HOME/spring-initializr.pid"
+# tail -f "$HOME/spring-initializr.log" &
+# grep -q 'Started SpringInitializrApplication' <(tail -f "$HOME/spring-initializr.log")
+# #cat "$HOME/spring-initializr.log"
+# - |
+# if [ "$JAVA_RELEASE_VERSION" == "8" ]; then
+# touch "$HOME/spring-initializr-older-versions.log"
+# spring-initializr/./mvnw clean spring-boot:run -f spring-initializr -Dspring-boot.version=1.5.21.RELEASE -Dspring-initializr.version=0.4.0.RELEASE -Drun.jvmArguments="-Dspring.profiles.active=older-versions" > "$HOME/spring-initializr-older-versions.log" &
+# echo "$!" > "$HOME/spring-initializr-older-versions.pid"
+# tail -f "$HOME/spring-initializr-older-versions.log" &
+# grep -q 'Started SpringInitializrApplication' <(tail -f "$HOME/spring-initializr-older-versions.log")
+# #cat "$HOME/spring-initializr-older-versions.log"
+# fi
+# # generate projects used to test the classpath on the current Ogham version
+# - OGHAM_VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+# # TODO: it seems that parallel execution sometimes fails on Travis (seems to be spring-initializr that fails, why ?)
+# - ./mvnw spring-boot:run -pl :ogham-test-classpath -Dspring-boot.run.arguments="$HOME/classpath-tests" -Dspring-boot.run.jvmArguments="-Drunner.parallel=false -Dogham-version=$OGHAM_VERSION -Dspring.initializer.url=http://localhost:8050/starter.zip"
+# - |
+# if [ "$JAVA_RELEASE_VERSION" == "8" ]; then
+# ./mvnw spring-boot:run -pl :ogham-test-classpath -Dspring-boot.run.arguments="$HOME/classpath-tests" -Dspring-boot.run.jvmArguments="-Drunner.parallel=false -Dogham-version=$OGHAM_VERSION -Dspring.profiles.active=older-versions -Dspring.initializer.url=http://localhost:8052/starter.zip"
+# fi
+# - ls -l "$HOME"
+# - ls -l "$HOME/classpath-tests"
+# # stop spring initializr
+# - kill `cat "$HOME/spring-initializr.pid"` || echo ""
+# - kill `cat "$HOME/spring-initializr-older-versions.pid"` || echo ""
+# - TEST_FOLDER=$(echo "JAVA_$JAVA_RELEASE_VERSION")
+# - echo $TEST_FOLDER
+# - ls -l "$HOME/classpath-tests/$TEST_FOLDER"
+#script:
+# - ./mvnw clean install -DskipTests=true -Dmaven.javadoc.skip=true -Dskip.integration.tests=true -Dskip.unit.tests=true -B -q
+# - ./mvnw test verify -Dmaven.test.redirectTestOutputToFile=true -fae -B -q
+# - ./mvnw javadoc:javadoc -fae -B | grep -Ei '(error|warn)'
+# # execute generated classpath tests for the right java version
+# - $HOME/classpath-tests/$TEST_FOLDER/./mvnw test -T 2.5C -f "$HOME/classpath-tests/$TEST_FOLDER/pom.xml" -Dmaven.test.redirectTestOutputToFile=true -fae -q -B #| grep -Ei '(error|exception|Tests run:)'
+#after_success:
+# - ./mvnw sonar:sonar -B | grep -Ei '(warn|error|ANALYSIS SUCCESSFUL)'
+# - bash <(curl -s https://codecov.io/bash)
+# - ./mvnw deploy --settings .travis-settings.xml -DskipTests=true -B | grep -Ei '(Uploading|Downloading|Uploaded|Downloaded)'
+# # generate site and reports
+# - |
+# #./mvnw post-site -Pmutation-testing
+# ./mvnw post-site -fae -q -B | grep -Ei '(error|warn)'
+## upload reports
+#before_deploy:
+# - mkdir -p $HOME/docs/$TRAVIS_BRANCH
+# - cp -r target/site/ $HOME/docs/$TRAVIS_BRANCH/
+#deploy:
+# skip_cleanup: true
+# provider: surge
+# project: $HOME/docs/
+# domain: ogham-documentation.surge.sh
+# on:
+# all_branches: true
+#
+## TODO: after error -> grab logs and send it
+#after_failure:
+# - cat "$HOME/spring-initializr.log"
+# - cat "$HOME/spring-initializr-older-versions.log"
notifications:
slack:
rooms:
@@ -90,6 +310,10 @@ notifications:
- "Build: <%{build_url}|#%{build_number}> (%{duration})"
- "Commit: <%{compare_url}|%{commit}> by %{author}"
- "%{commit_message}"
+ - "---"
+ - "Generated site: http://ogham-documentation.surge.sh/$TRAVIS_BRANCH/index.html"
+ - "Coverage report: http://ogham-documentation.surge.sh/$TRAVIS_BRANCH/jacoco-aggregate/index.html"
+ - "Mutation report: http://ogham-documentation.surge.sh/$TRAVIS_BRANCH/pit-reports/index.html"
cache:
directories:
diff --git a/build/analyze.sh b/build/analyze.sh
new file mode 100755
index 0000000000..38c174dd33
--- /dev/null
+++ b/build/analyze.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+# Sonar
+./mvnw sonar:sonar -B | grep -Ei '(warn|error|ANALYSIS SUCCESSFUL)'
+
+# Codecov
+bash <(curl -s https://codecov.io/bash)
\ No newline at end of file
diff --git a/build/build.sh b/build/build.sh
new file mode 100755
index 0000000000..7d16bc3c45
--- /dev/null
+++ b/build/build.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+./mvnw clean install -DskipTests=true -Dmaven.javadoc.skip=true -Dskip.integration.tests=true -Dskip.unit.tests=true -B -q
diff --git a/build/detect-java-release.sh b/build/detect-java-release.sh
new file mode 100755
index 0000000000..ece2fef34a
--- /dev/null
+++ b/build/detect-java-release.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+java_version=$(java -version 2>&1 | grep -i version | cut -d'"' -f2)
+major=$(echo $java_version | cut -d'.' -f1)
+[ "1" = "$major" ] \
+ && echo "$java_version" | cut -d'.' -f2 > "$HOME/java-version.info" \
+ || echo "$java_version" | cut -d'.' -f1 > "$HOME/java-version.info"
+JAVA_RELEASE_VERSION=$(cat "$HOME/java-version.info")
\ No newline at end of file
diff --git a/build/generate-classpath-tests.sh b/build/generate-classpath-tests.sh
new file mode 100755
index 0000000000..09de3ab2ef
--- /dev/null
+++ b/build/generate-classpath-tests.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+
+# start Spring Initializr
+touch "$HOME/$INITIALIZER_NAME.log"
+spring-initializr/./mvnw clean spring-boot:run -f spring-initializr > "$HOME/$INITIALIZER_NAME.log" &
+echo "$!" > "$HOME/$INITIALIZER_NAME.pid"
+tail -f "$HOME/$INITIALIZER_NAME.log" &
+(tail -f "$HOME/$INITIALIZER_NAME.log" &) | grep -q 'Started SpringInitializrApplication'
+
+# Generate projects
+OGHAM_VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec)
+./mvnw spring-boot:run -pl :ogham-test-classpath -Dspring-boot.run.arguments="$HOME/classpath-tests" -Dspring-boot.run.jvmArguments="-Drunner.parallel=false -Dogham-version=$OGHAM_VERSION -Dspring.initializer.url=http://localhost:$INITIALIZER_PORT/starter.zip $GENERATION_ARGS"
+
+ls -l "$HOME"
+ls -l "$HOME/classpath-tests"
+ls -l "$HOME/classpath-tests/$TEST_FOLDER"
+
+kill `cat "$HOME/$INITIALIZER_NAME.pid"` || echo ""
+
diff --git a/build/generate-documentation.sh b/build/generate-documentation.sh
new file mode 100755
index 0000000000..6fd902aa7a
--- /dev/null
+++ b/build/generate-documentation.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+./mvnw javadoc:javadoc -fae -B | grep -Ei '(error|warn)'
+./mvnw post-site -fae -q -B | grep -Ei '(error|warn)'
+# TODO: add -Pmutation-testing for executing and reporting mutation testing results
+
+# copy generated site and reports to a specific folder for deployment
+mkdir -p $HOME/docs/$BRANCH
+cp -r target/site/ $HOME/docs/$BRANCH/
+ll $HOME/docs/
+ll $HOME/docs/$TRAVIS_BRANCH
\ No newline at end of file
diff --git a/build/run-classpath-tests.sh b/build/run-classpath-tests.sh
new file mode 100755
index 0000000000..c20a5e9ab7
--- /dev/null
+++ b/build/run-classpath-tests.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+$HOME/classpath-tests/$TEST_FOLDER/./mvnw test -T 2.5C -f "$HOME/classpath-tests/$TEST_FOLDER/pom.xml" -Dmaven.test.redirectTestOutputToFile=true -fae -q -B #| grep -Ei '(error|exception|Tests run:)'
\ No newline at end of file
diff --git a/build/run-integration-tests.sh b/build/run-integration-tests.sh
new file mode 100755
index 0000000000..80c8dc7a94
--- /dev/null
+++ b/build/run-integration-tests.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+./mvnw verify -Dmaven.test.redirectTestOutputToFile=true -fae -B -q
\ No newline at end of file
diff --git a/build/run-unit-tests.sh b/build/run-unit-tests.sh
new file mode 100755
index 0000000000..f4d96754e7
--- /dev/null
+++ b/build/run-unit-tests.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+./mvnw test -Dmaven.test.redirectTestOutputToFile=true -fae -B -q
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 383e1d50ff..0bc73e419b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -73,12 +73,15 @@
false
false
+
+ ${project.basedir}/../target/site/pit-reports
+
${project.basedir}/../target/coverage-reports/jacoco-it.exec
${project.basedir}/../target/coverage-reports/jacoco-ut.exec
${project.basedir}/../target/coverage-reports/jacoco-all.exec
${project.basedir}/../target/site/jacoco-aggregate
-
+
${project.build.directory}/surefire-reports,${project.build.directory}/failsafe-reports
${jacoco.ut.execution.data.file},${jacoco.it.execution.data.file}
@@ -100,6 +103,8 @@
${project.build.outputDirectory}/staging
${site.staging.dir}/v${docProjectVersion}
cerulean
+ ${maven.site.skip}
+ ${maven.site.skip}
2.10
@@ -109,6 +114,9 @@
0.8.4
2.22.2
2.22.2
+
+ 1.4.7
+ 1.3.7
3.7
3.0.0
@@ -583,6 +591,12 @@
surefireArgLine
+
+ generate-xml-report
+
+ report
+
+
pre-integration-test
@@ -592,6 +606,12 @@
failsafeArgLine
+
+ generate-xml-integration-report
+
+ report-integration
+
+
@@ -709,6 +729,7 @@
copy-resources
+ ${asciidoctor.skip}
src/docs/resources
@@ -724,6 +745,7 @@
copy-resources
+ ${asciidoctor.skip}
target/generated-docs
@@ -807,6 +829,7 @@
unpack
+ ${maven.site.skip}
io.github.devacfr.maven.skins
@@ -875,6 +898,7 @@
run
+ ${maven.site.skip}
@@ -915,6 +939,7 @@
+ ${sass.skip}
@@ -1100,6 +1125,41 @@
+
+
+ eu.stamp-project
+ pitmp-maven-plugin
+ ${pitmp-maven-plugin.version}
+
+
+ run-mutation-testing
+ site
+
+ run
+
+
+ descartes
+
+ ogham-spring-boot-autoconfigure
+ ogham-spring-boot-starter-all
+ ogham-spring-boot-starter-email
+ ogham-spring-boot-starter-sms
+ ogham-spring-boot-common-autoconfigure
+
+
+ HTML
+ XML
+
+ true
+
+
+
+
+
+ org.pitest
+ pitest-maven
+ ${pitest-maven.version}
+
@@ -1140,6 +1200,34 @@
report-integration
+
+
+ report-aggregate
+
+ false
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-project-info-reports-plugin
+
+
+
+ summary
+ licenses
+ modules
+ team
+ scm
+ issue-management
+ dependencies
+ dependency-info
+ dependency-convergence
+ dependency-management
+ plugins
+
+
@@ -1220,6 +1308,91 @@
8
+
+ mutation-testing
+
+
+
+
+ eu.stamp-project
+ pitmp-maven-plugin
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mutation-testing-only
+
+ true
+ true
+ true
+ true
+ false
+ false
+ false
+ true
+ true
+
+
+
+
+
+ eu.stamp-project
+ pitmp-maven-plugin
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ mutation-testing-aggregate-report-only
+
+ true
+ true
+ true
+ true
+ false
+ false
+ false
+ true
+ true
+
+
diff --git a/reporting/pom.xml b/reporting/pom.xml
index 86ecb4a2e1..9fb613c4dd 100644
--- a/reporting/pom.xml
+++ b/reporting/pom.xml
@@ -171,19 +171,14 @@
report
- site
+ verify
report-aggregate
-
-
fr/sii/ogham/test/classpath/**
-
*mvnwrapper-for-projects/**
-
-
${jacoco.report.path}
@@ -191,5 +186,63 @@
+
+
+
+
+ org.pitest
+ pitest-maven
+
+
+ merge-pitest-reports
+ site
+
+ report-aggregate
+
+
+ ${pit.report.path}
+
+
+
+
+
+
+
+
+
+ mutation-testing
+
+
+
+ org.pitest
+ pitest-maven
+
+
+
+
+
+ mutation-testing-only
+
+
+
+ org.pitest
+ pitest-maven
+
+
+
+
+
+ mutation-testing-aggregate-report-only
+
+
+
+ org.pitest
+ pitest-maven
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/site/site.xml b/src/site/site.xml
index 1dae1a5d65..4328d3ff10 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -44,7 +44,7 @@
Main
Download|Contribute
Documentation
- reports
+ Reports|Maven Reports
-
-
+
+