You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2024/02/07 11:28:42 UTC

(camel) branch camel-4.3.x updated: Adding Jenkins file for PPC64LE JDK21 (#12968)

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

acosentino pushed a commit to branch camel-4.3.x
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/camel-4.3.x by this push:
     new 8a84bda7436 Adding Jenkins file for PPC64LE JDK21 (#12968)
8a84bda7436 is described below

commit 8a84bda743644f36e6ab3c078d7dd8bd283bd989
Author: Sanskruti Dongre <15...@users.noreply.github.com>
AuthorDate: Wed Feb 7 16:58:34 2024 +0530

    Adding Jenkins file for PPC64LE JDK21 (#12968)
    
    * Adding Jenkins file for PPC64LE JDK21
    
    * Sonar removed
    
    * Recipient Provider changed
    
    ---------
    
    Co-authored-by: Sanskruti Dongre <sa...@ibm.com>
---
 Jenkinsfile.ppc64le.jdk21 | 92 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 92 insertions(+)

diff --git a/Jenkinsfile.ppc64le.jdk21 b/Jenkinsfile.ppc64le.jdk21
new file mode 100644
index 00000000000..389c788bae4
--- /dev/null
+++ b/Jenkinsfile.ppc64le.jdk21
@@ -0,0 +1,92 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+def AGENT_LABEL = env.AGENT_LABEL ?: 'power-for-camel'
+def JDK_NAME = env.JDK_NAME ?: 'jdk_21_latest'
+
+def MAVEN_PARAMS = "-B -e -fae -V -Dnoassembly -Dmaven.compiler.fork=true -Dsurefire.rerunFailingTestsCount=2 -Dfailsafe.rerunFailingTestsCount=1"
+def MAVEN_TEST_PARAMS = env.MAVEN_TEST_PARAMS ?: "-Dci.env.name=apache.org"
+
+pipeline {
+
+    agent {
+        label AGENT_LABEL
+    }
+
+    tools {
+        jdk JDK_NAME
+    }
+
+    environment {
+        MAVEN_SKIP_RC = true
+    }
+
+    options {
+        buildDiscarder(
+            logRotator(artifactNumToKeepStr: '5', numToKeepStr: '10')
+        )
+        disableConcurrentBuilds()
+    }
+
+    parameters {
+        booleanParam(name: 'CLEAN', defaultValue: true, description: 'Perform the build in clean workspace')
+        booleanParam(name: 'VIRTUAL_THREAD', defaultValue: false, description: 'Perform the build using virtual threads')
+    }
+
+    stages {
+
+        stage('Clean workspace') {
+             when {
+                 expression { params.CLEAN }
+             }
+             steps {
+                 sh 'git clean -fdx'
+           }
+        }
+
+        stage('Build & Install') {
+            steps {
+                sh "./mvnw -U $MAVEN_PARAMS -Dskip.camel.maven.plugin.tests -Darchetype.test.skip -Dmaven.test.skip.exec=true clean install"
+            }
+        }
+
+        stage('Test') {
+            steps {
+                timeout(unit: 'HOURS', time: 7) {
+                    sh "./mvnw $MAVEN_PARAMS $MAVEN_TEST_PARAMS -Darchetype.test.skip -Dmaven.test.failure.ignore=true -Dcheckstyle.skip=true verify -Dcamel.threads.virtual.enabled=${params.VIRTUAL_THREAD}"
+                }
+            }
+            post {
+                always {
+                    junit allowEmptyResults: true, testResults: '**/target/surefire-reports/*.xml'
+                    junit allowEmptyResults: true, testResults: '**/target/failsafe-reports/*.xml'
+                }
+            }
+        }
+
+    }
+
+    post {
+        always {
+            emailext(
+                subject: '${DEFAULT_SUBJECT}',
+                body: '${DEFAULT_CONTENT}',
+                recipientProviders: [[$class: 'DevelopersRecipientProvider']]
+            )
+        }
+    }
+}
+