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

mck pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cassandra-builds.git


The following commit(s) were added to refs/heads/master by this push:
     new 9d5cf2d  Jenkins builds for Java 11
9d5cf2d is described below

commit 9d5cf2d69445a8b1b0e0c4aa8e60a03d1d2183ec
Author: mck <[email protected]>
AuthorDate: Fri Jul 10 19:30:52 2020 +0200

    Jenkins builds for Java 11
    
     patch by shylaja kokoori; reviewed by Mick Semb Wever for CASSANDRA-15809
---
 build-scripts/cassandra-artifacts.sh      | 17 +++++++++++++--
 build-scripts/cassandra-deb-packaging.sh  |  4 ++--
 build-scripts/cassandra-rpm-packaging.sh  |  4 ++--
 build-scripts/cassandra-test.sh           |  9 ++++++++
 jenkins-dsl/cassandra_job_dsl_seed.groovy | 36 ++++++++++++++++++++-----------
 jenkins-dsl/cassandra_pipeline.groovy     | 25 +++++++++++++++++++++
 6 files changed, 76 insertions(+), 19 deletions(-)

diff --git a/build-scripts/cassandra-artifacts.sh 
b/build-scripts/cassandra-artifacts.sh
index 5dae24e..34ca466 100755
--- a/build-scripts/cassandra-artifacts.sh
+++ b/build-scripts/cassandra-artifacts.sh
@@ -31,6 +31,19 @@ pip install "setuptools<45" Sphinx sphinx_rtd_theme
 #
 ################################
 
+# Setup JDK
+java_version=$(java -version 2>&1 | awk -F '"' '/version/ {print $2}' | awk 
-F. '{print $1}')
+if [ "$java_version" -ge 11 ]; then
+    java_version="11"
+    export CASSANDRA_USE_JDK11=true
+    if ! grep -q CASSANDRA_USE_JDK11 build.xml ; then
+        echo "Skipping build. JDK11 not supported against $(grep 
'property\s*name=\"base.version\"' build.xml |sed -ne 
's/.*value=\"\([^"]*\)\".*/\1/p')"
+        exit 0
+    fi
+else
+    java_version="8"
+fi
+
 # Loop to prevent failure due to maven-ant-tasks not downloading a jar..
 set +e # disable immediate exit from this point
 for x in $(seq 1 3); do
@@ -47,9 +60,9 @@ for x in $(seq 1 3); do
             declare -x cassandra_builds_dir="${cassandra_builds_dir}"
             declare -x CASSANDRA_GIT_URL="`git remote get-url origin`"
             # debian
-            deb_dir="`pwd`/build" 
${cassandra_builds_dir}/build-scripts/cassandra-deb-packaging.sh ${head_commit}
+            deb_dir="`pwd`/build" 
${cassandra_builds_dir}/build-scripts/cassandra-deb-packaging.sh ${head_commit} 
${java_version}
             # rpm
-            rpm_dir="`pwd`/build" 
${cassandra_builds_dir}/build-scripts/cassandra-rpm-packaging.sh ${head_commit}
+            rpm_dir="`pwd`/build" 
${cassandra_builds_dir}/build-scripts/cassandra-rpm-packaging.sh ${head_commit} 
${java_version}
         fi
         break
     fi
diff --git a/build-scripts/cassandra-deb-packaging.sh 
b/build-scripts/cassandra-deb-packaging.sh
index 8b71697..75ddc12 100755
--- a/build-scripts/cassandra-deb-packaging.sh
+++ b/build-scripts/cassandra-deb-packaging.sh
@@ -38,7 +38,7 @@ pushd $cassandra_builds_dir
 docker build --build-arg CASSANDRA_GIT_URL=$CASSANDRA_GIT_URL -t 
cassandra-artifacts-buster:${sha} -f docker/buster-image.docker docker/
 
 # Run build script through docker (specify branch, tag, or sha)
-chmod 777 ${deb_dir}
-docker run --rm -v ${deb_dir}:/dist cassandra-artifacts-buster:${sha} 
/home/build/build-debs.sh ${sha} ${java_version}
+chmod 777 "${deb_dir}"
+docker run --rm -v "${deb_dir}":/dist cassandra-artifacts-buster:${sha} 
/home/build/build-debs.sh ${sha} ${java_version}
 
 popd
