VPP: added 1804 to arm verify stream and arm merge 27/11827/2
authorEd Kern <ejk@cisco.com>
Mon, 16 Apr 2018 20:46:34 +0000 (14:46 -0600)
committerEd Kern <ejk@cisco.com>
Tue, 17 Apr 2018 12:50:12 +0000 (06:50 -0600)
Adding arm verify and merge for master and 1804. Add arm
specific build script to drop make test requirement.
Added single retry on arm builds.

Change-Id: Iba7df6d848d9610e0b9be2296aa42ee5a66dab79
Signed-off-by: Ed Kern <ejk@cisco.com>
jjb/vpp/include-raw-vpp-arm-build.sh [new file with mode: 0644]
jjb/vpp/vpp.yaml

diff --git a/jjb/vpp/include-raw-vpp-arm-build.sh b/jjb/vpp/include-raw-vpp-arm-build.sh
new file mode 100644 (file)
index 0000000..c527b9e
--- /dev/null
@@ -0,0 +1,49 @@
+#!/bin/bash
+# basic build script example
+set -xe -o pipefail
+
+OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
+OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
+
+echo OS_ID: $OS_ID
+echo OS_VERSION_ID: $OS_VERSION_ID
+
+echo "cat /etc/bootstrap.sha"
+if [ -f /etc/bootstrap.sha ];then
+    cat /etc/bootstrap.sha
+else
+    echo "Cannot find cat /etc/bootstrap.sha"
+fi
+
+echo "cat /etc/bootstrap-functions.sha"
+if [ -f /etc/bootstrap-functions.sha ];then
+    cat /etc/bootstrap-functions.sha
+else
+    echo "Cannot find cat /etc/bootstrap-functions.sha"
+fi
+
+echo "sha1sum of this script: ${0}"
+sha1sum $0
+
+echo "CC=${CC}"
+
+make UNATTENDED=yes install-dep
+make UNATTENDED=yes dpdk-install-dev
+make UNATTENDED=yes -C build-root PLATFORM=vpp TAG=vpp wipe-all install-packages
+make UNATTENDED=yes -C build-root PLATFORM=vpp TAG=vpp sample-plugin-install
+make UNATTENDED=yes -C build-root PLATFORM=vpp TAG=vpp libmemif-install
+make UNATTENDED=yes pkg-deb
+
+
+if [ "x${VPP_REPO}" == "x1" ]; then
+    if [ "x${REBASE_NEEDED}" == "x1" ]; then
+        echo "This patch to vpp is based on an old point in the tree that is likely"
+        echo "to fail verify."
+        echo "PLEASE REBASE PATCH ON THE CURRENT HEAD OF THE VPP REPO"
+        exit 1
+    fi
+fi
+
+echo "*******************************************************************"
+echo "* VPP ARM BUILD SUCCESSFULLY COMPLETED"
+echo "*******************************************************************"
index e1f0da0..e5d4c45 100644 (file)
     name: vpp-arm
     jobs:
         - 'vpp-arm-verify-{stream}-{os}'
+        - 'vpp-arm-merge-{stream}-{os}'
     project: 'vpp'
     stream:
         - master:
             branch: 'master'
             repo-stream-part: 'master'
+        - '1804':
+            branch: 'stable/1804'
+            repo-stream-part: 'stable.1804'
     os:
       - ubuntu1604:
           repo-os-part: 'ubuntu.xenial.main'
                   branches:
                     - branch-compare-type: 'ANT'
                       branch-pattern: '**/{branch}'
-            skip-vote:
-                successful: true
-                failed: true
-                unstable: true
-                notbuilt: true
             override-votes: true
             gerrit-build-notbuilt-verified-value: 0
             notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
         - shell:
             !include-raw-escape:
                 - ../scripts/setup_vpp_dpdk_dev_env.sh
-                - include-raw-vpp-build.sh
+                - include-raw-vpp-arm-build.sh
     publishers:
         - archive:
             artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
         - fdio-infra-shiplogs:
             maven-version: 'mvn33-new'
             archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
+        - naginator:
+            rerun-unstable-builds: true
+            max-failed-builds: 1
+            fixed-delay: 90
+
+- job-template:
+    name: 'vpp-arm-merge-{stream}-{os}'
+
+    project-type: freestyle
+    node: '{os}arm-us'
+
+    logrotate:
+        daysToKeep: '{build-days-to-keep}'
+        numToKeep: 100
+        artifactDaysToKeep: '{build-artifact-days-to-keep}'
+        artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+        - os-parameter:
+            os: '{os}'
+        - maven-project-parameter:
+            maven: 'mvn33-new'
+        - maven-exec:
+            maven-version: 'mvn33-new'
+        - stream-parameter:
+            stream: '{stream}'
+        - repo-name-parameter:
+            repo-name: '{repo-stream-part}.{repo-os-part}'
+
+    scm:
+        - gerrit-trigger-scm:
+            credentials-id: 'jenkins-gerrit-credentials'
+            refspec: ''
+            choosing-strategy: 'default'
+
+    wrappers:
+        - fdio-infra-wrappers:
+            build-timeout: '{build-timeout}'
+
+    triggers:
+        - gerrit:
+            server-name: 'Primary'
+            trigger-on:
+                - comment-added-contains-event:
+                    comment-contains-value: 'armmerge'
+            projects:
+                - project-compare-type: 'ANT'
+                  project-pattern: '{project}'
+                  branches:
+                    - branch-compare-type: 'ANT'
+                      branch-pattern: '**/{branch}'
+            override-votes: true
+            gerrit-build-notbuilt-verified-value: 0
+            notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
+
+    builders:
+        - config-file-provider:
+            files:
+              - file-id: '.packagecloud'
+                target: '/home/jenkins'
+        - config-file-provider:
+            files:
+              - file-id: 'packagecloud_api'
+                target: '/home/jenkins'
+        - maven-target:
+            maven-version: 'mvn33-new'
+            goals: '--version'
+            settings: 'vpp-settings'
+            settings-type: cfp
+            global-settings: 'global-settings'
+            global-settings-type: cfp
+        - shell:
+            !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
+        - shell:
+            !include-raw-escape:
+                - ../scripts/setup_vpp_dpdk_dev_env.sh
+                - include-raw-vpp-arm-build.sh
+        - provide-maven-settings:
+            settings-file: 'vpp-settings'
+            global-settings-file: 'global-settings'
+        - shell:
+            !include-raw-escape:
+                - ../scripts/maven_push_functions.sh
+                - include-raw-vpp-maven-push.sh
+        - shell:
+            !include-raw-escape:
+                - ../scripts/packagecloud_push.sh
+
+    publishers:
+        - archive:
+            artifacts: 'build-root/*.rpm,build-root/*.deb,dpdk/*.rpm,dpdk/*.deb'
+            allow-empty: 'true'
+            fingerprint: false
+            only-if-success: true
+            default-excludes: false
+        - fdio-infra-shiplogs:
+            maven-version: 'mvn33-new'
+        - naginator:
+            rerun-unstable-builds: true
+            max-failed-builds: 1
+            fixed-delay: 90
 
 - job-template:
     name: 'vpp-checkstyle-verify-{stream}'