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 4d1f3fc4dd7ba4feaf22b4a38028c6b613db3324
Author: Zoran Regvart <zregv...@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..f094a62 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([ $class: 'GitSCM', 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"
             }

Reply via email to