diff --git a/build-scripts/cassandra-rpm-packaging.sh 
b/build-scripts/cassandra-rpm-packaging.sh
index 864b146..e319b51 100755
--- a/build-scripts/cassandra-rpm-packaging.sh
+++ b/build-scripts/cassandra-rpm-packaging.sh
@@ -38,7 +38,7 @@ pushd $cassandra_builds_dir
 docker build --build-arg CASSANDRA_GIT_URL=$CASSANDRA_GIT_URL -t 
cassandra-artifacts-centos7:${sha} -f docker/centos7-image.docker docker/
 
 # Run build script through docker (specify branch, tag, or sha)
-chmod 777 ${rpm_dir}
-docker run --rm -v ${rpm_dir}:/dist cassandra-artifacts-centos7:${sha} 
/home/build/build-rpms.sh ${sha} ${java_version}
+chmod 777 "${rpm_dir}"
+docker run --rm -v "${rpm_dir}":/dist cassandra-artifacts-centos7:${sha} 
/home/build/build-rpms.sh ${sha} ${java_version}
 
 popd
diff --git a/build-scripts/cassandra-test.sh b/build-scripts/cassandra-test.sh
index 2bc3cb9..8d21f3e 100755
--- a/build-scripts/cassandra-test.sh
+++ b/build-scripts/cassandra-test.sh
@@ -24,6 +24,15 @@ _main() {
   local java_version=$(java -version 2>&1 | awk -F '"' '/version/ {print $2}' 
| awk -F. '{print $1}')
   if [ "$java_version" -ge 11 ]; then
     export CASSANDRA_USE_JDK11=true
+    if ! grep -q CASSANDRA_USE_JDK11 build.xml ; then
+        echo "Skipping ${target}. JDK11 not supported against $(grep 
'property\s*name=\"base.version\"' build.xml |sed -ne 
's/.*value=\"\([^"]*\)\".*/\1/p')"
+        exit 0
+    fi
+  fi
+
+  if ! ant -projecthelp | grep -q " $target " ; then
+    echo "Skipping ${target}. It does not exist in $(grep 
'property\s*name=\"base.version\"' build.xml |sed -ne 
's/.*value=\"\([^"]*\)\".*/\1/p')"
+    exit 0
   fi
 
   ant clean jar
