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