Introduce of DPDK MRR weekly job 69/12869/2
authorPeter Mikus <[email protected]>
Mon, 4 Jun 2018 05:46:31 +0000 (05:46 +0000)
committerPeter Mikus <[email protected]>
Mon, 4 Jun 2018 07:18:03 +0000 (07:18 +0000)
Purpose of the job is to verify latest DPDK performance weekly.

Change-Id: Id49e69183b2fba8510593fb6f6990df1dcbcf99d
Signed-off-by: Peter Mikus <[email protected]>
jjb/csit/csit.yaml
jjb/csit/include-raw-csit-dpdk-perf-mrr-weekly.sh [new file with mode: 0644]

index 31d88cf..a6c0f15 100644 (file)
@@ -20,9 +20,6 @@
         - 'centos7'
 
     jobs:
-        - 'csit-dpdk-perf-{stream}-{type}'
-        - 'csit-vpp-perf-{stream}-{type}'
-        - 'csit-ligato-perf-{stream}-{type}'
         - 'csit-vpp-functional-{stream}-{os}-virl'
         - 'csit-vpp-verify-{stream_timed}-{os}-weekly'
         - 'csit-vpp-verify-{stream_timed}-{os}-semiweekly'
         - 'csit-report-merge-{stream}'
         - 'csit-report-merge-1801_2'
         - 'csit-trending-daily-master'
+        - 'csit-dpdk-perf-{stream}-{type}'
+        - 'csit-dpdk-perf-mrr-weekly-master'
+        - 'csit-ligato-perf-{stream}-{type}'
+        - 'csit-vpp-perf-{stream}-{type}'
         - 'csit-vpp-perf-trend-daily-master'
         - 'csit-vpp-perf-trend-semi-weekly-master'
         - 'csit-vpp-perf-check-{stream}'
           name
               csit-vpp-perf-mrr-daily
           trigger
-              daily
+              twice a day
       perf test-cases selection
-          all CSIT perf suites
-      default tags for vpp startup config and perf test type
-          1T1C - one worker thread, one core
-          2T2C - two worker threads, two cores
+          all CSIT MRR perf suites
       results
           jjb verify
               PASS/FAIL
         - fdio-infra-shiplogs:
             maven-version: 'mvn33-new'
 
+- job-template:
+    name: 'csit-dpdk-perf-mrr-weekly-master'
+
+    description: |
+      objective
+          check dpdk perf mrr weekly
+      job
+          name
+              csit-dpdk-perf-mrr-weekly-master
+          trigger
+              weekly
+      perf test-cases selection
+          all CSIT DPDK MRR perf suites
+      results
+          jjb verify
+              PASS/FAIL
+          present
+              no
+          analyse
+              csit project
+                  catch malfunctions
+                  catch degradations
+
+    project-type: freestyle
+    node: 'ubuntu1604-basebuild-4c-4g'
+    concurrent: false
+
+    logrotate:
+        daysToKeep: '{build-days-to-keep}'
+        numToKeep: '{build-num-to-keep}'
+        artifactDaysToKeep: '{build-artifact-days-to-keep}'
+        artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+
+    wrappers:
+        - fdio-infra-wrappers-non-activity-timeout:
+            build-timeout: '{build-timeout}'
+
+    triggers:
+        - timed: '0 0 * * SUN'
+
+    builders:
+        - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
+        - inject:
+            properties-file: variables.prop
+        - shell:
+            !include-raw-escape: jjb/csit/include-raw-csit-dpdk-perf-mrr-weekly.sh
+
+    publishers:
+        - archive-artifacts:
+            artifacts: 'csit/archive/*.*'
+            latest-only: false
+
+        - robot:
+            output-path: 'csit/archive'
+            other-files:
+              - '*.*'
+
+        - trigger:
+            project: 'csit-trending-daily-master'
+            threshold: 'FAILURE'
+
+        - fdio-infra-shiplogs:
+            maven-version: 'mvn33-new'
 
 - job-template:
     name: 'csit-vpp-perf-verify-{stream}'
diff --git a/jjb/csit/include-raw-csit-dpdk-perf-mrr-weekly.sh b/jjb/csit/include-raw-csit-dpdk-perf-mrr-weekly.sh
new file mode 100644 (file)
index 0000000..8995ae9
--- /dev/null
@@ -0,0 +1,54 @@
+#!/bin/bash
+set -xeu -o pipefail
+
+# check BRANCH_ID value
+if [ "$BRANCH_ID" == "" ]; then
+    echo "branch_id not provided => 'master' will be used"
+    BRANCH_ID="master"
+fi
+
+# make sure there is no csit directory
+if [ -d "./csit/" ]; then
+    rm -rf ./csit/
+fi
+
+# clone csit
+git clone --depth 1 --no-single-branch https://gerrit.fd.io/r/csit
+
+# if the git clone fails, complain clearly and exit
+if [ $? != 0 ]; then
+    echo "Failed to run: git clone --depth 1 --no-single-branch https://gerrit.fd.io/r/csit"
+    exit 1
+fi
+
+cd csit
+
+# get the latest verified version of the required branch
+BRANCH_NAME=$(echo $(git branch -r | grep -E "${BRANCH_ID}-[0-9]+" | tail -n 1))
+
+if [ "${BRANCH_NAME}" == "" ]; then
+    echo "No verified version found for requested branch - exiting"
+    exit 1
+fi
+
+# remove 'origin/' from the branch name
+BRANCH_NAME=$(echo ${BRANCH_NAME#origin/})
+
+# checkout to the required branch
+git checkout ${BRANCH_NAME}
+
+export TEST_TAG="PERFTEST_MRR_DAILY"
+
+# execute csit bootstrap script if it exists
+if [ -e bootstrap-verify-perf-DPDK.sh ]
+then
+    # make sure that bootstrap.sh is executable
+    chmod +x bootstrap-verify-perf-DPDK.sh
+    # run the script
+    ./bootstrap-verify-perf-DPDK.sh
+else
+    echo 'ERROR: No bootstrap-verify-perf-DPDK.sh found'
+    exit 1
+fi
+
+# vim: ts=4 ts=4 sts=4 et :