diff --git a/jenkins-dsl/cassandra_job_dsl_seed.groovy 
b/jenkins-dsl/cassandra_job_dsl_seed.groovy
index 9536e77..254e5e0 100644
--- a/jenkins-dsl/cassandra_job_dsl_seed.groovy
+++ b/jenkins-dsl/cassandra_job_dsl_seed.groovy
@@ -74,12 +74,10 @@ if(binding.hasVariable("CASSANDRA_DOCKER_IMAGE")) {
 /**
  * Artifacts and eclipse-warnings template
  */
-job('Cassandra-template-artifacts') {
+matrixJob('Cassandra-template-artifacts') {
     disabled(true)
     description(jobDescription)
     concurrentBuild()
-    jdk(jdkLabel)
-    label(slaveLabel)
     compressBuildLog()
     logRotator {
         numToKeep(10)
@@ -203,7 +201,7 @@ job('Cassandra-template-test') {
         }
         postBuildTask {
             task('.', '''
-                echo "Finding job process orphans…"; if pgrep -af 
${JOB_BASE_NAME}; then pkill -9 -f ${JOB_BASE_NAME}; fi;
+                echo "Finding job process orphans…"; if pgrep -af 
"${JOB_BASE_NAME}"; then pkill -9 -f "${JOB_BASE_NAME}"; fi;
                 echo "Cleaning project…"; git clean -xdff ;
                 echo "Pruning docker…" ; docker system prune -f --filter 
"until=48h"  ;
                 echo "Reporting disk usage…"; df -h ; du -hs ../* ;
@@ -336,7 +334,7 @@ matrixJob('Cassandra-template-cqlsh-tests') {
         }
         postBuildTask {
             task('.', '''
-                echo "Finding job process orphans…"; if pgrep -af 
${JOB_BASE_NAME}; then pkill -9 -f ${JOB_BASE_NAME}; fi;
+                echo "Finding job process orphans…"; if pgrep -af 
"${JOB_BASE_NAME}"; then pkill -9 -f "${JOB_BASE_NAME}"; fi;
                 echo "Cleaning project…"; git clean -xdff ;
                 echo "Pruning docker…" ; docker system prune -f --filter 
"until=48h"  ;
                 echo "Reporting disk usage…"; df -h ; du -hs ../* ;
@@ -364,9 +362,17 @@ cassandraBranches.each {
     /**
      * Main branch artifacts and eclipse-warnings job
      */
-    job("${jobNamePrefix}-artifacts") {
+    matrixJob("${jobNamePrefix}-artifacts") {
         disabled(false)
         using('Cassandra-template-artifacts')
+        axes {
+            if (branchName == 'trunk') {
+                jdk('JDK 1.8 (latest)','JDK 11 (latest)')
+            } else {
+                jdk('JDK 1.8 (latest)')
+            }
+            label('label', slaveLabel)
+        }
         configure { node ->
             node / scm / branches / 'hudson.plugins.git.BranchSpec' / 
name(branchName)
         }
@@ -492,11 +498,13 @@ cassandraBranches.each {
 /**
  * Parameterized Artifacts
  */
-job('Cassandra-devbranch-artifacts') {
+matrixJob('Cassandra-devbranch-artifacts') {
     description(jobDescription)
     concurrentBuild()
-    jdk(jdkLabel)
-    label(slaveLabel)
+    axes {
+        jdk('JDK 1.8 (latest)','JDK 11 (latest)')
+        label('label', slaveLabel)
+    }
     compressBuildLog()
     logRotator {
         numToKeep(10)
@@ -599,10 +607,12 @@ testTargets.each {
                 allowEmpty()
                 fingerprint()
             }
-            archiveJunit('build/test/**/TEST-*.xml')
+            archiveJunit('build/test/**/TEST-*.xml') {
+                allowEmptyResults()
+            }
             postBuildTask {
                 task('.', '''
-                    echo "Finding job process orphans…"; if pgrep -af 
${JOB_BASE_NAME}; then pkill -9 -f ${JOB_BASE_NAME}; fi;
+                    echo "Finding job process orphans…"; if pgrep -af 
"${JOB_BASE_NAME}"; then pkill -9 -f "${JOB_BASE_NAME}"; fi;
                     echo "Cleaning project…"; git clean -xdff ;
                     echo "Pruning docker…" ; docker system prune -f --filter 
"until=48h"  ;
                     echo "Reporting disk usage…"; df -h ; du -hs ../* ;
@@ -753,7 +763,7 @@ matrixJob('Cassandra-devbranch-cqlsh-tests') {
         archiveJunit('**/cqlshlib.xml,**/nosetests.xml')
         postBuildTask {
             task('.', '''
-                echo "Finding job process orphans…"; if pgrep -af 
${JOB_BASE_NAME}; then pkill -9 -f ${JOB_BASE_NAME}; fi;
+                echo "Finding job process orphans…"; if pgrep -af 
"${JOB_BASE_NAME}"; then pkill -9 -f "${JOB_BASE_NAME}"; fi;
                 echo "Cleaning project…"; git clean -xdff ;
                 echo "Pruning docker…" ; docker system prune -f --filter 
"until=48h" ;
                 echo "Reporting disk usage…"; df -h ; du -hs ../* ;
@@ -792,4 +802,4 @@ pipelineJob('Cassandra-devbranch') {
             script(readFileFromWorkspace('Cassandra-Job-DSL', 
'jenkins-dsl/cassandra_pipeline.groovy'))
         }
     }
-}
\ No newline at end of file
+}
diff --git a/jenkins-dsl/cassandra_pipeline.groovy 
b/jenkins-dsl/cassandra_pipeline.groovy
index 7d4f4d9..1b09c4b 100644
--- a/jenkins-dsl/cassandra_pipeline.groovy
+++ b/jenkins-dsl/cassandra_pipeline.groovy
@@ -48,6 +48,31 @@ pipeline {
                 }
               }
             }
+            stage('fqltool') {
+              steps {
+                  warnError('Tests unstable') {
+                      script {
+                        built = build job: "${env.JOB_NAME}-fqltool-test", 
parameters: [string(name: 'REPO', value: params.REPO), string(name: 'BRANCH', 
value: params.BRANCH)]
+                      }
+                  }
+              }
+              post {
+                success {
+                    warnError('missing test xml files') {
+                        script {
+                            copyTestResults('fqltool-test', built.getNumber())
+                        }
+                    }
+                }
+                unstable {
+                    warnError('missing test xml files') {
+                        script {
+                            copyTestResults('fqltool-test', built.getNumber())
+                        }
+                    }
+                }
+              }
+            }
             stage('JVM DTests') {
               steps {
                   warnError('Tests unstable') {


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to