You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by se...@apache.org on 2019/01/13 22:29:12 UTC

[directory-ldap-api] 01/02: Update jenkins file

This is an automated email from the ASF dual-hosted git repository.

seelmann pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/directory-ldap-api.git

commit 6464677abb70bfbe7001c8d32772fbf0606e9c2b
Author: Stefan Seelmann <ma...@stefan-seelmann.de>
AuthorDate: Sun Jan 13 23:28:12 2019 +0100

    Update jenkins file
---
 Jenkinsfile | 85 ++++++++++++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 65 insertions(+), 20 deletions(-)

diff --git a/Jenkinsfile b/Jenkinsfile
index 035e2aa..8c0c781 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -18,40 +18,58 @@
  */
 pipeline {
   agent none
+  options {
+    buildDiscarder(logRotator(numToKeepStr: '3'))
+    timeout(time: 2, unit: 'HOURS')
+  }
+  triggers {
+    cron('@weekly')
+    pollSCM('@daily')
+  }
   stages {
-    stage ('Compile') {
+    stage ('Build and Test') {
       parallel {
-        stage ('Compile Java 8') {
+        stage ('Linux Java 8') {
           agent {
             docker {
-              image 'maven:3-jdk-8'
               label 'ubuntu'
+              image 'apachedirectory/maven-build:jdk-8'
+              args '-v $HOME/.m2:/home/user/.m2'
             }
           }
           steps {
-            sh 'mvn -V clean verify -DskipTests'
+            sh 'mvn -V clean verify'
+          }
+          post {
+            always {
+              junit '**/target/surefire-reports/*.xml'
+              deleteDir()
+            }
           }
         }
-        stage ('Compile Java 11') {
+        stage ('Linux Java 11') {
           agent {
             docker {
-              image 'maven:3-jdk-11'
               label 'ubuntu'
+              image 'apachedirectory/maven-build:jdk-11'
+              args '-v $HOME/.m2:/var/maven/.m2'
             }
           }
           steps {
-            sh 'mvn -V clean verify -DskipTests'
+            sh 'mvn -V clean verify'
+          }
+          post {
+            always {
+              deleteDir()
+            }
           }
         }
-      }
-    }
-    stage ('Test') {
-      parallel {
-        stage ('Test Java 8') {
+        stage ('Linux Java 12') {
           agent {
             docker {
-              image 'maven:3-jdk-8'
               label 'ubuntu'
+              image 'apachedirectory/maven-build:jdk-12'
+              args '-v $HOME/.m2:/var/maven/.m2'
             }
           }
           steps {
@@ -59,23 +77,50 @@ pipeline {
           }
           post {
             always {
-              junit '**/target/surefire-reports/*.xml'
+              deleteDir()
             }
           }
         }
-        stage ('Test Java 11') {
+        stage ('Windows Java 8') {
           agent {
-            docker {
-              image 'maven:3-jdk-11'
-              label 'ubuntu'
-            }
+            label 'Windows'
           }
           steps {
-            sh 'mvn -V clean verify'
+            bat '''
+            set JAVA_HOME=F:\\jenkins\\tools\\java\\latest1.8
+            set MAVEN_OPTS="-Xmx512m"
+            F:\\jenkins\\tools\\maven\\latest3\\bin\\mvn -V clean verify
+            '''
+          }
+          post {
+            always {
+              deleteDir()
+            }
           }
         }
       }
     }
+    stage ('Deploy') {
+      agent {
+        docker {
+          label 'ubuntu'
+          image 'apachedirectory/maven-build:jdk-8'
+          args '-v $HOME/.m2:/var/maven/.m2'
+        }
+      }
+      when {
+        beforeAgent true
+        branch 'master'
+      }
+      steps {
+        sh 'mvn -V clean deploy'
+      }
+      post {
+        always {
+          deleteDir()
+        }
+      }
+    }
   }
 }