From cb6b77b16804f52ecade0e6cf4d06ca851f64581 Mon Sep 17 00:00:00 2001 From: lgoubet Date: Wed, 14 Sep 2022 16:07:11 +0200 Subject: [PATCH] First version of jenkinsfile Signed-off-by: lgoubet --- Jenkinsfile | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 000000000..0391b7176 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,65 @@ +pipeline { + agent { + label 'migration' + } + + options { + buildDiscarder(logRotator(numToKeepStr: '5', artifactNumToKeepStr: '5')) + timestamps() + } + + tools { + maven 'apache-maven-latest' + jdk 'adoptopenjdk-openj9-jdk11-latest' + } + + environment { + // Target platform to build against (must correspond to a profile in the parent pom.xml) + PLATFORM = '2022-03' + PLATFORM-EXTRAS = '2022-03-extras' + } + + stages { + stage ('Nightly') { + when { + not { + branch 'PR-*' + } + } + steps { + dir ("org.eclipse.emf.compare-parent") { + wrap([$class: 'Xvnc', takeScreenshot: false, useXauthority: true]) { + sh "mvn clean verify -P$PLATFORM-EXTRAS -Pextra-modules -Psign -Pjavadoc" + } + } + sh "./releng/org.eclipse.emf.compare.releng/publish-nightly.sh" + } + } + stage ('PR Verify') { + when { + branch 'PR-*' + } + steps { + dir ("org.eclipse.emf.compare-parent") { + wrap([$class: 'Xvnc', takeScreenshot: false, useXauthority: true]) { + sh "mvn clean verify -P$PLATFORM" + } + } + } + } + } + + post { + always { + junit "**/tests/**/target/surefire-reports/*.xml" + } + failure { + unsuccessful ( + subject: "FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'", + body: """FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]': + Check console output at ${env.BUILD_URL}""", + to: 'emfcompare-build@eclipse.org' + ) + } + } +} \ No newline at end of file