camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From zregv...@apache.org
Subject [camel] 01/01: CAMEL-11492 Test website Jenkinsfile
Date Wed, 26 Sep 2018 18:04:38 GMT
This is an automated email from the ASF dual-hosted git repository.

zregvart pushed a commit to branch website
in repository https://gitbox.apache.org/repos/asf/camel.git

commit a37c479f2e4a5a664971205bd1f75ba303534d9d
Author: Zoran Regvart <zregvart@apache.org>
AuthorDate: Tue Jul 17 12:01:34 2018 +0200

    CAMEL-11492 Test website Jenkinsfile
---
 Jenkinsfile | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 81 insertions(+), 1 deletion(-)

diff --git a/Jenkinsfile b/Jenkinsfile
index a34301d..e6a3c40 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -17,8 +17,10 @@
  * under the License.
  */
 
+def BUILD_WEBSITE = !'false'.equalsIgnoreCase(env.BUILD_WEBSITE)
 def LOCAL_REPOSITORY = env.LOCAL_REPOSITORY ?: '/home/jenkins/jenkins-slave/maven-repositories/0'
 def AGENT_LABEL = env.AGENT_LABEL ?: 'ubuntu'
+def WEBSITE_AGENT_LABEL = env.WEBSITE_AGENT_LABEL ?: 'git-websites'
 def JDK_NAME = env.JDK_NAME ?: 'JDK 1.8 (latest)'
 
 def MAVEN_PARAMS = "-U -B -e -fae -V -Dmaven.repo.local=${LOCAL_REPOSITORY} -Dnoassembly
-Dmaven.compiler.fork=true -Dsurefire.rerunFailingTestsCount=2"
@@ -42,10 +44,57 @@ pipeline {
 
     stages {
 
+        stage('Website') {
+            when {
+                beforeAgent true
+                expression { BUILD_WEBSITE }
+                anyOf {
+                    changeset '**/*.adoc'
+                    changeset 'camel-website/**'
+                    changeset 'docs/**'
+                }
+            }
+
+            agent {
+                node {
+                    label WEBSITE_AGENT_LABEL 
+                }
+            }
+
+            options {
+                skipDefaultCheckout()
+            }
+
+            steps {
+                dir('camel') {
+                    checkout scm
+                    sh "./mvnw -U -B -V -f camel-website"
+                }
+
+                dir('site') {
+                    checkout [ branches: [name: 'asf-site'] ]
+                    sh 'cp -R ../camel/camel-website/public/* .'
+                    sh 'git add .'
+                    sh 'git commit -m "Website updated to $(git rev-parse --short HEAD)"'
+                    sh 'git push origin asf-site'
+                }
+            }
+        }
+
         stage('Build & Deploy') {
+
             when {
+                beforeAgent true
                 branch 'master'
+                not {
+                    anyOf {
+                        changeset '**/*.adoc'
+                        changeset 'camel-website/**'
+                        changeset 'docs/**'
+                    }
+                }
             }
+
             steps {
                 sh "./mvnw $MAVEN_PARAMS -Dmaven.test.skip.exec=true clean deploy"
             }
@@ -53,16 +102,36 @@ pipeline {
 
         stage('Build') {
             when {
+                beforeAgent true
                 not {
-                    branch 'master'
+                    allOf {
+                        branch 'master'
+                        anyOf {
+                            changeset '**/*.adoc'
+                            changeset 'camel-website/**'
+                            changeset 'docs/**'
+                        }
+                    }
                 }
             }
+
             steps {
                 sh "./mvnw $MAVEN_PARAMS -Dmaven.test.skip.exec=true clean install"
             }
         }
 
         stage('Checks') {
+            when {
+                beforeAgent true
+                not {
+                    anyOf {
+                        changeset '**/*.adoc'
+                        changeset 'camel-website/**'
+                        changeset 'docs/**'
+                    }
+                }
+            }
+
             steps {
                 sh "./mvnw $MAVEN_PARAMS -Psourcecheck -Dcheckstyle.failOnViolation=false
checkstyle:check"
             }
@@ -74,6 +143,17 @@ pipeline {
         }
 
         stage('Test') {
+            when {
+                beforeAgent true
+                not {
+                    anyOf {
+                        changeset '**/*.adoc'
+                        changeset 'camel-website/**'
+                        changeset 'docs/**'
+                    }
+                }
+            }
+
             steps {
                 sh "./mvnw $MAVEN_PARAMS -Dmaven.test.failure.ignore=true test"
             }


Mime
View raw message