CI: Modify jjb in releng to use vsperf build script for the nightly build
[releng.git] / jjb / vswitchperf / vswitchperf.yml
index 4064d27..39803aa 100644 (file)
 - project:
+
     name: vswitchperf
+
+    project: '{name}'
+
     jobs:
-        - 'vswitchperf-test'
-        - 'vswitchperf-daily-master'
+        - 'vswitchperf-verify-{stream}'
+        - 'vswitchperf-merge-{stream}'
+        - 'vswitchperf-daily-{stream}'
 
-    # stream:    branch with - in place of / (eg. stable-helium)
-    # branch:    branch (eg. stable/helium)
+# only master branch is enabled at the moment to keep no of jobs sane
     stream:
         - master:
             branch: 'master'
-
-    project: 'vswitchperf'
-    somevar: 'foo'
+            gs-pathname: ''
+#        - brahmaputra:
+#            branch: 'stable/brahmaputra'
+#            gs-pathname: '/brahmaputra'
 
 - job-template:
-    name: vswitchperf-test
 
-    project-type: freestyle
+    name: 'vswitchperf-daily-{stream}'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - 'intel-pod3-defaults'
 
-    logrotate:
-        daysToKeep: 30
-        numToKeep: 10
-        artifactDaysToKeep: -1
-        artifactNumToKeep: -1
+    scm:
+        - git-scm:
+            credentials-id: '{ssh-credentials}'
+            refspec: ''
+            branch: '{branch}'
+
+    triggers:
+        - pollscm: '@midnight'
 
     builders:
         - shell: |
-            echo "Hello world from vswitchperf"
+            pwd
+            cd src
+            make clobber
+            make
+            # run basic sanity test
+            make sanity
+            scl enable python33 bash
+            source ~/vsperfenv/bin/activate
+            cd ../ci
+            ./build-vsperf.sh daily
 
 - job-template:
-    name: 'vswitchperf-daily-master'
-
-    # Job template for daily builders
-    #
-    # Required Variables:
-    #     stream:    branch with - in place of / (eg. stable)
-    #     branch:    branch (eg. stable)
+    name: 'vswitchperf-verify-{stream}'
 
     project-type: freestyle
-    varsetabove: '{somevar}'
 
-    logrotate:
-        daysToKeep: '{build-days-to-keep}'
-        numToKeep: '{build-num-to-keep}'
-        artifactDaysToKeep: '{build-artifact-days-to-keep}'
-        artifactNumToKeep: '{build-artifact-num-to-keep}'
+    concurrent: true
 
-    wrappers:
-        - ssh-agent-credentials:
-            user: '{ssh-credentials}'
+    properties:
+        - throttle:
+            enabled: true
+            max-total: 3
+            max-per-node: 2
 
-    triggers:
-        - timed: 'H H * * *'
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+        - 'opnfv-build-defaults'
+
+    scm:
+        - gerrit-trigger-scm:
+            credentials-id: '{ssh-credentials}'
+            refspec: '$GERRIT_REFSPEC'
+            choosing-strategy: 'gerrit'
 
-    prebuilders:
-        - test-macro
+    triggers:
+        - gerrit:
+            trigger-on:
+                - patchset-created-event:
+                    exclude-drafts: 'false'
+                    exclude-trivial-rebase: 'false'
+                    exclude-no-code-change: 'false'
+                - draft-published-event
+                - comment-added-contains-event:
+                    comment-contains-value: 'recheck'
+                - comment-added-contains-event:
+                    comment-contains-value: 'reverify'
+            projects:
+              - project-compare-type: 'ANT'
+                project-pattern: '{project}'
+                branches:
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
+                forbidden-file-paths:
+                  - compare-type: ANT
+                    pattern: 'docs/**'
 
     builders:
         - shell: |
-            echo "Hello world from vswitchperf {somevar} daily"
-        - test-macro
+            pwd
+            cd src
+            make clobber
+            make
+            # run basic sanity test
+            make sanity
+            scl enable python33 bash
+            source ~/vsperfenv/bin/activate
+            cd ../ci
+            ./build-vsperf.sh verify
 
-    postbuilders:
-        - test-macro
+- job-template:
+    name: 'vswitchperf-merge-{stream}'
+
+    project-type: freestyle
+
+    concurrent: true
+
+    properties:
+        - throttle:
+            enabled: true
+            max-total: 3
+            max-per-node: 2
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+        - 'opnfv-build-defaults'
 
+    scm:
+        - gerrit-trigger-scm:
+            credentials-id: '{ssh-credentials}'
+            refspec: ''
+            choosing-strategy: 'default'
+
+    triggers:
+        - gerrit:
+            trigger-on:
+                - change-merged-event
+                - comment-added-contains-event:
+                    comment-contains-value: 'remerge'
+            projects:
+              - project-compare-type: 'ANT'
+                project-pattern: '{project}'
+                branches:
+                    - branch-compare-type: 'ANT'
+                      branch-pattern: '**/{branch}'
+                forbidden-file-paths:
+                  - compare-type: ANT
+                    pattern: 'docs/**'
+
+    builders:
+        - shell: |
+            pwd
+            cd src
+            make clobber
+            make
+            scl enable python33 bash
+            source ~/vsperfenv/bin/activate
+            cd ../ci
+            ./build-vsperf.sh merge