This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/struts-archetypes.git
The following commit(s) were added to refs/heads/master by this push: new 85cd95b Adds Jenkinsfile to build Archetypes 85cd95b is described below commit 85cd95b431b48135c9740d15c30221d260758ff7 Author: Lukasz Lenart <lukaszlen...@apache.org> AuthorDate: Fri May 1 14:08:36 2020 +0200 Adds Jenkinsfile to build Archetypes --- Jenkinsfile | 133 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 133 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..dca224b --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,133 @@ +#!groovy + +pipeline { + agent none + options { + buildDiscarder logRotator(daysToKeepStr: '14', numToKeepStr: '10') + timeout(80) + disableConcurrentBuilds() + skipStagesAfterUnstable() + quietPeriod(30) + } + triggers { + pollSCM 'H/15 * * * *' + } + stages { + stage('Prepare') { + agent { + label 'ubuntu' + } + stages { + stage('Clean up') { + steps { + cleanWs deleteDirs: true, patterns: [[pattern: '**/target/**', type: 'INCLUDE']] + } + } + } + } + stage('JDK 8') { + agent { + label 'ubuntu' + } + tools { + jdk 'JDK 1.8 (latest)' + maven 'Maven (latest)' + } + environment { + MAVEN_OPTS = "-Xmx1024m" + } + stages { + stage('Build') { + steps { + sh 'mvn -B clean install -DskipTests' + } + } + stage('Deploy Snapshot') { + when { + branch 'master' + } + steps { + withCredentials([file(credentialsId: 'lukaszlenart-repository-access-token', variable: 'CUSTOM_SETTINGS')]) { + sh 'mvn -s \${CUSTOM_SETTINGS} deploy' + } + } + } + } + post { + always { + cleanWs deleteDirs: true, patterns: [[pattern: '**/target/**', type: 'INCLUDE']] + } + } + } + } + post { + // If this build failed, send an email to the list. + failure { + script { + emailext( + to: "d...@struts.apache.org", + recipientProviders: [[$class: 'DevelopersRecipientProvider']], + from: "Mr. Jenkins <jenk...@builds.apache.org>", + subject: "Jenkins job ${env.JOB_NAME}#${env.BUILD_NUMBER} failed", + body: """ +There is a build failure in ${env.JOB_NAME}. + +Build: ${env.BUILD_URL} +Logs: ${env.BUILD_URL}console +Changes: ${env.BUILD_URL}changes + +-- +Mr. Jenkins +Director of Continuous Integration +""" + ) + } + } + + // If this build didn't fail, but there were failing tests, send an email to the list. + unstable { + script { + emailext( + to: "d...@struts.apache.org", + recipientProviders: [[$class: 'DevelopersRecipientProvider']], + from: "Mr. Jenkins <jenk...@builds.apache.org>", + subject: "Jenkins job ${env.JOB_NAME}#${env.BUILD_NUMBER} unstable", + body: """ +Some tests have failed in ${env.JOB_NAME}. + +Build: ${env.BUILD_URL} +Logs: ${env.BUILD_URL}console +Changes: ${env.BUILD_URL}changes + +-- +Mr. Jenkins +Director of Continuous Integration +""" + ) + } + } + + // Send an email, if the last build was not successful and this one is. + fixed { + script { + emailext( + to: "d...@struts.apache.org", + recipientProviders: [[$class: 'DevelopersRecipientProvider']], + from: 'Mr. Jenkins <jenk...@builds.apache.org>', + subject: "Jenkins job ${env.JOB_NAME}#${env.BUILD_NUMBER} back to normal", + body: """ +The build for ${env.JOB_NAME} completed successfully and is back to normal. + +Build: ${env.BUILD_URL} +Logs: ${env.BUILD_URL}console +Changes: ${env.BUILD_URL}changes + +-- +Mr. Jenkins +Director of Continuous Integration +""" + ) + } + } + } +}