diff --git a/.gitignore b/.gitignore
index 5da28254f55..959e3b7bc9f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,4 +6,5 @@ dockerfiles/run/**/keystore
dockerfiles/run/**/glowroot
.m2
test-run.log
-build
\ No newline at end of file
+build
+.profiler
diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml
new file mode 100644
index 00000000000..5ebba91e5a8
--- /dev/null
+++ b/.mvn/extensions.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+ co.leantechniques
+ maven-buildtime-extension
+ 3.0.3
+
+
+
+
+ fr.jcgay.maven
+ maven-profiler
+ 3.2
+
+
+
diff --git a/.mvn/maven.config b/.mvn/maven.config
new file mode 100644
index 00000000000..ae2b0852d86
--- /dev/null
+++ b/.mvn/maven.config
@@ -0,0 +1,2 @@
+-Daether.dependencyCollector.impl=bf
+-Dmaven.artifact.threads=5
\ No newline at end of file
diff --git a/Jenkinsfile b/Jenkinsfile
index b432a30c2f3..5bcdd2f56ef 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -36,6 +36,8 @@ pipeline {
MVN_LOCAL_REPO_OPT = '-Dmaven.repo.local=.repository'
MVN_TEST_FAIL_IGNORE = '-Dmaven.test.failure.ignore=true'
MVN_SHOW_TIMESTAMPS="-Dorg.slf4j.simpleLogger.showDateTime=true -Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss,SSS"
+ MVN_PROFILING = '-Dbuildtime.output.csv=true -Dprofile -DprofileFormat=JSON,HTML'
+ MVN_PARALLEL = '-Daether.dependencyCollector.impl=bf -Dmaven.artifact.threads=5'
CI = true
LC_CTYPE = 'en_US.UTF-8'
}
@@ -85,19 +87,29 @@ pipeline {
stage('Build') {
steps {
echo 'Building'
- sh 'mvn -U -B -e clean install -DskipTests -T1C ${MVN_SHOW_TIMESTAMPS} ${MVN_LOCAL_REPO_OPT}'
+ sh 'mvn -U -B -e clean install -DskipTests -T1C ${MVN_SHOW_TIMESTAMPS} ${MVN_LOCAL_REPO_OPT} ${MVN_PARALLEL} ${MVN_PROFILING} -Dbuildtime.output.csv.file=buildstats_Build.csv'
}
+ post {
+ always {
+ archiveArtifacts artifacts: '**/buildstats*.log' , fingerprint: false, allowEmptyArchive: true
+ archiveArtifacts artifacts: '**/.profiler/profiler-report*.html' , fingerprint: false, allowEmptyArchive: true
+ archiveArtifacts artifacts: '**/.profiler/profiler-report*.json' , fingerprint: false, allowEmptyArchive: true
+ }
+ }
}
stage('Stable Tests') {
steps {
echo 'Running tests'
- sh 'mvn -B -e -fae test ${MVN_SHOW_TIMESTAMPS} -P ci-test ${MVN_LOCAL_REPO_OPT} -Dassembly.skipAssembly=true'
+ sh 'mvn -B -e -fae test ${MVN_SHOW_TIMESTAMPS} -P ci-test ${MVN_LOCAL_REPO_OPT} -Dassembly.skipAssembly=true ${MVN_PARALLEL} ${MVN_PROFILING} -Dbuildtime.output.csv.file=buildstats_StableTests.csv'
}
post {
always {
junit(testResults: '**/surefire-reports/*.xml', allowEmptyResults: false)
junit(testResults: '**/failsafe-reports/*.xml', allowEmptyResults: true)
+ archiveArtifacts artifacts: '**/buildstats*.log' , fingerprint: false, allowEmptyArchive: true
+ archiveArtifacts artifacts: '**/.profiler/profiler-report*.html' , fingerprint: false, allowEmptyArchive: true
+ archiveArtifacts artifacts: '**/.profiler/profiler-report*.json' , fingerprint: false, allowEmptyArchive: true
}
failure {
archiveArtifacts artifacts: '**/target/test-run.log' , fingerprint: true
@@ -110,13 +122,16 @@ pipeline {
steps {
echo 'Running unstable tests'
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
- sh 'mvn -B -e -fae test -Punstable-tests ${MVN_SHOW_TIMESTAMPS} -P ci-test ${MVN_LOCAL_REPO_OPT} -Dassembly.skipAssembly=true'
+ sh 'mvn -B -e -fae test -Punstable-tests ${MVN_SHOW_TIMESTAMPS} -P ci-test ${MVN_LOCAL_REPO_OPT} -Dassembly.skipAssembly=true ${MVN_PARALLEL} ${MVN_PROFILING} -Dbuildtime.output.csv.file=buildstats_UnstableTests.csv'
}
}
post {
always {
junit(testResults: '**/surefire-reports/*.xml', allowEmptyResults: true)
junit(testResults: '**/failsafe-reports/*.xml', allowEmptyResults: true)
+ archiveArtifacts artifacts: '**/buildstats*.log' , fingerprint: false, allowEmptyArchive: true
+ archiveArtifacts artifacts: '**/.profiler/profiler-report*.html' , fingerprint: false, allowEmptyArchive: true
+ archiveArtifacts artifacts: '**/.profiler/profiler-report*.json' , fingerprint: false, allowEmptyArchive: true
}
failure {
archiveArtifacts artifacts: '**/target/test-run.log' , fingerprint: true
diff --git a/pom.xml b/pom.xml
index 96df2e635ab..e7e4cef511d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3451,11 +3451,6 @@
-
- pl.project13.maven
- git-commit-id-plugin
- 4.9.10
-
@@ -3574,36 +3569,12 @@
- pl.project13.maven
- git-commit-id-plugin
-
- ${project.basedir}/.git
- git
- false
- true
- ${project.build.outputDirectory}/git.properties
- json
-
- git.commit.id
- git.commit.id.describe
- git.commit.message.short
- git.dirty
-
- false
- true
- false
-
- false
- true
- -dirty
-
-
+ org.apache.maven.plugins
+ maven-remote-resources-plugin
- get-the-git-infos
-
- revision
-
+ process-resource-bundles
+ none
@@ -3911,17 +3882,6 @@
-
-
- pl.project13.maven
- git-commit-id-plugin
-
-
- get-the-git-infos
- none
-
-
-
net.alchim31.maven
scala-maven-plugin