From c96e29af295322912aad05b3170a639f0ffefc51 Mon Sep 17 00:00:00 2001 From: selias Date: Thu, 8 Dec 2016 10:53:03 +0100 Subject: [PATCH] CSIT-484: New csit-hc2vpp job set Removes obsolete csit-hc2vpp job and adds 2 new jobs: - hc2vpp-csit-integration - runs on master after hc2vpp-integration succeeds - hc2vpp-csit-verify - can be run manually on commits to hc2vpp project Related csit change - https://gerrit.fd.io/r/4170 Change-Id: I0552c593e7080351e1d53c4b0b0d5a7aeb21089d Signed-off-by: selias --- jjb/csit/csit-vpp-honeycomb.yaml | 73 ---------- .../include-raw-csit-hc2vpp-functional-virl.sh | 15 -- jjb/hc2vpp/csit-hc2vpp.yaml | 157 +++++++++++++++++++++ jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh | 26 ++++ .../include-raw-hc2vpp-csit-verify-prebuild.sh | 13 ++ jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh | 29 ++++ 6 files changed, 225 insertions(+), 88 deletions(-) delete mode 100644 jjb/csit/csit-vpp-honeycomb.yaml delete mode 100644 jjb/csit/include-raw-csit-hc2vpp-functional-virl.sh create mode 100644 jjb/hc2vpp/csit-hc2vpp.yaml create mode 100644 jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh create mode 100644 jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh create mode 100644 jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh diff --git a/jjb/csit/csit-vpp-honeycomb.yaml b/jjb/csit/csit-vpp-honeycomb.yaml deleted file mode 100644 index 715d2ddc3..000000000 --- a/jjb/csit/csit-vpp-honeycomb.yaml +++ /dev/null @@ -1,73 +0,0 @@ -- project: - name: csit-hc2vpp - description: 'CSIT jenkins jobs to test Hc2vpp features.' - jobs: - - 'csit-hc2vpp-functional-{stream}-{os}' - project: 'csit' - branch: 'master' - branch-id: 'master' - build-artifact-num-to-keep: 10 - stream: - - master: - branch: 'master' - repo-stream-part: 'master' - - '1609': - branch: 'stable/1609' - repo-stream-part: 'stable.1609' - os: - - ubuntu1404 - -- job-template: - name: 'csit-hc2vpp-functional-{stream}-{os}' - - project-type: freestyle - node: verify - 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}' - - scm: - - git-scm: - credentials-id: 'jenkins-gerrit-credentials' - branch: '{branch}' - - wrappers: - - fdio-infra-wrappers: - build-timeout: '{build-timeout}' - - triggers: - - reverse: - jobs: 'hc2vpp-integration-{stream}-{os}' - result: 'success' - - prebuilders: - - shell: | - if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi - - builders: - - shell: - !include-raw-escape: include-raw-csit-hc2vpp-functional-virl.sh - - postbuilders: - - shell: | - if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.7.0-openjdk-amd64||echo 'ignoring failure';fi - - publishers: - - archive-artifacts: - artifacts: 'report.html, log.html, output.xml' - latest-only: false - - - robot-report: - output-path: '' diff --git a/jjb/csit/include-raw-csit-hc2vpp-functional-virl.sh b/jjb/csit/include-raw-csit-hc2vpp-functional-virl.sh deleted file mode 100644 index 8c2fa9765..000000000 --- a/jjb/csit/include-raw-csit-hc2vpp-functional-virl.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -# execute csit bootstrap script if it exists -if [ ! -e bootstrap-vpp-honeycomb.sh ] -then - echo 'ERROR: No bootstrap-vpp-honeycomb.sh found' - exit 1 -else - # make sure that bootstrap.sh is executable - chmod +x bootstrap-vpp-honeycomb.sh - # run the script - ./bootstrap-vpp-honeycomb.sh -fi - -# vim: ts=4 ts=4 sts=4 et : diff --git a/jjb/hc2vpp/csit-hc2vpp.yaml b/jjb/hc2vpp/csit-hc2vpp.yaml new file mode 100644 index 000000000..aa7cbab9f --- /dev/null +++ b/jjb/hc2vpp/csit-hc2vpp.yaml @@ -0,0 +1,157 @@ +- project: + name: csit-hc2vpp + description: 'jenkins jobs to test Hc2vpp features.' + jobs: + - 'hc2vpp-csit-integration-{stream}-{os}' + - 'hc2vpp-csit-verify-{stream}-{os}' + project: 'hc2vpp' + branch: 'master' + branch-id: 'master' + build-artifact-num-to-keep: 10 + stream: + - master: + branch: 'master' + repo-stream-part: 'master' + os: + - ubuntu1404: + repo-os-part: 'ubuntu.trusty.main' + skip-site: 'true' + +- job-template: + name: 'hc2vpp-csit-integration-{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}' + - os-parameter: + os: '{os}' + + scm: + - git-scm: + credentials-id: 'jenkins-gerrit-credentials' + branch: '{branch}' + + wrappers: + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - reverse: + jobs: 'hc2vpp-verify-{stream}-{os}' + result: 'success' + + prebuilders: + - shell: | + if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi + + builders: + - shell: + !include-raw-escape: include-raw-hc2vpp-csit-integration.sh + + postbuilders: + - shell: | + if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.7.0-openjdk-amd64||echo 'ignoring failure';fi + + publishers: + - archive-artifacts: + artifacts: 'report.html, log.html, output.xml, /var/log/honeycomb/honeycomb.log' + latest-only: false + - email-notification: + email-prefix: '[hc2vpp]' + + - robot-report: + output-path: '' + +- job-template: + name: 'hc2vpp-csit-verify-{stream}-{os}' + + project-type: maven + 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}' + - maven-project-parameter: + maven: 'mvn33' + + scm: + - gerrit-trigger-scm: + credentials-id: 'jenkins-gerrit-credentials' + refspec: '' + choosing-strategy: 'default' + branch: '{branch}' + + wrappers: + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit: + server-name: 'Primary' + trigger-on: + - comment-added-contains-event: + comment-contains-value: 'csit-verify' + 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 + + prebuilders: + - shell: | + if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi + - shell: + !include-raw-escape: include-raw-hc2vpp-csit-verify-prebuild.sh + + maven: + maven-name: 'mvn33' + root-pom: 'pom.xml' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmaven.site.skip={skip-site} site -Dmaven.site.deploy.skip={skip-site} -DskipTests' + maven-opts: '-Xmx2048m -Dmaven.compile.fork=true' + settings: 'hc2vpp-settings' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + postbuilders: + - shell: + !include-raw-escape: include-raw-hc2vpp-csit-verify.sh + - shell: | + if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.7.0-openjdk-amd64||echo 'ignoring failure';fi + + publishers: + - archive-artifacts: + artifacts: 'report.html, log.html, output.xml, /var/log/honeycomb/honeycomb.log' + latest-only: false + - email-notification: + email-prefix: '[hc2vpp]' + + - robot-report: + output-path: '' diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh new file mode 100644 index 000000000..9bc42ad3e --- /dev/null +++ b/jjb/hc2vpp/include-raw-hc2vpp-csit-integration.sh @@ -0,0 +1,26 @@ +#!/bin/bash +set -xeu -o pipefail + +# Clone csit and start tests +git clone https://gerrit.fd.io/r/csit --branch master + +# If the git clone fails, complain clearly and exit +if [ $? != 0 ]; then + echo "Failed to run: git clone https://gerrit.fd.io/r/csit --branch master" + exit +fi + +cd csit +# execute csit bootstrap script if it exists +if [ ! -e bootstrap-hc2vpp-integration.sh ] +then + echo 'ERROR: No bootstrap-hc2vpp-integration.sh found' + exit 1 +else + # make sure that bootstrap.sh is executable + chmod +x bootstrap-hc2vpp-integration.sh + # run the script + ./bootstrap-hc2vpp-integration.sh +fi + +# vim: ts=4 ts=4 sts=4 et : diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh new file mode 100644 index 000000000..df2e4af1f --- /dev/null +++ b/jjb/hc2vpp/include-raw-hc2vpp-csit-verify-prebuild.sh @@ -0,0 +1,13 @@ +#!/bin/bash +set -xeu -o pipefail + +# Clone csit and run package download script +git clone https://gerrit.fd.io/r/csit --branch master + +# If the git clone fails, complain clearly and exit +if [ $? != 0 ]; then + echo "Failed to run: git clone https://gerrit.fd.io/r/csit --branch master" + exit +fi + +./resources/tools/download_hc_build_pkgs.sh diff --git a/jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh b/jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh new file mode 100644 index 000000000..cb75c2338 --- /dev/null +++ b/jjb/hc2vpp/include-raw-hc2vpp-csit-verify.sh @@ -0,0 +1,29 @@ +#!/bin/bash +set -xeu -o pipefail + +# create HC .deb packages +if [ "${OS}" == "ubuntu1404" ]; then + + ./packaging/deb/trusty/debuild.sh + cp ./packaging/deb/trusty/*.deb ./ + +elif [ "${OS}" == "ubuntu1604" ]; then + + ./packaging/deb/xenial/debuild.sh + cp ./packaging/deb/xenial/*.deb ./ +fi + +cd csit +# execute csit bootstrap script if it exists +if [ ! -e bootstrap-hc2vpp-verify.sh ] +then + echo 'ERROR: No bootstrap-hc2vpp-verify.sh found' + exit 1 +else + # make sure that bootstrap.sh is executable + chmod +x bootstrap-hc2vpp-verify.sh + # run the script + ./bootstrap-hc2vpp-verify.sh +fi + +# vim: ts=4 ts=4 sts=4 et : \ No newline at end of file -- 2.16.6