From a66aae950dfe3fc4f2d69e25a5512b97cd763e33 Mon Sep 17 00:00:00 2001 From: Ed Warnicke Date: Tue, 20 Sep 2016 06:52:18 -0700 Subject: [PATCH] Add jobs for deb_dpdk Please make sure to create repos: fdio.deb_dpdk_1607.ubuntu.trusty.main fdio.deb_dpdk_1607.ubuntu.xenial.main For the merge job to publish to. Change-Id: I196c85912324c7dfe872d005bd898fa8b340fdca Signed-off-by: Ed Warnicke --- jjb/deb_dpdk/deb_dpdk.yaml | 182 ++++++++++++++++++++++++++ jjb/deb_dpdk/include-raw-deb_dpdk-build.sh | 30 +++++ jjb/deb_dpdk/include-raw-deb_dpdk-pkg-push.sh | 7 + vagrant/lib/bootstrap-functions.sh | 5 + 4 files changed, 224 insertions(+) create mode 100644 jjb/deb_dpdk/deb_dpdk.yaml create mode 100644 jjb/deb_dpdk/include-raw-deb_dpdk-build.sh create mode 100644 jjb/deb_dpdk/include-raw-deb_dpdk-pkg-push.sh diff --git a/jjb/deb_dpdk/deb_dpdk.yaml b/jjb/deb_dpdk/deb_dpdk.yaml new file mode 100644 index 000000000..d7f9384ee --- /dev/null +++ b/jjb/deb_dpdk/deb_dpdk.yaml @@ -0,0 +1,182 @@ +- project: + name: deb_dpdk + jobs: + - 'deb_dpdk-verify-{stream}-{os}' + - 'deb_dpdk-merge-{stream}-{os}' + - 'deb_dpdk-verify-image-{stream}-{os}' + + project: 'deb_dpdk' + os: + - ubuntu1404: + repo-os-part: 'ubuntu.trusty.main' + - ubuntu1604: + repo-os-part: 'ubuntu.xenial.main' + stream: + - master: + branch: 'master' + repo-stream-part: 'master' + - 1607: + branch: 'deb_dpdk_16.07' + repo-stream-part: 'deb_dpdk_1607' + +- job-template: + name: 'deb_dpdk-verify-{stream}-{os}' + + project-type: freestyle + node: 'verify-{os}' + concurrent: true + + 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}' + - os-parameter: + os: '{os}' + - repo-name-parameter: + repo-name: '{repo-stream-part}.{repo-os-part}' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-submitted: + name: '{project}' + branch: '{branch}' + + builders: + - shell: + !include-raw-escape: + - include-raw-deb_dpdk-build.sh + +- job-template: + name: 'deb_dpdk-verify-image-{stream}-{os}' + + project-type: freestyle + node: 'verify-image-{os}' + concurrent: true + + 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}' + - os-parameter: + os: '{os}' + - repo-name-parameter: + repo-name: '{repo-stream-part}.{repo-os-part}' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit: + server-name: 'Primary' + trigger-on: + - comment-added-contains-event: + comment-contains-value: 'verify-images' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + skip-vote: + successful: true + failed: true + unstable: true + notbuilt: true + + builders: + - shell: + !include-raw-escape: + - include-raw-deb_dpdk-build.sh + +- job-template: + name: 'deb_dpdk-merge-{stream}-{os}' + + project-type: freestyle + node: 'merge-{os}' + + 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}' + - os-parameter: + os: '{os}' + - repo-name-parameter: + repo-name: '{repo-stream-part}.{repo-os-part}' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + choosing-strategy: 'default' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-merged: + name: '{project}' + branch: '{branch}' + + builders: + - config-file-provider: + files: + - file-id: 'deb_dpdk-settings' + variable: 'SETTINGS_FILE' + - file-id: 'global-settings' + variable: 'GLOBAL_SETTINGS_FILE' + - shell: + !include-raw-escape: ../scripts/create_maven_env.sh + - inject: + properties-file: maven_env.txt + - shell: + !include-raw-escape: + - include-raw-deb_dpdk-build.sh + - ../scripts/maven_push_functions.sh + - include-raw-deb_dpdk-pkg-push.sh diff --git a/jjb/deb_dpdk/include-raw-deb_dpdk-build.sh b/jjb/deb_dpdk/include-raw-deb_dpdk-build.sh new file mode 100644 index 000000000..f904631be --- /dev/null +++ b/jjb/deb_dpdk/include-raw-deb_dpdk-build.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# basic build script example +set -e -o pipefail +# do nothing but print the current slave hostname +hostname + +echo "cat /etc/bootstrap.sha" +if [ -f /etc/bootstrap.sha ];then + cat /etc/bootstrap.sha +else + echo "Cannot find /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 /etc/bootstrap-functions.sha" +fi + +echo "sha1sum of this script: ${0}" +sha1sum $0 + +apt-get install `dpkg-checkbuilddeps |& sed "s/dpkg-checkbuilddeps: Unmet build dependencies://g"` + +debuild -uc -us -j4 + +echo "*******************************************************************" +echo "* DEB_DPDK BUILD SUCCESSFULLY COMPLETED" +echo "*******************************************************************" \ No newline at end of file diff --git a/jjb/deb_dpdk/include-raw-deb_dpdk-pkg-push.sh b/jjb/deb_dpdk/include-raw-deb_dpdk-pkg-push.sh new file mode 100644 index 000000000..8e03405f2 --- /dev/null +++ b/jjb/deb_dpdk/include-raw-deb_dpdk-pkg-push.sh @@ -0,0 +1,7 @@ +#!/bin/bash +DEBS=$(find . -type f -iname '*.deb') +echo "Found DEBS=${DEBS}" +for i in $DEBS +do + push_deb "$i" +done \ No newline at end of file diff --git a/vagrant/lib/bootstrap-functions.sh b/vagrant/lib/bootstrap-functions.sh index 71fa0625d..52aebea8b 100644 --- a/vagrant/lib/bootstrap-functions.sh +++ b/vagrant/lib/bootstrap-functions.sh @@ -142,6 +142,11 @@ deb_install_pkgs() { # Install to allow the vpp-docs job to zip up docs to push them PACKAGES="$PACKAGES zip" + # Install for deb_dpdk debian package buiding + PACKAGES="$PACKAGES dpkg-dev dh-python inkscape libcap-dev libpcap-dev" + PACKAGES="$PACKAGES libxen-dev libxenstore3.0 python-sphinx python-sphinx-rtd-theme" + PACKAGES="$PACKAGES texlive-fonts-recommended texlive-latex-extra" + echo '---> Installing packages' # disable double quoting check # shellcheck disable=SC2086 -- 2.16.6