From: Sam Hague Date: Sat, 20 Jan 2018 14:54:08 +0000 (+0000) Subject: Merge "Increase ocata packer timeout from 60m to 75m" X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=d7c3880fe4578a70a16e2237bb8be8a1742c0291;hp=57c23a32af24223b2101b70e50adf402de0fd8c2;p=releng%2Fbuilder.git Merge "Increase ocata packer timeout from 60m to 75m" --- diff --git a/.coafile b/.coafile index 60e83070f..47cf0afb0 100644 --- a/.coafile +++ b/.coafile @@ -31,7 +31,6 @@ files = **.sh ignore = .git/**, .tox/**, jjb/global-jjb/**, - jjb/integration/**, jenkins-scripts/*-local-env.sh shell = bash indent_size = 4 diff --git a/docs/cloud-images.rst b/docs/cloud-images.rst index f528fbbeb..e24ebbbb2 100644 --- a/docs/cloud-images.rst +++ b/docs/cloud-images.rst @@ -1,9 +1,11 @@ Following are the list of published images available to be used with Jenkins jobs. +* ZZCI - CentOS 7 - builder - 20180109-0417 * ZZCI - CentOS 7 - devstack - 20171208-1648 * ZZCI - CentOS 7 - devstack-ocata - 20171208-1649 * ZZCI - CentOS 7 - devstack-pike - 20171208-1649 * ZZCI - CentOS 7 - docker - 20171209-0317 +* ZZCI - CentOS 7 - docker - 20180109-0346 * ZZCI - CentOS 7 - java-builder - 20171206-1842 * ZZCI - CentOS 7 - java-builder - 20171209-0032 * ZZCI - CentOS 7 - robot - 20171207-1911 diff --git a/docs/jenkins.rst b/docs/jenkins.rst index 6b07f6c06..e6f802a04 100644 --- a/docs/jenkins.rst +++ b/docs/jenkins.rst @@ -202,26 +202,50 @@ accounts in the cloud so should ensure consistent performance. - CPUs - Memory - * - v1-performance-1 + * - v2-standard-1 - 1 - 4 - * - v1-performance-2 + * - v2-standard-2 - 2 - 8 - * - v1-performance-4 + * - v2-standard-4 - 4 - 16 - * - v1-performance-8 + * - v2-standard-8 - 8 - 32 - * - v1-performance-16 + * - v2-standard-16 - 16 - 64 + * - v2-highcpu-1 + - 1 + - 1 + + * - v2-highcpu-2 + - 2 + - 2 + + * - v2-highcpu-4 + - 4 + - 4 + + * - v2-highcpu-8 + - 8 + - 8 + + * - v2-highcpu-16 + - 16 + - 16 + + * - v2-highcpu-32 + - 32 + - 32 + Pool: ODLVEX ^^^^^^^^^^^^ diff --git a/jenkins-scripts/basic_settings.sh b/jenkins-scripts/basic_settings.sh index 11514d382..a80b9ffeb 100755 --- a/jenkins-scripts/basic_settings.sh +++ b/jenkins-scripts/basic_settings.sh @@ -31,4 +31,10 @@ cat < /etc/ssh/ssh_known_hosts [140.211.169.26]:29418,[git.opendaylight.org]:29418 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAyRXyHEw/P1iZr/fFFzbodT5orVV/ftnNRW59Zh9rnSY5Rmbc9aygsZHdtiWBERVVv8atrJSdZool75AglPDDYtPICUGWLR91YBSDcZwReh5S9es1dlQ6fyWTnv9QggSZ98KTQEuE3t/b5SfH0T6tXWmrNydv4J2/mejKRRLU2+oumbeVN1yB+8Uau/3w9/K5F5LgsDDzLkW35djLhPV8r0OfmxV/cAnLl7AaZlaqcJMA+2rGKqM3m3Yu+pQw4pxOfCSpejlAwL6c8tA9naOvBkuJk+hYpg5tDEq2QFGRX5y1F9xQpwpdzZROc5hdGYntM79VMMXTj+95dwVv/8yTsw== EOKNOWN +# To handle the prompt style that is expected all over the environment +# with how use use robotframework we need to make sure that it is +# consistent for any of the users that are created during dynamic spin +# ups +echo 'PS1="[\u@\h \W]> "' >> /etc/skel/.bashrc + # vim: sw=2 ts=2 sts=2 et : diff --git a/jjb/aaa/aaa.yaml b/jjb/aaa/aaa.yaml index 08cfbdfbb..e6816390e 100644 --- a/jjb/aaa/aaa.yaml +++ b/jjb/aaa/aaa.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: oxygen project: 'aaa' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: nitrogen project: 'aaa' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: carbon project: 'aaa' diff --git a/jjb/alto/alto.yaml b/jjb/alto/alto.yaml index 13c60f745..4527fd8e8 100644 --- a/jjb/alto/alto.yaml +++ b/jjb/alto/alto.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'alto' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'alto' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'alto' diff --git a/jjb/atrium/atrium.yaml b/jjb/atrium/atrium.yaml index aa3c6139d..7a9dad82b 100644 --- a/jjb/atrium/atrium.yaml +++ b/jjb/atrium/atrium.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'atrium' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'atrium' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'atrium' diff --git a/jjb/autorelease/autorelease-projects.yaml b/jjb/autorelease/autorelease-projects.yaml index b53a437ec..a9b0a373f 100644 --- a/jjb/autorelease/autorelease-projects.yaml +++ b/jjb/autorelease/autorelease-projects.yaml @@ -3,11 +3,11 @@ name: autorelease-projects jobs: - 'autorelease-generate-release-notes-{stream}' - - 'autorelease-release-{stream}' + - 'autorelease-release-{stream}': + build-node: centos7-autorelease-8c-16g - 'autorelease-update-validate-jobs-{stream}' - 'autorelease-version-bump-{stream}' - - '{project-name}-validate-autorelease-{stream}': - build-node: centos7-builder-2c-8g + - '{project-name}-validate-autorelease-{stream}' - gerrit-tox-verify # todo: After Carbon EOL remove next-release-tag and directy pass diff --git a/jjb/autorelease/autorelease-templates.yaml b/jjb/autorelease/autorelease-templates.yaml index d868d9e1e..3dfe88483 100644 --- a/jjb/autorelease/autorelease-templates.yaml +++ b/jjb/autorelease/autorelease-templates.yaml @@ -7,6 +7,7 @@ # Defaults # ############ + build-node: centos7-autorelease-8c-16g java-version: openjdk8 mvn-version: mvn33 extra-mvn-opts: '' @@ -16,7 +17,7 @@ ##################### project-type: freestyle - node: centos7-builder-4c-16g + node: '{build-node}' jdk: '{java-version}' cron: 'H 0 * * *' @@ -417,6 +418,8 @@ settings-type: cfp global-settings: global-settings global-settings-type: cfp + # Hack to workaround the duplicate-finder plugin in odlparent breaking validate-autorelease + - shell: sed -i 's/validate/none/' /tmp/r/org/opendaylight/odlparent/odlparent/3.0.2/odlparent-3.0.2.pom - maven-target: maven-version: mvn33 pom: pom.xml diff --git a/jjb/autorelease/notify-build-failure.sh b/jjb/autorelease/notify-build-failure.sh index 5128c97bb..0e3fe29b4 100644 --- a/jjb/autorelease/notify-build-failure.sh +++ b/jjb/autorelease/notify-build-failure.sh @@ -11,6 +11,8 @@ # This script parses the console log to discover which project has caused a # build failure and notify the project as appropriate. +echo "---> notify-build-failure.sh" + NEWLINE=$'\n' RELEASE_EMAIL="release@lists.opendaylight.org" ARCHIVES_DIR="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER" diff --git a/jjb/bgpcep/bgpcep.yaml b/jjb/bgpcep/bgpcep.yaml index 445e73576..da8da068b 100644 --- a/jjb/bgpcep/bgpcep.yaml +++ b/jjb/bgpcep/bgpcep.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'bgpcep' @@ -39,9 +38,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'bgpcep' @@ -74,9 +72,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'bgpcep' diff --git a/jjb/bier/bier.yaml b/jjb/bier/bier.yaml index 4b9c3b86f..4cbf05927 100644 --- a/jjb/bier/bier.yaml +++ b/jjb/bier/bier.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'bier' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'bier' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'bier' diff --git a/jjb/capwap/capwap.yaml b/jjb/capwap/capwap.yaml index 9c87714fb..eb31447c6 100644 --- a/jjb/capwap/capwap.yaml +++ b/jjb/capwap/capwap.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'capwap' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'capwap' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'capwap' diff --git a/jjb/cardinal/cardinal.yaml b/jjb/cardinal/cardinal.yaml index 3880e23be..ffc3baa5c 100644 --- a/jjb/cardinal/cardinal.yaml +++ b/jjb/cardinal/cardinal.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'cardinal' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'cardinal' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'cardinal' diff --git a/jjb/centinel/centinel.yaml b/jjb/centinel/centinel.yaml index 14b9db0e9..bd045cbf8 100644 --- a/jjb/centinel/centinel.yaml +++ b/jjb/centinel/centinel.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'centinel' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'centinel' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'centinel' diff --git a/jjb/coe/coe-csit-openstack.yaml b/jjb/coe/coe-csit-openstack.yaml deleted file mode 100644 index abef3f782..000000000 --- a/jjb/coe/coe-csit-openstack.yaml +++ /dev/null @@ -1,49 +0,0 @@ ---- -- project: - name: coe-csit-openstack-integration - jobs: - - '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}' - - project: 'coe' - - topology: - - 1node: - openstack_system_count: 3 - odl_system_count: 1 - enable-haproxy: 'no' - install-features: 'odl-netvirt-openstack' - - 3node: - openstack_system_count: 4 - odl_system_count: 3 - enable-haproxy: 'yes' - install-features: 'odl-jolokia,odl-netvirt-openstack' - - testplan: '{project}-{topology}-openstack.txt' - - functionality: 'kubernetes' - - stream: - - oxygen: - branch: 'master' - - nitrogen: - branch: 'stable/nitrogen' - - openstack: - - ocata: - openstack-branch: 'stable/ocata' - odl-ml2-branch: 'stable/ocata' - odl-ml2-driver-version: 'v2' - openstack_system_image: '{openstack_system_image_ocata}' - - create-initial-networks: 'True' - - enable-openstack-plugins: 'networking-odl,kuryr-kubernetes,neutron-lbaas' - - enable-openstack-services: > - legacy_etcd,docker,q-lbaasv2,kubernetes-api, - kubernetes-controller-manager,kubernetes-scheduler,kubelet,kuryr-kubernetes - - disable-openstack-services: 'etcd3' - - lbaas-service-provider: > - 'LOADBALANCERV2:opendaylight:networking_odl.lbaas.driver_v2.OpenDaylightLbaasDriverV2:default' diff --git a/jjb/coe/coe.yaml b/jjb/coe/coe.yaml index c83c050c3..bda82a856 100644 --- a/jjb/coe/coe.yaml +++ b/jjb/coe/coe.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'coe' project-name: 'coe' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'coe' project-name: 'coe' @@ -57,8 +55,7 @@ name: coe-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'coe' project-name: 'coe' diff --git a/jjb/controller/controller.yaml b/jjb/controller/controller.yaml index dc7bc56e3..78631d214 100644 --- a/jjb/controller/controller.yaml +++ b/jjb/controller/controller.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: oxygen project: 'controller' @@ -33,8 +32,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: nitrogen project: 'controller' @@ -60,8 +58,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: carbon project: 'controller' diff --git a/jjb/copy-sandbox-logs.sh b/jjb/copy-sandbox-logs.sh new file mode 100644 index 000000000..2cc2c82c6 --- /dev/null +++ b/jjb/copy-sandbox-logs.sh @@ -0,0 +1,47 @@ +#!/bin/bash +# SPDX-License-Identifier: EPL-1.0 +############################################################################## +# Copyright (c) 2017 The Linux Foundation and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +############################################################################## +# Allows folks to copy sandbox logs over to releng for longer storage +# +# In some cases folks would like to save sandbox logs for a longer period of +# time in order to troubleshoot difficult tasks. This script can be used to +# trigger Jenkins production to copy specific logs over for longer storage. +# +# This is triggered via Gerrit comment. +# Usage: copy-logs: JOB_NAME/BUILD_NUMBER +echo "---> copy-sandbox-logs.sh" + +build_path="$(echo "$GERRIT_EVENT_COMMENT_TEXT" | grep 'copy-logs:' | awk -F: '{print $2}' | tr -d '[:space:]')" +fetch_url="https://logs.opendaylight.org/sandbox/vex-yul-odl-jenkins-2/$build_path" + +COPY_DIR="$WORKSPACE/archives" +mkdir -p "$COPY_DIR" +pushd "$COPY_DIR" || exit + +# Ensure that the repo_url has a trailing slash as wget needs it to work +case "$fetch_url" in + */) + ;; + *) + fetch_url="$fetch_url/" + ;; +esac + +echo "Fetching artifacts from $fetch_url..." +wget -nv --recursive --execute robots=off --no-parent \ + --no-host-directories --cut-dirs=2 --level=15 \ + "$fetch_url" + +echo "Removing files that do not need to be cloned..." +mapfile -t remove_files < <(find . -type f -name "*index.html*") +for f in "${remove_files[@]}"; do + rm "$f" +done +popd || exit diff --git a/jjb/coretutorials/coretutorials.yaml b/jjb/coretutorials/coretutorials.yaml index 5a300fe31..ae09f245f 100644 --- a/jjb/coretutorials/coretutorials.yaml +++ b/jjb/coretutorials/coretutorials.yaml @@ -3,8 +3,7 @@ name: coretutorials-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'coretutorials' @@ -21,6 +20,7 @@ dependencies: '' email-upstream: '[coretutorials]' archive-artifacts: '' + build-timeout: 120 # Used by the release job staging-profile-id: 96cd299563ec6 @@ -29,8 +29,7 @@ name: coretutorials-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'coretutorials' @@ -47,6 +46,7 @@ dependencies: '' email-upstream: '[coretutorials]' archive-artifacts: '' + build-timeout: 120 # Used by the release job staging-profile-id: 96cd299563ec6 @@ -55,8 +55,7 @@ name: coretutorials-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'coretutorials' @@ -74,6 +73,7 @@ dependencies: '' email-upstream: '[coretutorials]' archive-artifacts: '' + build-timeout: 120 # Used by the release job staging-profile-id: 96cd299563ec6 @@ -89,3 +89,4 @@ mvn-settings: 'coretutorials-settings' mvn-goals: 'clean install' mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m' + build-timeout: 120 diff --git a/jjb/daexim/daexim.yaml b/jjb/daexim/daexim.yaml index 2bd15c025..96ad52781 100644 --- a/jjb/daexim/daexim.yaml +++ b/jjb/daexim/daexim.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'daexim' project-name: 'daexim' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'daexim' project-name: 'daexim' diff --git a/jjb/didm/didm.yaml b/jjb/didm/didm.yaml index 88a2f40c9..de560eea3 100644 --- a/jjb/didm/didm.yaml +++ b/jjb/didm/didm.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'didm' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'didm' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'didm' diff --git a/jjb/dlux/dlux.yaml b/jjb/dlux/dlux.yaml index 4bc0cff74..e6ab39ea9 100644 --- a/jjb/dlux/dlux.yaml +++ b/jjb/dlux/dlux.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'dlux' @@ -17,7 +16,7 @@ - mvn33: mvn-version: 'mvn33' mvn-settings: 'dlux-settings' - mvn-goals: 'clean install' + mvn-goals: 'clean install -e' mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m' dependencies: 'odlparent-merge-{stream}' email-upstream: '[dlux] [odlparent]' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'dlux' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'dlux' diff --git a/jjb/dluxapps/dluxapps.yaml b/jjb/dluxapps/dluxapps.yaml index 486b12b1d..0b479d155 100644 --- a/jjb/dluxapps/dluxapps.yaml +++ b/jjb/dluxapps/dluxapps.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'dluxapps' project-name: 'dluxapps' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'dluxapps' project-name: 'dluxapps' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'dluxapps' project-name: 'dluxapps' diff --git a/jjb/eman/eman.yaml b/jjb/eman/eman.yaml index 859189364..df4f24a34 100644 --- a/jjb/eman/eman.yaml +++ b/jjb/eman/eman.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'eman' @@ -33,9 +32,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'eman' @@ -62,9 +60,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'eman' diff --git a/jjb/faas/faas.yaml b/jjb/faas/faas.yaml index 73a5ef469..af7804f42 100644 --- a/jjb/faas/faas.yaml +++ b/jjb/faas/faas.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'faas' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'faas' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'faas' diff --git a/jjb/federation/federation.yaml b/jjb/federation/federation.yaml index 50ce1bdf8..b4180e1b3 100644 --- a/jjb/federation/federation.yaml +++ b/jjb/federation/federation.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'federation' project-name: 'federation' @@ -32,9 +31,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'federation' project-name: 'federation' @@ -60,9 +58,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'federation' project-name: 'federation' diff --git a/jjb/genius/genius-patch-test.yaml b/jjb/genius/genius-patch-test.yaml index 2074fe8c2..0bd622eb4 100644 --- a/jjb/genius/genius-patch-test.yaml +++ b/jjb/genius/genius-patch-test.yaml @@ -34,3 +34,7 @@ - genius: csit-list: > genius-csit-1node-gate-all-{stream} + + - cluster: + csit-list: > + genius-csit-3node-gate-all-{stream} diff --git a/jjb/genius/genius.yaml b/jjb/genius/genius.yaml index ab752c210..a11bd16a7 100644 --- a/jjb/genius/genius.yaml +++ b/jjb/genius/genius.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'genius' @@ -38,8 +37,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'genius' @@ -70,8 +68,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'genius' diff --git a/jjb/global-jjb b/jjb/global-jjb index 562c33735..a5a5237ab 160000 --- a/jjb/global-jjb +++ b/jjb/global-jjb @@ -1 +1 @@ -Subproject commit 562c3373545caf7c69524adfec4d3cba7e38c0c5 +Subproject commit a5a5237ab810ab8ad4ff61731f9f8bdc1e1e342e diff --git a/jjb/groupbasedpolicy/groupbasedpolicy.yaml b/jjb/groupbasedpolicy/groupbasedpolicy.yaml index e3b1443dd..dcf6c8ccc 100644 --- a/jjb/groupbasedpolicy/groupbasedpolicy.yaml +++ b/jjb/groupbasedpolicy/groupbasedpolicy.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'groupbasedpolicy' @@ -37,8 +36,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'groupbasedpolicy' @@ -69,8 +67,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'groupbasedpolicy' diff --git a/jjb/honeycomb/vbd/vbd.yaml b/jjb/honeycomb/vbd/vbd.yaml index 43e0f2def..157660f36 100644 --- a/jjb/honeycomb/vbd/vbd.yaml +++ b/jjb/honeycomb/vbd/vbd.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'honeycomb/vbd' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'honeycomb/vbd' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'honeycomb/vbd' diff --git a/jjb/infrautils/infrautils.yaml b/jjb/infrautils/infrautils.yaml index 6c743bc37..77fe7e4b3 100644 --- a/jjb/infrautils/infrautils.yaml +++ b/jjb/infrautils/infrautils.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'infrautils' @@ -32,8 +31,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'infrautils' @@ -59,8 +57,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'infrautils' diff --git a/jjb/integration/common-functions.sh b/jjb/integration/common-functions.sh new file mode 100644 index 000000000..7e3b3b648 --- /dev/null +++ b/jjb/integration/common-functions.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +# Basic controller configuration settings +export MAVENCONF=/tmp/${BUNDLEFOLDER}/etc/org.ops4j.pax.url.mvn.cfg +export FEATURESCONF=/tmp/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg +export CUSTOMPROP=/tmp/${BUNDLEFOLDER}/etc/custom.properties +export LOGCONF=/tmp/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg +export MEMCONF=/tmp/${BUNDLEFOLDER}/bin/setenv +export CONTROLLERMEM="2048m" + +# Cluster specific configuration settings +export AKKACONF=/tmp/${BUNDLEFOLDER}/configuration/initial/akka.conf +export MODULESCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/modules.conf +export MODULESHARDSCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/module-shards.conf + +# Setup JAVA_HOME and MAX_MEM Value in ODL startup config file +function set_java_vars() { + + echo "Configure java home and max memory..." + sed -ie 's%^# export JAVA_HOME%export JAVA_HOME="\${JAVA_HOME:-${JAVA_HOME}}"%g' ${MEMCONF} + sed -ie 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/g' ${MEMCONF} + cat ${MEMCONF} + + echo "Set Java version" + sudo /usr/sbin/alternatives --install /usr/bin/java java ${JAVA_HOME}/bin/java 1 + sudo /usr/sbin/alternatives --set java ${JAVA_HOME}/bin/java + echo "JDK default version ..." + java -version + + echo "Set JAVA_HOME" + export JAVA_HOME="${JAVA_HOME}" + # shellcheck disable=SC2037 + JAVA_RESOLVED=\`readlink -e "\${JAVA_HOME}/bin/java"\` + echo "Java binary pointed at by JAVA_HOME: \${JAVA_RESOLVED}" +} # set_java_vars() diff --git a/jjb/integration/distribution/distribution-check-bootup.sh b/jjb/integration/distribution/distribution-check-bootup.sh index d4ffea9cd..2a333dea7 100644 --- a/jjb/integration/distribution/distribution-check-bootup.sh +++ b/jjb/integration/distribution/distribution-check-bootup.sh @@ -20,10 +20,13 @@ unzip -q "${BUNDLE}" echo "Configuring the startup features..." FEATURESCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg" -# Add test feature repo if Karaf 4. -sed -ie "s%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}" -# Add test feature repo if Karaf 3. -sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}" +FEATURE_TEST_STRING="features-integration-test" +if [[ "$KARAF_VERSION" == "karaf4" ]]; then + FEATURE_TEST_STRING="features-test" +fi + +sed -ie "s%\(featuresRepositories=\|featuresRepositories =\)%featuresRepositories = mvn:org.opendaylight.integration/${FEATURE_TEST_STRING}/${BUNDLEVERSION}/xml/features,%g" ${FEATURESCONF} + # Add actual boot features. sed -ie "s/\(featuresBoot=\|featuresBoot =\)/featuresBoot = ${ACTUALFEATURES},/g" "${FEATURESCONF}" cat "${FEATURESCONF}" @@ -43,6 +46,7 @@ netstat -pnatu echo "redirected karaf console output to karaf_console.log" export KARAF_REDIRECT="${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" +mkdir -p ${WORKSPACE}/${BUNDLEFOLDER}/data/log if [ "${JDKVERSION}" == 'openjdk8' ]; then echo "Setting the JRE Version to 8" @@ -61,6 +65,7 @@ java -version echo "Redirecting karaf console output to karaf_console.log" export KARAF_REDIRECT="${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" +mkdir -p ${WORKSPACE}/${BUNDLEFOLDER}/data/log echo "Starting controller..." ${WORKSPACE}/${BUNDLEFOLDER}/bin/start @@ -151,9 +156,9 @@ echo "Kill controller" ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh echo "Bug 4628: Detecting misplaced config files" -pushd "${WORKSPACE}/${BUNDLEFOLDER}" +pushd "${WORKSPACE}/${BUNDLEFOLDER}" || exit XMLS_FOUND="$(echo *.xml)" -popd +popd || exit if [ "$XMLS_FOUND" != "*.xml" ]; then echo "Bug 4628 confirmed." ## TODO: Uncomment the following when ODL is fixed, to guard against regression. diff --git a/jjb/integration/distribution/distribution-deploy-offline.sh b/jjb/integration/distribution/distribution-deploy-offline.sh index f6c83c2ad..e7920b534 100644 --- a/jjb/integration/distribution/distribution-deploy-offline.sh +++ b/jjb/integration/distribution/distribution-deploy-offline.sh @@ -15,10 +15,13 @@ unzip -q "${BUNDLE}" echo "Configuring the startup features..." FEATURESCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg" -# Add test feature repo if Karaf 4. -sed -ie "s%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}" -# Add test feature repo if Karaf 3. -sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}" +FEATURE_TEST_STRING="features-integration-test" +if [[ "$KARAF_VERSION" == "karaf4" ]]; then + FEATURE_TEST_STRING="features-test" +fi + +sed -ie "s%\(featuresRepositories=\|featuresRepositories =\)%featuresRepositories = mvn:org.opendaylight.integration/${FEATURE_TEST_STRING}/${BUNDLEVERSION}/xml/features,%g" ${FEATURESCONF} + # Feature is instaled later. cat "${FEATURESCONF}" @@ -57,6 +60,7 @@ java -version echo "Redirecting karaf console output to karaf_console.log" export KARAF_REDIRECT="${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" +mkdir -p ${WORKSPACE}/${BUNDLEFOLDER}/data/log echo "Starting controller..." ${WORKSPACE}/${BUNDLEFOLDER}/bin/start diff --git a/jjb/integration/distribution/distribution-deploy-verify.sh b/jjb/integration/distribution/distribution-deploy-verify.sh index e3e60a5a9..c81ac6db6 100644 --- a/jjb/integration/distribution/distribution-deploy-verify.sh +++ b/jjb/integration/distribution/distribution-deploy-verify.sh @@ -14,11 +14,14 @@ echo "Extracting the new controller..." unzip -q "${BUNDLE}" echo "Configuring the startup features..." -FEATURESCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg -# Add test feature repo if Karaf 4. -sed -ie "s%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}" -# Add test feature repo if Karaf 3. -sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}" +FEATURESCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg" +FEATURE_TEST_STRING="features-integration-test" +if [[ "$KARAF_VERSION" == "karaf4" ]]; then + FEATURE_TEST_STRING="features-test" +fi + +sed -ie "s%\(featuresRepositories=\|featuresRepositories =\)%featuresRepositories = mvn:org.opendaylight.integration/${FEATURE_TEST_STRING}/${BUNDLEVERSION}/xml/features,%g" ${FEATURESCONF} + # Add actual boot features. sed -ie "s/\(featuresBoot=\|featuresBoot =\)/featuresBoot = ${ACTUALFEATURES},/g" "${FEATURESCONF}" cat "${FEATURESCONF}" @@ -53,6 +56,7 @@ java -version echo "Redirecting karaf console output to karaf_console.log" export KARAF_REDIRECT="${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" +mkdir -p ${WORKSPACE}/${BUNDLEFOLDER}/data/log echo "Starting controller..." ${WORKSPACE}/${BUNDLEFOLDER}/bin/start @@ -129,9 +133,9 @@ echo "Kill controller" ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh echo "Bug 4628: Detecting misplaced config files" -pushd "${WORKSPACE}/${BUNDLEFOLDER}" +pushd "${WORKSPACE}/${BUNDLEFOLDER}" || exit XMLS_FOUND=`echo *.xml` -popd +popd || exit if [ "$XMLS_FOUND" != "*.xml" ]; then echo "Bug 4628 confirmed." ## TODO: Uncomment the following when ODL is fixed, to guard against regression. diff --git a/jjb/integration/distribution/distribution.yaml b/jjb/integration/distribution/distribution.yaml index 53d72fc8b..b5e48fd91 100644 --- a/jjb/integration/distribution/distribution.yaml +++ b/jjb/integration/distribution/distribution.yaml @@ -10,6 +10,7 @@ - 'distribution-offline-{stream}' - 'distribution-check-{stream}' - gerrit-maven-clm + - gerrit-maven-verify-dependencies - gerrit-tox-verify project: integration/distribution diff --git a/jjb/integration/integration-configure-clustering.sh b/jjb/integration/integration-configure-clustering.sh index 27a9d2447..5b1db13ec 100644 --- a/jjb/integration/integration-configure-clustering.sh +++ b/jjb/integration/integration-configure-clustering.sh @@ -9,20 +9,9 @@ echo "#################################################" echo "## Configure Cluster and Start ##" echo "#################################################" -AKKACONF=/tmp/${BUNDLEFOLDER}/configuration/initial/akka.conf -MODULESCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/modules.conf -MODULESHARDSCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/module-shards.conf -MAVENCONF=/tmp/${BUNDLEFOLDER}/etc/org.ops4j.pax.url.mvn.cfg -FEATURESCONF=/tmp/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg -CUSTOMPROP=/tmp/${BUNDLEFOLDER}/etc/custom.properties -LOGCONF=/tmp/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg -MEMCONF=/tmp/${BUNDLEFOLDER}/bin/setenv -CONTROLLERMEM="2048m" - - if [ ${CONTROLLERSCOPE} == 'all' ]; then ACTUALFEATURES="odl-integration-compatible-with-all,${CONTROLLERFEATURES}" - CONTROLLERMEM="3072m" + export CONTROLLERMEM="3072m" else ACTUALFEATURES="odl-infrautils-ready,${CONTROLLERFEATURES}" fi @@ -82,7 +71,13 @@ cat ${MAVENCONF} echo "Configuring the startup features..." sed -ie "s/\(featuresBoot=\|featuresBoot =\)/featuresBoot = ${ACTUALFEATURES},/g" ${FEATURESCONF} -sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features,mvn:org.apache.karaf.decanter/apache-karaf-decanter/1.0.0/xml/features%g" ${FEATURESCONF} + +FEATURE_TEST_STRING="features-integration-test" +if [[ "$KARAF_VERSION" == "karaf4" ]]; then + FEATURE_TEST_STRING="features-test" +fi + +sed -ie "s%\(featuresRepositories=\|featuresRepositories =\)%featuresRepositories = mvn:org.opendaylight.integration/\${FEATURE_TEST_STRING}/${BUNDLEVERSION}/xml/features,mvn:org.apache.karaf.decanter/apache-karaf-decanter/1.0.0/xml/features,%g" ${FEATURESCONF} cat ${FEATURESCONF} echo "Configuring the log..." @@ -110,22 +105,7 @@ if [ "${ODL_ENABLE_L3_FWD}" == "yes" ]; then cat ${CUSTOMPROP} fi -echo "Configure java home and max memory..." -sed -ie 's%^# export JAVA_HOME%export JAVA_HOME="\${JAVA_HOME:-${JAVA_HOME}}"%g' ${MEMCONF} -sed -ie 's/JAVA_MAX_MEM="2048m"/JAVA_MAX_MEM="${CONTROLLERMEM}"/g' ${MEMCONF} -cat ${MEMCONF} - -echo "Set Java version" -sudo /usr/sbin/alternatives --install /usr/bin/java java ${JAVA_HOME}/bin/java 1 -sudo /usr/sbin/alternatives --set java ${JAVA_HOME}/bin/java -echo "JDK default version ..." -java -version - -echo "Set JAVA_HOME" -export JAVA_HOME="${JAVA_HOME}" -# Did you know that in HERE documents, single quote is an ordinary character, but backticks are still executing? -JAVA_RESOLVED=\`readlink -e "\${JAVA_HOME}/bin/java"\` -echo "Java binary pointed at by JAVA_HOME: \${JAVA_RESOLVED}" +set_java_vars # Copy shard file if exists if [ -f /tmp/custom_shard_config.txt ]; then @@ -153,6 +133,7 @@ cat > ${WORKSPACE}/startup-script.sh < ${WORKSPACE}/startup-script.sh < ${WORKSPACE}/post-startup-script.sh < testplan.txt cat testplan.txt -SUITES=$( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' ' ) + +# Use the testplan if specific SUITES are not defined. +if [ -z "${SUITES}" ]; then + SUITES=`egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' '` +else + newsuites="" + workpath="${WORKSPACE}/test/csit/suites" + for suite in ${SUITES}; do + fullsuite="${workpath}/${suite}" + if [ -z "${newsuites}" ]; then + newsuites+=${fullsuite} + else + newsuites+=" "${fullsuite} + fi + done + SUITES=${newsuites} +fi echo "Starting Robot test suites ${SUITES} ..." pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -e skip_if_${DISTROSTREAM} -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp \ diff --git a/jjb/integration/integration-deploy-openstack-run-test.sh b/jjb/integration/integration-deploy-openstack-run-test.sh index a91acfaad..8fa57c7f3 100644 --- a/jjb/integration/integration-deploy-openstack-run-test.sh +++ b/jjb/integration/integration-deploy-openstack-run-test.sh @@ -6,7 +6,7 @@ source ${ROBOT_VENV}/bin/activate PYTHON="${ROBOT_VENV}/bin/python" SSH="ssh -t -t" -ADMIN_PASSWORD=admin +ADMIN_PASSWORD="admin" # TODO: remove this work to run changes.py if/when it's moved higher up to be visible at the Robot level echo "showing recent changes that made it in to the distribution used by this job" @@ -264,6 +264,7 @@ enable_isolated_metadata = True [[post-config|/etc/nova/nova.conf]] [DEFAULT] force_config_drive = False +force_raw_images = False [scheduler] discover_hosts_in_cells_interval = 30 @@ -344,6 +345,7 @@ EOF auth_strategy = keystone [DEFAULT] use_neutron = True +force_raw_images = False EOF echo "Compute local.conf created:" @@ -352,6 +354,7 @@ EOF function configure_haproxy_for_neutron_requests() { MGRIP=$1 + # shellcheck disable=SC2206 ODL_IPS=(${2//,/ }) cat > ${WORKSPACE}/install_ha_proxy.sh<< EOF @@ -452,15 +455,11 @@ function collect_logs () { echo -e "/usr/sbin/lsmod | /usr/bin/grep openvswitch\n" /usr/sbin/lsmod | /usr/bin/grep openvswitch echo -e "\ngrep ct_ /var/log/openvswitch/ovs-vswitchd.log\n" -grep ct_ /var/log/openvswitch/ovs-vswitchd.log -echo -e "\novsdb-tool -mm show-log\n" -ovsdb-tool -mm show-log +grep "Datapath supports" /var/log/openvswitch/ovs-vswitchd.log echo -e "\nsudo netstat -punta\n" sudo netstat -punta echo -e "\nsudo getenforce\n" sudo getenforce -echo -e "\njournalctl > /tmp/journalctl.log\n" -sudo journalctl > /tmp/journalctl.log echo -e "\nsudo systemctl status httpd\n" sudo systemctl status httpd echo -e "\nenv\n" @@ -468,10 +467,16 @@ env source /opt/stack/devstack/openrc admin admin echo -e "\nenv after openrc\n" env -echo "\nsudo du -hs /opt/stack" +echo -e "\nsudo du -hs /opt/stack" sudo du -hs /opt/stack -echo "\nsudo mount" +echo -e "\nsudo mount" sudo mount +echo -e "\ndmesg -T > /tmp/dmesg.log" +dmesg -T > /tmp/dmesg.log +echo -e "\njournalctl > /tmp/journalctl.log\n" +sudo journalctl > /tmp/journalctl.log +echo -e "\novsdb-tool -mm show-log > /tmp/ovsdb-tool.log" +ovsdb-tool -mm show-log > /tmp/ovsdb-tool.log EOF # Since this log collection work is happening before the archive build macro which also @@ -522,6 +527,8 @@ EOF echo "collect_logs: for openstack control node ip: ${!OSIP}" NODE_FOLDER="control_${i}" mkdir -p ${NODE_FOLDER} + scp extra_debug.sh ${!OSIP}:/tmp + ${SSH} ${!OSIP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log" scp ${!OSIP}:/etc/dnsmasq.conf ${NODE_FOLDER} scp ${!OSIP}:/etc/keystone/keystone.conf ${NODE_FOLDER} scp ${!OSIP}:/etc/keystone/keystone-uwsgi-admin.ini ${NODE_FOLDER} @@ -544,7 +551,12 @@ EOF scp ${!OSIP}:/opt/stack/devstack/openrc ${NODE_FOLDER} scp ${!OSIP}:/opt/stack/requirements/upper-constraints.txt ${NODE_FOLDER} scp ${!OSIP}:/opt/stack/tempest/etc/tempest.conf ${NODE_FOLDER} + scp ${!OSIP}:/tmp/*.xz ${NODE_FOLDER} + scp ${!OSIP}:/tmp/dmesg.log ${NODE_FOLDER} + scp ${!OSIP}:/tmp/extra_debug.log ${NODE_FOLDER} scp ${!OSIP}:/tmp/get_devstack.sh.txt ${NODE_FOLDER} + scp ${!OSIP}:/tmp/journalctl.log ${NODE_FOLDER} + scp ${!OSIP}:/tmp/ovsdb-tool.log ${NODE_FOLDER} scp ${!OSIP}:/var/log/openvswitch/ovs-vswitchd.log ${NODE_FOLDER} scp ${!OSIP}:/var/log/openvswitch/ovsdb-server.log ${NODE_FOLDER} list_files "${!OSIP}" "${NODE_FOLDER}" @@ -556,14 +568,8 @@ EOF rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/messages ${NODE_FOLDER} rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/rabbitmq ${NODE_FOLDER} rsync -avhe ssh ${!OSIP}:/opt/stack/logs/* ${NODE_FOLDER} # rsync to prevent copying of symbolic links - scp extra_debug.sh ${!OSIP}:/tmp - ${SSH} ${!OSIP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log" - scp ${!OSIP}:/tmp/extra_debug.log ${NODE_FOLDER} - scp ${!OSIP}:/tmp/journalctl.log ${NODE_FOLDER} - scp ${!OSIP}:/tmp/*.xz ${NODE_FOLDER} - ${SSH} ${!CONTROLLERIP} "dmesg -T > /tmp/dmesg.log" - scp ${!CONTROLLERIP}:/tmp/dmesg.log ${NODE_FOLDER} mv local.conf_control_${!OSIP} ${NODE_FOLDER}/local.conf + # qdhcp files are created by robot tests mv /tmp/qdhcp ${NODE_FOLDER} mv ${NODE_FOLDER} ${WORKSPACE}/archives/ done @@ -574,6 +580,8 @@ EOF echo "collect_logs: for openstack compute node ip: ${!OSIP}" NODE_FOLDER="compute_${i}" mkdir -p ${NODE_FOLDER} + scp extra_debug.sh ${!OSIP}:/tmp + ${SSH} ${!OSIP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log" scp ${!OSIP}:/etc/nova/nova.conf ${NODE_FOLDER} scp ${!OSIP}:/etc/nova/nova-cpu.conf ${NODE_FOLDER} scp ${!OSIP}:/etc/openstack/clouds.yaml ${NODE_FOLDER} @@ -581,7 +589,12 @@ EOF scp ${!OSIP}:/opt/stack/devstack/nohup.out ${NODE_FOLDER}/stack.log scp ${!OSIP}:/opt/stack/devstack/openrc ${NODE_FOLDER} scp ${!OSIP}:/opt/stack/requirements/upper-constraints.txt ${NODE_FOLDER} + scp ${!OSIP}:/tmp/*.xz ${NODE_FOLDER}/ + scp ${!OSIP}:/tmp/dmesg.log ${NODE_FOLDER} + scp ${!OSIP}:/tmp/extra_debug.log ${NODE_FOLDER} scp ${!OSIP}:/tmp/get_devstack.sh.txt ${NODE_FOLDER} + scp ${!OSIP}:/tmp/journalctl.log ${NODE_FOLDER} + scp ${!OSIP}:/tmp/ovsdb-tool.log ${NODE_FOLDER} scp ${!OSIP}:/var/log/openvswitch/ovs-vswitchd.log ${NODE_FOLDER} scp ${!OSIP}:/var/log/openvswitch/ovsdb-server.log ${NODE_FOLDER} list_files "${!OSIP}" "${NODE_FOLDER}" @@ -591,13 +604,6 @@ EOF rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/messages ${NODE_FOLDER} rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/nova-agent.log ${NODE_FOLDER} rsync -avhe ssh ${!OSIP}:/opt/stack/logs/* ${NODE_FOLDER} # rsync to prevent copying of symbolic links - scp extra_debug.sh ${!OSIP}:/tmp - ${SSH} ${!OSIP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log" - scp ${!OSIP}:/tmp/extra_debug.log ${NODE_FOLDER} - scp ${!OSIP}:/tmp/journalctl.log ${NODE_FOLDER} - scp ${!OSIP}:/tmp/*.xz ${NODE_FOLDER}/ - ${SSH} ${!OSIP} "dmesg -T > /tmp/dmesg.log" - scp ${!OSIP}:/tmp/dmesg.log ${NODE_FOLDER} mv local.conf_compute_${!OSIP} ${NODE_FOLDER}/local.conf mv ${NODE_FOLDER} ${WORKSPACE}/archives/ done @@ -813,6 +819,10 @@ echo "workaround: adjust wait from 60s to 1800s (30m)" sed -i 's/wait_for_compute 60/wait_for_compute 1800/g' /opt/stack/devstack/lib/nova # TODO: modify sleep 1 to sleep 60, search wait_for_compute, then first sleep 1 # that would just reduce the number of logs in the compute stack.log + +#Install qemu-img command in Control Node for Pike +echo "Install qemu-img application" +sudo yum install -y qemu-img EOF cat > "${WORKSPACE}/setup_host_cell_mapping.sh" << EOF @@ -865,7 +875,7 @@ for i in `seq 1 ${NUM_OPENSTACK_CONTROL_NODES}`; do ssh ${!CONTROLIP} "cd /opt/stack/devstack; nohup ./stack.sh > /opt/stack/devstack/nohup.out 2>&1 &" ssh ${!CONTROLIP} "ps -ef | grep stack.sh" ssh ${!CONTROLIP} "ls -lrt /opt/stack/devstack/nohup.out" - os_node_list+=(${!CONTROLIP}) + os_node_list+=("${!CONTROLIP}") # Workaround for stable/newton jobs # TODO: can this be removed now? if [ "${ODL_ML2_BRANCH}" == "stable/newton" ]; then @@ -926,7 +936,7 @@ for i in `seq 1 ${NUM_OPENSTACK_COMPUTE_NODES}`; do echo "Stack the compute node ${i} of ${NUM_OPENSTACK_COMPUTE_NODES}: ${COMPUTEIP}" ssh ${!COMPUTEIP} "cd /opt/stack/devstack; nohup ./stack.sh > /opt/stack/devstack/nohup.out 2>&1 &" ssh ${!COMPUTEIP} "ps -ef | grep stack.sh" - os_node_list+=(${!COMPUTEIP}) + os_node_list+=("${!COMPUTEIP}") done echo "nodelist: ${os_node_list[*]}" @@ -1054,6 +1064,7 @@ for i in `seq 1 ${NUM_OPENSTACK_SITES}`; do # ipsec support if [ "${IPSEC_VXLAN_TUNNELS_ENABLED}" == "yes" ]; then + # shellcheck disable=SC2206 ALL_NODES=(${!CONTROLIP} ${COMPUTE_IPS[*]}) for ((inx_ip1=0; inx_ip1<$((${#ALL_NODES[@]} - 1)); inx_ip1++)); do for ((inx_ip2=$((inx_ip1 + 1)); inx_ip2<${#ALL_NODES[@]}; inx_ip2++)); do @@ -1201,7 +1212,7 @@ for suite in ${SUITES}; do --log log_${log_name}.html --report None --output output_${log_name}.xml \ -v BUNDLEFOLDER:${BUNDLEFOLDER} \ -v BUNDLE_URL:${ACTUAL_BUNDLE_URL} \ - -v CONTROLLERFEATURES:${CONTROLLERFEATURES} \ + -v CONTROLLERFEATURES:"${CONTROLLERFEATURES}" \ -v CONTROLLER_USER:${USER} \ -v DEVSTACK_DEPLOY_PATH:/opt/stack/devstack \ -v HA_PROXY_IP:${HA_PROXY_IP} \ diff --git a/jjb/integration/integration-get-slave-addresses.sh b/jjb/integration/integration-get-slave-addresses.sh index 22b7e624b..4356f5721 100644 --- a/jjb/integration/integration-get-slave-addresses.sh +++ b/jjb/integration/integration-get-slave-addresses.sh @@ -12,7 +12,7 @@ OPENSTACK_CONTROLLERS=() OPENSTACK_VENV="/tmp/v/openstack" # shellcheck source=/tmp/v/openstack/bin/activate disable=SC1091 source $OPENSTACK_VENV/bin/activate - +# shellcheck disable=SC2207 ADDR=($(openstack stack show -f json -c outputs "$STACK_NAME" | \ jq -r '.outputs[] | select(.output_key | match("^vm_[0-9]+_ips$")) | .output_value | .[]')) @@ -34,7 +34,7 @@ for i in "${ADDR[@]}" do REMHOST=$(ssh "${i}" hostname -s) case ${REMHOST} in - *java*) + *builder*) ODL_SYSTEM=( "${ODL_SYSTEM[@]}" "${i}" ) ;; *devstack*) @@ -103,6 +103,15 @@ done # The rest of the openstack nodes until NUM_OPENSTACK_SYSTEM are computes NUM_OPENSTACK_COMPUTE_NODES=$(( NUM_OPENSTACK_SYSTEM - NUM_OPENSTACK_CONTROL_NODES )) echo "NUM_OPENSTACK_COMPUTE_NODES=${NUM_OPENSTACK_COMPUTE_NODES}" >> slave_addresses.txt + +# Order the computes in the list so that the devstack-0 is index 1 and devstack-1 is index 2. Currently they are +# backwards because of the controller swap earlier. +if [ ${NUM_OPENSTACK_COMPUTE_NODES} -ge 2 ]; then + tmp_addr=${OPENSTACK_SYSTEM[1]} + OPENSTACK_SYSTEM[1]=${OPENSTACK_SYSTEM[2]} + OPENSTACK_SYSTEM[2]=${tmp_addr} +fi + for i in $(seq 0 $((NUM_OPENSTACK_COMPUTE_NODES - 1))) do echo "OPENSTACK_COMPUTE_NODE_$((i+1))_IP=${OPENSTACK_SYSTEM[$((openstack_index++))]}" >> slave_addresses.txt diff --git a/jjb/integration/integration-install-robotframework.sh b/jjb/integration/integration-install-robotframework.sh index bee0b3638..d43f2d32b 100644 --- a/jjb/integration/integration-install-robotframework.sh +++ b/jjb/integration/integration-install-robotframework.sh @@ -59,10 +59,14 @@ pip install --upgrade jsonpatch # Module networking-l2gw is required for using l2gw commands with neutron client # Module python-neutronclient is needed for certain tests run with Openstack Newton # that does not work with Openstack Client -pip install python-openstackclient==3.11.0 +# Module pyhon-novaclient is installed as a dependency of openstackclient, but the +# latest version (v10.0.0) has some problem with "server add floating ip" that is +# not there with v9.0.0, so pinning it to that for now +pip install python-openstackclient pip install networking-l2gw==11.0.0 pip install python-neutronclient==6.1.0 pip install networking-sfc +pip install --upgrade python-novaclient==9.0.0 # Print installed versions. pip install --upgrade pipdeptree diff --git a/jjb/integration/integration-macros.yaml b/jjb/integration/integration-macros.yaml index 7fa75f3c2..4e2ccf0de 100644 --- a/jjb/integration/integration-macros.yaml +++ b/jjb/integration/integration-macros.yaml @@ -374,7 +374,9 @@ - builder: name: integration-deploy-controller-run-test builders: - - shell: !include-raw: integration-deploy-controller-run-test.sh + - shell: !include-raw: + - common-functions.sh + - integration-deploy-controller-run-test.sh # Macro: integration-configure-clustering # Operation: this macro configures the clustering @@ -383,7 +385,9 @@ - builder: name: integration-configure-clustering builders: - - shell: !include-raw: integration-configure-clustering.sh + - shell: !include-raw: + - common-functions.sh + - integration-configure-clustering.sh # Macro: integration-start-cluster-run-test # Operation: this macro starts the 3-node cluster and runs test diff --git a/jjb/integration/integration-start-cluster-run-test.sh b/jjb/integration/integration-start-cluster-run-test.sh index 9b756e14a..4ce068217 100644 --- a/jjb/integration/integration-start-cluster-run-test.sh +++ b/jjb/integration/integration-start-cluster-run-test.sh @@ -112,7 +112,22 @@ echo "Changing the testplan path..." cat "${testplan_filepath}" | sed "s:integration:${WORKSPACE}:" > testplan.txt cat testplan.txt -SUITES=`egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' '` +# Use the testplan if specific SUITES are not defined. +if [ -z "${SUITES}" ]; then + SUITES=`egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' '` +else + newsuites="" + workpath="${WORKSPACE}/test/csit/suites" + for suite in ${SUITES}; do + fullsuite="${workpath}/${suite}" + if [ -z "${newsuites}" ]; then + newsuites+=${fullsuite} + else + newsuites+=" "${fullsuite} + fi + done + SUITES=${newsuites} +fi echo "Starting Robot test suites ${SUITES} ..." pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -e skip_if_${DISTROSTREAM} -v BUNDLEFOLDER:${BUNDLEFOLDER} \ diff --git a/jjb/integration/integration-templates.yaml b/jjb/integration/integration-templates.yaml index 851648d12..a17507327 100644 --- a/jjb/integration/integration-templates.yaml +++ b/jjb/integration/integration-templates.yaml @@ -153,6 +153,8 @@ stream-test-plan: '{project}-{functionality}-{stream}.txt' - integration-test-plan: test-plan: '{project}-{functionality}.txt' + - integration-test-suites: + test-suites: '{test-suites}' - integration-patch-refspec: branch: 'master' - integration-jdk-version: @@ -270,6 +272,8 @@ stream-test-plan: '{project}-{functionality}-{stream}.txt' - integration-test-plan: test-plan: '{project}-{functionality}.txt' + - integration-test-suites: + test-suites: '{test-suites}' - integration-patch-refspec: branch: 'master' - integration-jdk-version: @@ -494,6 +498,8 @@ stream-test-plan: '{project}-{functionality}-{verify-stream}.txt' - integration-test-plan: test-plan: '{project}-{functionality}.txt' + - integration-test-suites: + test-suites: '{test-suites}' - integration-jdk-version: jdkversion: '{verify-jdkversion}' - distribution-karaf-version: @@ -583,6 +589,8 @@ stream-test-plan: '{project}-{functionality}-{stream}.txt' - integration-test-plan: test-plan: '{project}-{functionality}.txt' + - integration-test-suites: + test-suites: '{test-suites}' - integration-patch-refspec: branch: 'master' - integration-jdk-version: @@ -807,6 +815,8 @@ stream-test-plan: '{project}-{functionality}-{stream}.txt' - integration-test-plan: test-plan: '{project}-{functionality}.txt' + - integration-test-suites: + test-suites: '{test-suites}' - integration-patch-refspec: branch: 'master' - integration-jdk-version: diff --git a/jjb/integration/integration-test-jobs.yaml b/jjb/integration/integration-test-jobs.yaml index 5b7637193..9317ee400 100644 --- a/jjb/integration/integration-test-jobs.yaml +++ b/jjb/integration/integration-test-jobs.yaml @@ -25,6 +25,7 @@ csit-sanity-list: '{csit-sanity-list-oxygen}' csit-weekly-list: '{csit-weekly-list-oxygen}' csit-high-frequency-list: '{csit-high-frequency-list-oxygen}' + mvn-version: 'mvn33' - nitrogen: branch: 'stable/nitrogen' @@ -33,6 +34,7 @@ csit-sanity-list: '{csit-sanity-list-nitrogen}' csit-weekly-list: '{csit-weekly-list-nitrogen}' csit-high-frequency-list: '{csit-high-frequency-list-nitrogen}' + mvn-version: 'mvn33' - carbon: branch: 'stable/carbon' @@ -42,6 +44,7 @@ csit-sanity-list: '{csit-sanity-list-carbon}' csit-weekly-list: '{csit-weekly-list-carbon}' csit-high-frequency-list: '{csit-high-frequency-list-carbon}' + mvn-version: 'mvn33' # tools system image tools_system_image: ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20171208-1847 @@ -227,30 +230,12 @@ - job-template: name: 'integration-multipatch-test-{stream}' # Goal: Build one or more patches and run all available system test on a distribution containing the change. - # Operation: This job template checks out and builds each patch provided in job parameters, creates a distribution - # containing these patches, and triggers the distribution test job which includes most (if not all) available - # CSIT jobs - # TODO: Move the following to appropriate readthedocs document. - # Recommended Sandbox usage: - # 0. Create this job and a CSIT job you want to run on the new .zip in Sandbox (disable timed triggers). - # 1. Copy the csit job name to clipboard. - # 2. Navigate to Sandbox page of this job. - # 3. Click "Configure". - # 4. Locate "Trigger/call builds on other projects" (under "Post Steps" tab). - # 5. Delete the long value of "Projects to build" field and paste the job name from clipboard (ctrl+a, ctrl+v). - # 6. Click "Save" button. - # 7. Click "Build with Parameters". - # yamllint disable-line rule:line-length - # 8. Start the job with your parameters, see https://wiki.opendaylight.org/view/Integration/Test/Running_System_Tests#Running_System_Tests_Using_Custom_Distribution_Built_From_Multiple_Patches - # 9. The multipatch job waits for the csit job to finish, so abort csit if you see something went wrong. - # 10. Navigate to Sandbox page of the csit job, click the run triggered from multipatch. - # 11. Click Parameters and copy the long value of BUNDLE_URL field to clipboard. - # 12. Run the same csit job woth different patchset or test options, or other csit jobs, with this BUNDLE_URL value - # so you do not have to wait for multipatch build. Repeat step 12. - # 13. Currently, the .zip lasts 24 hours (?) so you may need to jump to step 2 (or 0) after some time. + # Operation: This job template checks out and builds in order each patch provided in job parameters, finally + # it creates a distribution containing all patches and triggers the distribution test job which includes most + # (if not all) available CSIT jobs. project-type: freestyle - node: centos7-builder-2c-8g + node: centos7-builder-4c-4g jdk: '{jdk}' properties: @@ -264,6 +249,8 @@ run-test: 'false' - integration-distribution-branch: branch: '{branch}' + - integration-distribution-stream: + stream: '{stream}' - distribution-karaf-version: karaf-version: '{karaf-version}' - opendaylight-infra-parameters: @@ -294,27 +281,12 @@ builders: - wipe-org-opendaylight-repo - - integration-multipatch-builder + - lf-maven-install: + mvn-version: '{mvn-version}' - provide-maven-settings: global-settings-file: 'global-settings' - settings-file: 'yangtools-settings' - - maven-target: - maven-version: mvn33 - pom: patch_tester/pom.xml - # TODO: Make Maven options configurable. Currently tests are not skipped, everything else is. - goals: | - clean install dependency:tree -DoutputFile=dependency_tree.txt - -Pq - -Dstream={stream} - -Dsft.heap.max=4g - {opendaylight-infra-mvn-opts} - # TODO: {opendaylight-infra-parallel-mvn-opts}? - java-opts: - - '-Xmx3072m -Dmaven.compile.fork=true' - settings: integration-settings - settings-type: cfp - global-settings: global-settings - global-settings-type: cfp + settings-file: 'integration-distribution-settings' + - integration-multipatch-builder - integration-upload-distribution: dist-pom: patch_tester/distribution/pom.xml - conditional-step: diff --git a/jjb/integration/multipatch-distribution.sh b/jjb/integration/multipatch-distribution.sh index f5711aedd..16cc153ad 100644 --- a/jjb/integration/multipatch-distribution.sh +++ b/jjb/integration/multipatch-distribution.sh @@ -8,22 +8,18 @@ # create a fresh empty place to build this custom distribution BUILD_DIR=${WORKSPACE}/patch_tester -POM_FILE=${WORKSPACE}/patch_tester/pom.xml DISTRIBUTION_BRANCH_TO_BUILD=$DISTROBRANCH #renaming variable for clarity +MAVEN_OPTIONS="$(echo --show-version \ + --batch-mode \ + -Djenkins \ + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn \ + -Dmaven.repo.local=/tmp/r \ + -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r)" rm -rf $BUILD_DIR mkdir -p $BUILD_DIR cd $BUILD_DIR || exit 1 -# create a root pom that will contain a module for each project we have a patch for -echo "" >> $POM_FILE -echo "org.opendaylight.test" >> $POM_FILE -echo "test" >> $POM_FILE -echo "0.1" >> $POM_FILE -echo "4.0.0" >> $POM_FILE -echo "pom" >> $POM_FILE -echo "" >> $POM_FILE - # Set up git committer name and email, needed for commit creation when cherry-picking. export EMAIL="sandbox@jenkins.opendaylight.org" # TODO: Is there a more appropriate e-mail? @@ -69,7 +65,6 @@ do PROJECT_SHORTNAME="${PROJECT##*/}" # http://stackoverflow.com/a/3162500 echo "cloning project ${PROJECT}" git clone "https://git.opendaylight.org/gerrit/p/${PROJECT}" - echo "${PROJECT_SHORTNAME}" >> ${POM_FILE} cd ${PROJECT_SHORTNAME} || exit 1 if [ "$(echo -n ${proto_patch} | tail -c 1)" == 'r' ]; then pure_patch="$(echo -n $proto_patch | head -c -1)" @@ -100,6 +95,14 @@ do # Here 'r' means release. Useful for testing Nitrogen Odlparent changes. find . -name "*.xml" -print0 | xargs -0 sed -i 's/-SNAPSHOT//g' fi + # Build project + "$MVN" clean install \ + -e -Pq \ + -Dstream=oxygen \ + -DskipTests=true \ + --global-settings "$GLOBAL_SETTINGS_FILE" \ + --settings "$SETTINGS_FILE" \ + $MAVEN_OPTIONS cd "${BUILD_DIR}" || exit 1 done @@ -109,10 +112,14 @@ if [ "${distribution_status}" == "not_included" ]; then git clone "https://git.opendaylight.org/gerrit/p/integration/distribution" cd distribution || exit 1 git checkout "${DISTRIBUTION_BRANCH_TO_BUILD}" + # Build project + "$MVN" clean install \ + -e -Pq \ + -Dstream="$DISTROSTREAM" \ + -DskipTests=true \ + --global-settings "$GLOBAL_SETTINGS_FILE" \ + --settings "$SETTINGS_FILE" \ + $MAVEN_OPTIONS cd "${BUILD_DIR}" || exit 1 - echo "distribution" >> ${POM_FILE} fi -# finish pom file -echo "" >> "${POM_FILE}" -echo "" >> "${POM_FILE}" diff --git a/jjb/integration/update-csit-tests.sh b/jjb/integration/update-csit-tests.sh index 652267707..a56fd02a5 100644 --- a/jjb/integration/update-csit-tests.sh +++ b/jjb/integration/update-csit-tests.sh @@ -14,6 +14,7 @@ jobs_file=$(mktemp) search_string="csit" wget --quiet -O "$jobs_file" https://jenkins.opendaylight.org/$SILO/api/xml +# shellcheck disable=SC2207 jobs=($(xmlstarlet sel -t -m '//hudson/job' \ -n -v 'name' "$jobs_file" | grep $search_string | grep $STREAM)) diff --git a/jjb/iotdm/iotdm.yaml b/jjb/iotdm/iotdm.yaml index 088ec8757..c2c135ab6 100644 --- a/jjb/iotdm/iotdm.yaml +++ b/jjb/iotdm/iotdm.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'iotdm' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'iotdm' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'iotdm' diff --git a/jjb/jsonrpc/jsonrpc.yaml b/jjb/jsonrpc/jsonrpc.yaml index 387b10b4a..48cb51f35 100644 --- a/jjb/jsonrpc/jsonrpc.yaml +++ b/jjb/jsonrpc/jsonrpc.yaml @@ -3,8 +3,7 @@ name: jsonrpc-fluorine jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'jsonrpc' project-name: 'jsonrpc' @@ -29,8 +28,7 @@ name: jsonrpc-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'jsonrpc' project-name: 'jsonrpc' @@ -55,8 +53,7 @@ name: jsonrpc-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'jsonrpc' project-name: 'jsonrpc' @@ -81,8 +78,7 @@ name: jsonrpc-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'jsonrpc' project-name: 'jsonrpc' diff --git a/jjb/l2switch/l2switch.yaml b/jjb/l2switch/l2switch.yaml index 0b6745a59..f203d8959 100644 --- a/jjb/l2switch/l2switch.yaml +++ b/jjb/l2switch/l2switch.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'l2switch' @@ -36,8 +35,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'l2switch' @@ -68,8 +66,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'l2switch' diff --git a/jjb/lacp/lacp.yaml b/jjb/lacp/lacp.yaml index bb7895954..72c8ca70b 100644 --- a/jjb/lacp/lacp.yaml +++ b/jjb/lacp/lacp.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'lacp' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'lacp' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'lacp' diff --git a/jjb/lispflowmapping/lispflowmapping.yaml b/jjb/lispflowmapping/lispflowmapping.yaml index fef86deaa..582621eec 100644 --- a/jjb/lispflowmapping/lispflowmapping.yaml +++ b/jjb/lispflowmapping/lispflowmapping.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'lispflowmapping' @@ -36,9 +35,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'lispflowmapping' @@ -54,7 +52,10 @@ mvn-opts: '-Xmx2048m -XX:MaxPermSize=512m -Dmaven.compile.fork=true' dependencies: 'controller-merge-{stream},odlparent-merge-{stream},yangtools-merge-{stream},neutron-merge-{stream}' email-upstream: '[lispflowmapping] [controller] [odlparent] [yangtools] [neutron]' - archive-artifacts: '' + archive-artifacts: > + **/*.log + **/target/surefire-reports/*-output.txt + build-node: centos7-builder-4c-16g # Used by the release job @@ -65,9 +66,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'lispflowmapping' diff --git a/jjb/mdsal/mdsal.yaml b/jjb/mdsal/mdsal.yaml index 4df31f8b7..79e498ce1 100644 --- a/jjb/mdsal/mdsal.yaml +++ b/jjb/mdsal/mdsal.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: oxygen project: 'mdsal' @@ -33,9 +32,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: nitrogen project: 'mdsal' @@ -61,9 +59,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - gerrit-maven-merge + - odl-maven-jobs stream: carbon project: 'mdsal' diff --git a/jjb/messaging4transport/messaging4transport.yaml b/jjb/messaging4transport/messaging4transport.yaml index c758d82ec..5c6f81e30 100644 --- a/jjb/messaging4transport/messaging4transport.yaml +++ b/jjb/messaging4transport/messaging4transport.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'messaging4transport' @@ -32,9 +31,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'messaging4transport' @@ -60,9 +58,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'messaging4transport' diff --git a/jjb/natapp/natapp.yaml b/jjb/natapp/natapp.yaml index 956eea3d5..023296967 100644 --- a/jjb/natapp/natapp.yaml +++ b/jjb/natapp/natapp.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'natapp' @@ -32,9 +31,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'natapp' @@ -60,9 +58,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'natapp' diff --git a/jjb/nemo/nemo.yaml b/jjb/nemo/nemo.yaml index 0874bb36d..0b37f358e 100644 --- a/jjb/nemo/nemo.yaml +++ b/jjb/nemo/nemo.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'nemo' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'nemo' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'nemo' diff --git a/jjb/netconf/netconf.yaml b/jjb/netconf/netconf.yaml index e557f8237..806cd5ee7 100644 --- a/jjb/netconf/netconf.yaml +++ b/jjb/netconf/netconf.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'netconf' @@ -32,8 +31,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'netconf' @@ -59,8 +57,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'netconf' diff --git a/jjb/netide/netide.yaml b/jjb/netide/netide.yaml index 372efdf93..318b15c50 100644 --- a/jjb/netide/netide.yaml +++ b/jjb/netide/netide.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'netide' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'netide' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'netide' diff --git a/jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml b/jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml index da0c1e428..8e3a4ac18 100644 --- a/jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml +++ b/jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml @@ -7,7 +7,6 @@ project: 'netvirt' stream: 'oxygen' branch: 'master' - use-features-boot: 'False' topology: - 1node: @@ -68,7 +67,6 @@ project: 'netvirt' stream: 'nitrogen' branch: 'stable/nitrogen' - use-features-boot: 'False' topology: - 1node: @@ -133,7 +131,6 @@ stream: 'carbon' branch: 'stable/carbon' karaf-version: karaf3 - use-features-boot: 'False' topology: - 1node: diff --git a/jjb/netvirt/netvirt-csit-multi-openstack.yaml b/jjb/netvirt/netvirt-csit-multi-openstack.yaml index b685c17f2..74eb730a2 100644 --- a/jjb/netvirt/netvirt-csit-multi-openstack.yaml +++ b/jjb/netvirt/netvirt-csit-multi-openstack.yaml @@ -15,7 +15,6 @@ odl_system_flavor: v1-performance-8 openstack_system_flavor: v1-performance-8 openstack_system2_flavor: v1-performance-4 - use-features-boot: 'False' topology: - 1node: @@ -74,7 +73,6 @@ odl_system_flavor: v1-performance-8 openstack_system_flavor: v1-performance-8 openstack_system2_flavor: v1-performance-4 - use-features-boot: 'False' topology: - 1node: @@ -134,7 +132,6 @@ odl_system_flavor: v1-performance-8 openstack_system_flavor: v1-performance-8 openstack_system2_flavor: v1-performance-4 - use-features-boot: 'False' topology: - 1node: @@ -180,7 +177,6 @@ security-group-mode: 'stateful' odl_system_flavor: v1-performance-4 openstack_system2_flavor: v1-performance-2 - use-features-boot: 'False' topology: - 1node: diff --git a/jjb/netvirt/netvirt.yaml b/jjb/netvirt/netvirt.yaml index 84360509e..846501688 100644 --- a/jjb/netvirt/netvirt.yaml +++ b/jjb/netvirt/netvirt.yaml @@ -4,10 +4,9 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' - gerrit-tox-verify + - odl-maven-jobs stream: - oxygen: diff --git a/jjb/neutron/neutron.yaml b/jjb/neutron/neutron.yaml index 53aa3ef72..3f3de316a 100644 --- a/jjb/neutron/neutron.yaml +++ b/jjb/neutron/neutron.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'neutron' @@ -33,9 +32,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'neutron' @@ -62,9 +60,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'neutron' diff --git a/jjb/next/next.yaml b/jjb/next/next.yaml index f41693c9f..36c1d21e9 100644 --- a/jjb/next/next.yaml +++ b/jjb/next/next.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'next' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'next' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'next' diff --git a/jjb/nic/nic.yaml b/jjb/nic/nic.yaml index 593f72cb9..0af5510cd 100644 --- a/jjb/nic/nic.yaml +++ b/jjb/nic/nic.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'nic' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'nic' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'nic' diff --git a/jjb/ocpplugin/ocpplugin.yaml b/jjb/ocpplugin/ocpplugin.yaml index 56e4e2969..9865f61af 100644 --- a/jjb/ocpplugin/ocpplugin.yaml +++ b/jjb/ocpplugin/ocpplugin.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'ocpplugin' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'ocpplugin' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'ocpplugin' diff --git a/jjb/odlparent/odlparent.yaml b/jjb/odlparent/odlparent.yaml index 840280f64..b9fc80aa5 100644 --- a/jjb/odlparent/odlparent.yaml +++ b/jjb/odlparent/odlparent.yaml @@ -2,9 +2,8 @@ - project: name: odlparent-master jobs: - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - gerrit-maven-merge + - odl-maven-jobs - gerrit-tox-verify project: odlparent @@ -39,9 +38,8 @@ - project: name: odlparent-2.0.x jobs: - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - gerrit-maven-merge + - odl-maven-jobs - gerrit-tox-verify project: odlparent @@ -79,9 +77,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - gerrit-maven-merge + - odl-maven-jobs - gerrit-tox-verify stream: carbon diff --git a/jjb/of-config/of-config.yaml b/jjb/of-config/of-config.yaml index cce3332fc..7677ec676 100644 --- a/jjb/of-config/of-config.yaml +++ b/jjb/of-config/of-config.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'of-config' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'of-config' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'of-config' diff --git a/jjb/ofextensions/circuitsw/circuitsw.yaml b/jjb/ofextensions/circuitsw/circuitsw.yaml index 68b6c8c1a..66bfcae95 100644 --- a/jjb/ofextensions/circuitsw/circuitsw.yaml +++ b/jjb/ofextensions/circuitsw/circuitsw.yaml @@ -3,8 +3,7 @@ name: circuitsw-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'ofextensions/circuitsw' @@ -29,8 +28,7 @@ name: circuitsw-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'ofextensions/circuitsw' @@ -55,8 +53,7 @@ name: circuitsw-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'ofextensions/circuitsw' diff --git a/jjb/openflowjava/openflowjava.yaml b/jjb/openflowjava/openflowjava.yaml index 771653776..c2a080e1d 100644 --- a/jjb/openflowjava/openflowjava.yaml +++ b/jjb/openflowjava/openflowjava.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'openflowjava' @@ -32,9 +31,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'openflowjava' diff --git a/jjb/openflowplugin/openflowplugin.yaml b/jjb/openflowplugin/openflowplugin.yaml index 166a55f31..fcb6ef944 100644 --- a/jjb/openflowplugin/openflowplugin.yaml +++ b/jjb/openflowplugin/openflowplugin.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'openflowplugin' @@ -37,9 +36,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'openflowplugin' @@ -69,9 +67,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'openflowplugin' diff --git a/jjb/ovil/ovil.yaml b/jjb/ovil/ovil.yaml index 57b3457a5..2e5d81414 100644 --- a/jjb/ovil/ovil.yaml +++ b/jjb/ovil/ovil.yaml @@ -2,8 +2,7 @@ - project: name: ovil jobs: - - '{project-name}-merge-{stream}' - - '{project-name}-maven-jobs' + - odl-maven-jobs - gerrit-tox-verify project: ovil diff --git a/jjb/ovsdb/ovsdb.yaml b/jjb/ovsdb/ovsdb.yaml index 79c14e350..a87a43b98 100644 --- a/jjb/ovsdb/ovsdb.yaml +++ b/jjb/ovsdb/ovsdb.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'ovsdb' @@ -32,9 +31,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'ovsdb' @@ -60,9 +58,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'ovsdb' diff --git a/jjb/p4plugin/p4plugin.yaml b/jjb/p4plugin/p4plugin.yaml index e7e89ea6a..985d6b25e 100644 --- a/jjb/p4plugin/p4plugin.yaml +++ b/jjb/p4plugin/p4plugin.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'p4plugin' diff --git a/jjb/packaging/packaging.yaml b/jjb/packaging/packaging.yaml index c51975138..5012648af 100644 --- a/jjb/packaging/packaging.yaml +++ b/jjb/packaging/packaging.yaml @@ -92,6 +92,7 @@ sudo yum install -y nmap - shell: !include-raw: test-karaf.expect - shell: !include-raw: stop-odl.sh + - shell: !include-raw: uninstall-rpm.sh - lf-infra-deploy-maven-file: global-settings-file: 'global-settings' settings-file: 'packaging-settings' @@ -273,9 +274,10 @@ - shell: !include-raw: build-rpm.sh # Test Carbon multipatch zip (no parallel tarball available) + # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length - properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/distribution-karaf/0.6.3-SNAPSHOT/distribution-karaf-0.6.3-20171128.221258-1.zip' + properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/distribution-karaf/0.6.3-SNAPSHOT/distribution-karaf-0.6.3-20180115.181738-1.zip' - shell: !include-raw: build-rpm.sh # Test latest Carbon snapshot @@ -296,9 +298,10 @@ - shell: !include-raw: build-rpm.sh # Test Nitrogen multipatch zip (no parallel tarball available) + # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length - properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.7.2-SNAPSHOT/karaf-0.7.2-20171128.223150-2.zip' + properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.7.2-SNAPSHOT/karaf-0.7.2-20180115.183312-2.zip' - shell: !include-raw: build-rpm.sh # Test latest Nitrogen snapshot @@ -307,15 +310,17 @@ - shell: !include-raw: build-rpm-snap.sh # Test Oxygen pre-release autorelease tarball + # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2052/org/opendaylight/integration/karaf/0.8.0/karaf-0.8.0.tar.gz' - shell: !include-raw: build-rpm.sh # Test Oxygen multipatch zip (no parallel tarball available) + # NB: This will need to be updated as old builds expire - inject: # yamllint disable-line rule:line-length - properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.8.0-SNAPSHOT/karaf-0.8.0-20171128.175421-68.zip' + properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.8.0-SNAPSHOT/karaf-0.8.0-20180111.030942-90.zip' - shell: !include-raw: build-rpm.sh # Test latest Oxygen snapshot @@ -379,6 +384,7 @@ sudo yum install -y nmap - shell: !include-raw: test-karaf.expect - shell: !include-raw: stop-odl.sh + - shell: !include-raw: uninstall-rpm.sh publishers: # TODO: Remove the archive publisher @@ -439,6 +445,7 @@ - shell: !include-raw: start-odl.sh - shell: !include-raw: test-karaf.expect - shell: !include-raw: stop-odl.sh + - shell: !include-raw: uninstall-rpm.sh publishers: - lf-infra-publish diff --git a/jjb/packaging/uninstall-rpm.sh b/jjb/packaging/uninstall-rpm.sh new file mode 100644 index 000000000..1d62ede1b --- /dev/null +++ b/jjb/packaging/uninstall-rpm.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +# Options: +# -x: Echo commands +# -e: Fail on errors +# -o pipefail: Fail on errors in scripts this calls, give stacktrace +set -ex -o pipefail + +# Uninstall ODL +sudo yum remove -y opendaylight + +# Verify ODL not installed +if yum list installed opendaylight; then + # Fail if exit code 0, ie ODL is still installed + echo "OpenDaylight unexpectedly still installed" + exit 1 +else + echo "OpenDaylight not installed, as expected" +fi diff --git a/jjb/packetcable/packetcable.yaml b/jjb/packetcable/packetcable.yaml index 9022c073a..afdf9373d 100644 --- a/jjb/packetcable/packetcable.yaml +++ b/jjb/packetcable/packetcable.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'packetcable' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'packetcable' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'packetcable' diff --git a/jjb/persistence/persistence.yaml b/jjb/persistence/persistence.yaml index 55411c36c..d89c48f5b 100644 --- a/jjb/persistence/persistence.yaml +++ b/jjb/persistence/persistence.yaml @@ -3,8 +3,7 @@ name: persistence-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'persistence' @@ -31,8 +30,7 @@ name: persistence-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'persistence' @@ -59,8 +57,7 @@ name: persistence-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'persistence' diff --git a/jjb/releng-jobs.yaml b/jjb/releng-jobs.yaml index d3597a20c..f54557e26 100644 --- a/jjb/releng-jobs.yaml +++ b/jjb/releng-jobs.yaml @@ -2,8 +2,10 @@ - project: name: builder-jobs jobs: - - '{project-name}-ci-jobs' + - '{project-name}-ci-jobs': + build-node: centos7-builder-2c-2g - builder-check-poms + - builder-copy-sandbox-logs - gerrit-tox-verify # OpenStack Related - 'builder-verify-image-protection' @@ -20,9 +22,10 @@ project-name: builder stream: master branch: master - build-node: centos7-builder-2c-8g + build-node: centos7-builder-2c-1g archive-artifacts: '**/*.log' build-timeout: 30 + jjb-version: 2.0.0 - project: name: packer-jobs @@ -33,7 +36,7 @@ project-name: builder branch: master archive-artifacts: '**/*.log' - build-node: centos7-builder-2c-8g + build-node: centos7-builder-2c-1g platforms: - centos @@ -49,7 +52,6 @@ - devstack-pre-pip-pike: build-timeout: 75 - gbp - - mininet - mininet-ovs-2.5: build-timeout: 60 - mininet-ovs-2.6: @@ -58,8 +60,6 @@ exclude: - platforms: centos templates: gbp - - platforms: centos - templates: mininet - platforms: centos templates: mininet-ovs-2.5 - platforms: centos @@ -84,16 +84,10 @@ templates: devstack-pre-pip-pike - platforms: ubuntu-16.04 templates: devstack - - platforms: ubuntu-16.04 - templates: mininet - - platforms: ubuntu-16.04 - templates: baseline - - platforms: centos - templates: baseline - job-template: name: builder-check-poms - node: centos7-builder-2c-8g + node: centos7-builder-2c-1g project-type: freestyle @@ -125,11 +119,52 @@ email-prefix: '[releng]' - lf-infra-publish +- job-template: + name: builder-copy-sandbox-logs + node: centos7-builder-2c-1g + + project-type: freestyle + + properties: + - opendaylight-infra-properties: + build-days-to-keep: 1 + + parameters: + - opendaylight-infra-parameters: + os-cloud: '' + project: '' + branch: '' + refspec: '' + artifacts: '' + + wrappers: + - opendaylight-infra-wrappers: + build-timeout: 10 + + triggers: + - gerrit: + server-name: '{gerrit-server-name}' + trigger-on: + - comment-added-contains-event: + comment-contains-value: 'copy-logs:' + projects: + - project-compare-type: ANT + project-pattern: '**' + branches: + - branch-compare-type: ANT + branch-pattern: '**' + + builders: + - shell: !include-raw-escape: copy-sandbox-logs.sh + + publishers: + - lf-infra-publish + - job-template: name: 'builder-verify-image-protection' project-type: freestyle - node: centos7-builder-2c-8g + node: centos7-builder-2c-1g properties: - opendaylight-infra-properties: @@ -173,7 +208,7 @@ - job-template: name: 'builder-cleanup-old-images' project-type: freestyle - node: centos7-builder-2c-8g + node: centos7-builder-2c-1g properties: - opendaylight-infra-properties: @@ -219,7 +254,7 @@ - job-template: name: builder-delete-orphaned-nodes project-type: freestyle - node: centos7-builder-2c-8g + node: centos7-builder-2c-1g properties: - opendaylight-infra-properties: @@ -258,7 +293,7 @@ - job-template: name: 'builder-delete-stale-nodes' project-type: freestyle - node: centos7-builder-2c-8g + node: centos7-builder-2c-1g properties: - opendaylight-infra-properties: @@ -295,7 +330,7 @@ - job-template: name: 'builder-delete-stale-stacks' project-type: freestyle - node: centos7-builder-2c-8g + node: centos7-builder-2c-1g properties: - opendaylight-infra-properties: @@ -334,7 +369,7 @@ - job-template: name: 'builder-update-image-list' project-type: freestyle - node: centos7-builder-2c-8g + node: centos7-builder-2c-1g properties: - opendaylight-infra-properties: diff --git a/jjb/releng-macros.yaml b/jjb/releng-macros.yaml index bc9ebb8f9..1a69611b4 100644 --- a/jjb/releng-macros.yaml +++ b/jjb/releng-macros.yaml @@ -82,7 +82,8 @@ name: PATCHES_TO_BUILD default: '' description: | - Patches to add to distro in CSV project:changeset format (genius:32/53632/9,netvirt:59/50259/47) + Ordered list of patches to build in the format of project=changeset (checkout) or + project:changeset (cherry-pick) for example: genius=32/53632/9,netvirt:59/50259/47 - parameter: name: run-test-parameter diff --git a/jjb/releng-packer-jobs.yaml b/jjb/releng-packer-jobs.yaml index f2d7f0f83..99b39487d 100644 --- a/jjb/releng-packer-jobs.yaml +++ b/jjb/releng-packer-jobs.yaml @@ -9,8 +9,8 @@ branch: master archive-artifacts: '**/*.log' - build-node: centos7-builder-2c-8g - build-timeout: 75 + build-node: centos7-builder-2c-1g + build-timeout: 90 platforms: centos templates: builder @@ -25,12 +25,28 @@ branch: master archive-artifacts: '**/*.log' - build-node: centos7-builder-2c-8g + build-node: centos7-builder-2c-1g build-timeout: 60 platforms: centos templates: docker +- project: + name: packer-mininet-jobs + jobs: + - gerrit-packer-merge + + project: releng/builder + project-name: builder + branch: master + archive-artifacts: '**/*.log' + + build-node: centos7-builder-2c-1g + build-timeout: 90 + + platforms: ubuntu-16.04 + templates: mininet-ovs-2.8 + - project: name: packer-robot-jobs jobs: @@ -41,7 +57,7 @@ branch: master archive-artifacts: '**/*.log' - build-node: centos7-builder-2c-8g + build-node: centos7-builder-2c-1g platforms: centos templates: robot diff --git a/jjb/releng-templates-java.yaml b/jjb/releng-templates-java.yaml index f64aa99f3..d697e548f 100644 --- a/jjb/releng-templates-java.yaml +++ b/jjb/releng-templates-java.yaml @@ -1,4 +1,21 @@ --- +- job-group: + name: odl-maven-jobs + + jobs: + - gerrit-maven-clm + + - gerrit-maven-merge: + post_build_trigger: + - project: + - 'distribution-merge-{stream}' + condition: SUCCESS + trigger-with-no-params: true + + - gerrit-maven-release + - gerrit-maven-verify + - gerrit-maven-verify-dependencies + - job-template: name: '{project-name}-integration-{stream}' diff --git a/jjb/reservation/reservation.yaml b/jjb/reservation/reservation.yaml index 2269a92f0..1e32c5d21 100644 --- a/jjb/reservation/reservation.yaml +++ b/jjb/reservation/reservation.yaml @@ -3,8 +3,7 @@ name: reservation-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'reservation' @@ -29,8 +28,7 @@ name: reservation-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'reservation' @@ -55,8 +53,7 @@ name: reservation-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'reservation' diff --git a/jjb/sdninterfaceapp/sdninterfaceapp.yaml b/jjb/sdninterfaceapp/sdninterfaceapp.yaml index 72cada299..90d2d5aa5 100644 --- a/jjb/sdninterfaceapp/sdninterfaceapp.yaml +++ b/jjb/sdninterfaceapp/sdninterfaceapp.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'sdninterfaceapp' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'sdninterfaceapp' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'sdninterfaceapp' diff --git a/jjb/sfc/sfc.yaml b/jjb/sfc/sfc.yaml index b3d954bb5..972f346a2 100644 --- a/jjb/sfc/sfc.yaml +++ b/jjb/sfc/sfc.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'sfc' @@ -33,8 +32,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'sfc' @@ -61,8 +59,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'sfc' diff --git a/jjb/snbi/snbi.yaml b/jjb/snbi/snbi.yaml index 2096cfc70..6958d317b 100644 --- a/jjb/snbi/snbi.yaml +++ b/jjb/snbi/snbi.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'snbi' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'snbi' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'snbi' diff --git a/jjb/snmp/snmp.yaml b/jjb/snmp/snmp.yaml index a9830adea..c73acb1be 100644 --- a/jjb/snmp/snmp.yaml +++ b/jjb/snmp/snmp.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'snmp' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'snmp' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'snmp' diff --git a/jjb/snmp4sdn/snmp4sdn.yaml b/jjb/snmp4sdn/snmp4sdn.yaml index aa880ef3f..b29129035 100644 --- a/jjb/snmp4sdn/snmp4sdn.yaml +++ b/jjb/snmp4sdn/snmp4sdn.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'snmp4sdn' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'snmp4sdn' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'snmp4sdn' diff --git a/jjb/sxp/sxp.yaml b/jjb/sxp/sxp.yaml index 15da7544c..a74ba2d59 100644 --- a/jjb/sxp/sxp.yaml +++ b/jjb/sxp/sxp.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'sxp' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'sxp' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'sxp' diff --git a/jjb/systemmetrics/systemmetrics.yaml b/jjb/systemmetrics/systemmetrics.yaml index 1605e66b1..88514e606 100644 --- a/jjb/systemmetrics/systemmetrics.yaml +++ b/jjb/systemmetrics/systemmetrics.yaml @@ -3,8 +3,7 @@ name: systemmetrics-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'systemmetrics' project-name: 'systemmetrics' @@ -29,8 +28,7 @@ name: systemmetrics-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'systemmetrics' project-name: 'systemmetrics' @@ -55,8 +53,7 @@ name: systemmetrics-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'systemmetrics' project-name: 'systemmetrics' diff --git a/jjb/topoprocessing/topoprocessing.yaml b/jjb/topoprocessing/topoprocessing.yaml index 5657e668a..6c78c55e2 100644 --- a/jjb/topoprocessing/topoprocessing.yaml +++ b/jjb/topoprocessing/topoprocessing.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'topoprocessing' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'topoprocessing' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'topoprocessing' diff --git a/jjb/transportpce/transportpce.yaml b/jjb/transportpce/transportpce.yaml index e45a86406..a905cf964 100644 --- a/jjb/transportpce/transportpce.yaml +++ b/jjb/transportpce/transportpce.yaml @@ -3,8 +3,7 @@ name: transportpce-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'transportpce' project-name: 'transportpce' @@ -29,8 +28,7 @@ name: transportpce-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'transportpce' project-name: 'transportpce' @@ -55,8 +53,7 @@ name: transportpce-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: 'transportpce' project-name: 'transportpce' diff --git a/jjb/tsdr/tsdr.yaml b/jjb/tsdr/tsdr.yaml index 24b551014..d1cae2d6a 100644 --- a/jjb/tsdr/tsdr.yaml +++ b/jjb/tsdr/tsdr.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'tsdr' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'tsdr' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'tsdr' diff --git a/jjb/ttp/ttp.yaml b/jjb/ttp/ttp.yaml index c555ea814..41de1a0dd 100644 --- a/jjb/ttp/ttp.yaml +++ b/jjb/ttp/ttp.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'ttp' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'ttp' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'ttp' diff --git a/jjb/unimgr/unimgr.yaml b/jjb/unimgr/unimgr.yaml index 2e0441ed0..10f602889 100644 --- a/jjb/unimgr/unimgr.yaml +++ b/jjb/unimgr/unimgr.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'unimgr' @@ -32,8 +31,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'unimgr' @@ -60,8 +58,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'unimgr' diff --git a/jjb/usc/usc.yaml b/jjb/usc/usc.yaml index 1a66df1d7..86b4017fe 100644 --- a/jjb/usc/usc.yaml +++ b/jjb/usc/usc.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'usc' @@ -32,9 +31,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'usc' @@ -60,9 +58,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'usc' diff --git a/jjb/usecplugin/usecplugin.yaml b/jjb/usecplugin/usecplugin.yaml index b93930ad3..1efca00c4 100644 --- a/jjb/usecplugin/usecplugin.yaml +++ b/jjb/usecplugin/usecplugin.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'usecplugin' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'usecplugin' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'usecplugin' diff --git a/jjb/vtn/vtn.yaml b/jjb/vtn/vtn.yaml index 3544b58d2..844a26552 100644 --- a/jjb/vtn/vtn.yaml +++ b/jjb/vtn/vtn.yaml @@ -4,9 +4,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'vtn' @@ -36,9 +35,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'vtn' @@ -68,9 +66,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'vtn' diff --git a/jjb/yang-push/yang-push.yaml b/jjb/yang-push/yang-push.yaml index 0c54b14c4..fc38e865b 100644 --- a/jjb/yang-push/yang-push.yaml +++ b/jjb/yang-push/yang-push.yaml @@ -4,8 +4,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'yang-push' @@ -31,8 +30,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'yang-push' @@ -58,8 +56,7 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'yang-push' diff --git a/jjb/yangide/yangide.yaml b/jjb/yangide/yangide.yaml index cdcdb8427..cd0617c9c 100644 --- a/jjb/yangide/yangide.yaml +++ b/jjb/yangide/yangide.yaml @@ -3,8 +3,7 @@ name: yangide-oxygen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: oxygen project: 'yangide' @@ -29,8 +28,7 @@ name: yangide-nitrogen jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'yangide' @@ -55,8 +53,7 @@ name: yangide-carbon jobs: - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'yangide' diff --git a/jjb/yangtools/yangtools.yaml b/jjb/yangtools/yangtools.yaml index 9173f14e6..2a67a52d7 100644 --- a/jjb/yangtools/yangtools.yaml +++ b/jjb/yangtools/yangtools.yaml @@ -2,9 +2,8 @@ - project: name: yangtools-master jobs: - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs project: yangtools project-name: yangtools @@ -39,9 +38,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: nitrogen project: 'yangtools' @@ -76,9 +74,8 @@ jobs: - '{project-name}-distribution-check-{stream}' - '{project-name}-integration-{stream}' - - '{project-name}-maven-jobs' - '{project-name}-maven-javadoc-jobs' - - '{project-name}-merge-{stream}' + - odl-maven-jobs stream: carbon project: 'yangtools' diff --git a/lf-ansible b/lf-ansible index ba9ed1ef4..0b9b6addb 160000 --- a/lf-ansible +++ b/lf-ansible @@ -1 +1 @@ -Subproject commit ba9ed1ef49f7ac3859d5c1b2505116a7610ccfc0 +Subproject commit 0b9b6addb738ea7c483c8cdf75b9ae173480f9cd diff --git a/packer/provision/builder.yaml b/packer/provision/builder.yaml index 03776b5ec..459c4a534 100644 --- a/packer/provision/builder.yaml +++ b/packer/provision/builder.yaml @@ -49,6 +49,7 @@ shell: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t args: chdir: /tmp/build_quagga/zrpcd + executable: /bin/bash become: true post_tasks: diff --git a/packer/provision/mininet-ovs-2.8.yaml b/packer/provision/mininet-ovs-2.8.yaml new file mode 100644 index 000000000..e85baf21e --- /dev/null +++ b/packer/provision/mininet-ovs-2.8.yaml @@ -0,0 +1,156 @@ +--- +- import_playbook: ../common-packer/provision/baseline.yaml + +- hosts: all + become_user: root + become_method: sudo + vars: + ovs_checksum: sha256:8d1c439e26d7044f0ec823c7fef1b00b7c6465da0b83a7d0cf3191ed1dc43893 + ovs_version: 2.8.1 + + pre_tasks: + - include_role: name=system-update + + tasks: + - name: 'Install OpenVSwitch {{ovs_version}}' + block: + - name: Install OpenVSwitch dependencies + apt: 'name={{item}} state=present' + with_items: + - autoconf + - automake + - bzip2 + - debhelper + - dh-autoreconf + - libssl-dev + - openssl + - pkg-config + - procps + - python-all + - python-qt4 + - python-twisted-conch + - python-zopeinterface + become: true + - name: 'Fetch OpenVSwitch {{ovs_version}}' + get_url: + url: 'http://openvswitch.org/releases/openvswitch-{{ovs_version}}.tar.gz' + dest: '/tmp/openvswitch-{{ovs_version}}.tar.gz' + checksum: '{{ovs_checksum}}' + - name: Create /tmp/ovs directory + file: + path: /tmp/ovs + state: directory + mode: 0755 + - name: 'Unarchive OpenVSwitch {{ovs_version}}' + unarchive: + src: '/tmp/openvswitch-{{ovs_version}}.tar.gz' + dest: /tmp/ovs + remote_src: true + - name: 'Build OpenVSwitch {{ovs_version}}' + shell: DEB_BUILD_OPTIONS='parallel=8 nocheck' fakeroot debian/rules binary + args: + chdir: '/tmp/ovs/openvswitch-{{ovs_version}}' + - name: 'Install OpenVSwitch {{ovs_version}}' + apt: 'deb={{item}}' + with_items: + - /tmp/ovs/libopenvswitch_2.8.1-1_amd64.deb + - /tmp/ovs/openvswitch-common_2.8.1-1_amd64.deb + - /tmp/ovs/openvswitch-switch_2.8.1-1_amd64.deb + - /tmp/ovs/python-openvswitch_2.8.1-1_all.deb + - /tmp/ovs/openvswitch-vtep_2.8.1-1_amd64.deb + become: true + - name: Enable openvswitch-switch service + systemd: + name: openvswitch-switch + enabled: true + masked: false + become: true + - name: Enable openvswitch-vtep service + systemd: + name: openvswitch-vtep + enabled: true + masked: false + become: true + + - name: Install Mininet + apt: name=mininet state=present + become: true + + - name: Install mtcbench + block: + - name: Install mtcbench dependencies + apt: 'name={{item}} state=present' + with_items: + - autoconf + - automake + - build-essential + - libconfig-dev + - libffi-dev + - libpcap-dev + - libsnmp-dev + - libtool + - libssl-doc + - make + - pkg-config + - snmp + - snmpd + become: true + - name: Fetch mtcbench git repo + git: + repo: https://github.com/intracom-telecom-sdn/mtcbench.git + dest: /tmp/mtcbench + - name: Run mtcbench/deploy/docker/provision.sh + command: /tmp/mtcbench/deploy/docker/provision.sh + become: true + - name: Build mtcbench + # TODO: remove workaround for build issue with mtcbench + # when mtcbench dependency build correctly + # https://github.com/intracom-telecom-sdn/mtcbench/issues/10 + shell: /tmp/mtcbench/build_mtcbench.sh || true + - name: Run make for cbench + command: make + args: + chdir: /tmp/mtcbench/oflops/cbench + - name: Install cbench to /usr/local/bin/cbench + copy: + src: /tmp/mtcbench/oflops/cbench/cbench + dest: /usr/local/bin/cbench + mode: 0755 + owner: root + remote_src: yes + become: true + + - name: Install exabgp + apt: name=exabgp state=present + become: true + + - name: Install python-netaddr for custom mininet topologies + apt: name=python-netaddr state=present + become: true + + - name: Install vlan for vlan based tests in VTN suites + apt: name=vlan state=present + become: true + + - name: Install Quagga + block: + - name: Fetch Quagga git repo + git: + repo: https://github.com/6WIND/zrpcd.git + dest: /tmp/build_quagga/zrpcd + version: 20170731 + - name: Set compile script executable + file: + path: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh + mode: 0755 + - name: Compile Quagga + shell: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t + args: + chdir: /tmp/build_quagga/zrpcd + executable: /bin/bash + become: true + + post_tasks: + - name: System Reseal + script: ../common-packer/provision/system-reseal.sh + become: true diff --git a/packer/provision/mininet.sh b/packer/provision/mininet.sh deleted file mode 100644 index b4a31e64e..000000000 --- a/packer/provision/mininet.sh +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash - -# vim: sw=4 ts=4 sts=4 et tw=72 : - -# force any errors to cause the script and job to end in failure -set -xeu -o pipefail - -# Ensure that necessary variables are set to enable noninteractive mode in -# commands. -export DEBIAN_FRONTEND=noninteractive - -# To handle the prompt style that is expected all over the environment -# with how use use robotframework we need to make sure that it is -# consistent for any of the users that are created during dynamic spin -# ups -echo 'PS1="[\u@\h \W]> "' >> /etc/skel/.bashrc - -echo '---> Install mininet with OF13 patch' -cd /tmp -cat > newOptions.patch < Installing cbench installation for running openflow performance tests' -OF_DIR="$HOME/openflow" # Directory that contains OpenFlow code -OFLOPS_DIR="$HOME/oflops" # Directory that contains oflops repo - -apt-get install -y --force-yes libsnmp-dev libpcap-dev libconfig-dev - -git clone git://gitosis.stanford.edu/openflow.git "$OF_DIR" -git clone https://github.com/andi-bigswitch/oflops.git "$OFLOPS_DIR" - -cd "$OFLOPS_DIR" -./boot.sh -./configure --with-openflow-src-dir="$OF_DIR" -make -make install - -echo '---> Installing vlan for vlan based tests in VTN suites' -apt-get install -y --force-yes vlan - -# Install netaddr package which is needed by some custom mininet topologies -apt-get install -y --force-yes -qq python-netaddr diff --git a/packer/templates/baseline.json b/packer/templates/baseline.json deleted file mode 100644 index 4da796dca..000000000 --- a/packer/templates/baseline.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, - "distro": null, - "cloud_user_data": null, - "ssh_proxy_host": "" - }, - "builders": [ - { - "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", - "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", - "region": "ca-ymq-1", - "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", - "ssh_proxy_host": "{{user `ssh_proxy_host`}}", - "image_name": "ZZCI - {{user `distro`}} - baseline - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", - "flavor": "v1-standard-1", - "networks": [ - "{{user `public_network`}}" - ], - "user_data_file": "{{user `cloud_user_data`}}", - "metadata": { - "ci_managed": "yes" - } - } - ], - "provisioners": [ - { - "type": "shell", - "scripts": [ - "provision/baseline.sh", - "provision/system_reseal_local_env.sh", - "provision/system_reseal.sh" - ], - "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi" - } - ] -} diff --git a/packer/templates/devstack-pre-pip-newton.json b/packer/templates/devstack-pre-pip-newton.json index fc6a6662e..f9d6d1934 100644 --- a/packer/templates/devstack-pre-pip-newton.json +++ b/packer/templates/devstack-pre-pip-newton.json @@ -1,33 +1,33 @@ { "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, + "base_image": null, "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, "cloud_user_data": null, + "ssh_user": null, "ssh_proxy_host": "" }, "builders": [ { "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", + "identity_endpoint": "{{user `cloud_auth_url`}}", "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", "region": "ca-ymq-1", "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", + "ssh_username": "{{user `ssh_user`}}", "ssh_proxy_host": "{{user `ssh_proxy_host`}}", "image_name": "ZZCI - {{user `distro`}} - devstack-newton - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", + "source_image_name": "{{user `base_image`}}", "flavor": "v1-standard-1", "networks": [ - "{{user `public_network`}}" + "{{user `cloud_network`}}" ], "user_data_file": "{{user `cloud_user_data`}}", "metadata": { diff --git a/packer/templates/devstack-pre-pip-ocata.json b/packer/templates/devstack-pre-pip-ocata.json index 68c64314a..3fb4a0b9d 100644 --- a/packer/templates/devstack-pre-pip-ocata.json +++ b/packer/templates/devstack-pre-pip-ocata.json @@ -1,33 +1,33 @@ { "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, + "base_image": null, "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, "cloud_user_data": null, + "ssh_user": null, "ssh_proxy_host": "" }, "builders": [ { "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", + "identity_endpoint": "{{user `cloud_auth_url`}}", "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", "region": "ca-ymq-1", "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", + "ssh_username": "{{user `ssh_user`}}", "ssh_proxy_host": "{{user `ssh_proxy_host`}}", "image_name": "ZZCI - {{user `distro`}} - devstack-ocata - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", + "source_image_name": "{{user `base_image`}}", "flavor": "v1-standard-1", "networks": [ - "{{user `public_network`}}" + "{{user `cloud_network`}}" ], "user_data_file": "{{user `cloud_user_data`}}", "metadata": { diff --git a/packer/templates/devstack-pre-pip-pike.json b/packer/templates/devstack-pre-pip-pike.json index 2c42e2a50..c33f502fc 100644 --- a/packer/templates/devstack-pre-pip-pike.json +++ b/packer/templates/devstack-pre-pip-pike.json @@ -1,33 +1,33 @@ { "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, + "base_image": null, "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, "cloud_user_data": null, + "ssh_user": null, "ssh_proxy_host": "" }, "builders": [ { "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", + "identity_endpoint": "{{user `cloud_auth_url`}}", "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", "region": "ca-ymq-1", "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", + "ssh_username": "{{user `ssh_user`}}", "ssh_proxy_host": "{{user `ssh_proxy_host`}}", "image_name": "ZZCI - {{user `distro`}} - devstack-pike - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", + "source_image_name": "{{user `base_image`}}", "flavor": "v1-standard-1", "networks": [ - "{{user `public_network`}}" + "{{user `cloud_network`}}" ], "user_data_file": "{{user `cloud_user_data`}}", "metadata": { diff --git a/packer/templates/devstack.json b/packer/templates/devstack.json index b912e87d5..fd4634c15 100644 --- a/packer/templates/devstack.json +++ b/packer/templates/devstack.json @@ -1,33 +1,33 @@ { "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, + "base_image": null, "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, "cloud_user_data": null, + "ssh_user": null, "ssh_proxy_host": "" }, "builders": [ { "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", + "identity_endpoint": "{{user `cloud_auth_url`}}", "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", "region": "ca-ymq-1", "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", + "ssh_username": "{{user `ssh_user`}}", "ssh_proxy_host": "{{user `ssh_proxy_host`}}", "image_name": "ZZCI - {{user `distro`}} - devstack - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", + "source_image_name": "{{user `base_image`}}", "flavor": "v1-standard-1", "networks": [ - "{{user `public_network`}}" + "{{user `cloud_network`}}" ], "user_data_file": "{{user `cloud_user_data`}}", "metadata": { diff --git a/packer/templates/gbp.json b/packer/templates/gbp.json index 0e3eb0f2b..026c2eba8 100644 --- a/packer/templates/gbp.json +++ b/packer/templates/gbp.json @@ -1,33 +1,33 @@ { "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, + "base_image": null, "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, "cloud_user_data": null, + "ssh_user": null, "ssh_proxy_host": "" }, "builders": [ { "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", + "identity_endpoint": "{{user `cloud_auth_url`}}", "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", "region": "ca-ymq-1", "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", + "ssh_username": "{{user `ssh_user`}}", "ssh_proxy_host": "{{user `ssh_proxy_host`}}", "image_name": "ZZCI - {{user `distro`}} - gbp - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", + "source_image_name": "{{user `base_image`}}", "flavor": "v1-standard-1", "networks": [ - "{{user `public_network`}}" + "{{user `cloud_network`}}" ], "user_data_file": "{{user `cloud_user_data`}}", "metadata": { diff --git a/packer/templates/mininet-ovs-2.5.json b/packer/templates/mininet-ovs-2.5.json index a3d021569..3433c09a5 100644 --- a/packer/templates/mininet-ovs-2.5.json +++ b/packer/templates/mininet-ovs-2.5.json @@ -1,33 +1,33 @@ { "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, + "base_image": null, "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, "cloud_user_data": null, + "ssh_user": null, "ssh_proxy_host": "" }, "builders": [ { "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", + "identity_endpoint": "{{user `cloud_auth_url`}}", "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", "region": "ca-ymq-1", "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", + "ssh_username": "{{user `ssh_user`}}", "ssh_proxy_host": "{{user `ssh_proxy_host`}}", "image_name": "ZZCI - {{user `distro`}} - mininet-ovs-25 - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", + "source_image_name": "{{user `base_image`}}", "flavor": "v1-standard-1", "networks": [ - "{{user `public_network`}}" + "{{user `cloud_network`}}" ], "user_data_file": "{{user `cloud_user_data`}}", "metadata": { diff --git a/packer/templates/mininet-ovs-2.6.json b/packer/templates/mininet-ovs-2.6.json index dc2eed198..b6ec6998b 100644 --- a/packer/templates/mininet-ovs-2.6.json +++ b/packer/templates/mininet-ovs-2.6.json @@ -1,33 +1,33 @@ { "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, + "base_image": null, "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, "cloud_user_data": null, + "ssh_user": null, "ssh_proxy_host": "" }, "builders": [ { "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", + "identity_endpoint": "{{user `cloud_auth_url`}}", "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", "region": "ca-ymq-1", "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", + "ssh_username": "{{user `ssh_user`}}", "ssh_proxy_host": "{{user `ssh_proxy_host`}}", "image_name": "ZZCI - {{user `distro`}} - mininet-ovs-26 - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", + "source_image_name": "{{user `base_image`}}", "flavor": "v1-standard-1", "networks": [ - "{{user `public_network`}}" + "{{user `cloud_network`}}" ], "user_data_file": "{{user `cloud_user_data`}}", "metadata": { diff --git a/packer/templates/mininet-ovs-2.8.json b/packer/templates/mininet-ovs-2.8.json new file mode 100644 index 000000000..142d492e3 --- /dev/null +++ b/packer/templates/mininet-ovs-2.8.json @@ -0,0 +1,59 @@ +{ + "variables": { + "base_image": null, + "distro": null, + "cloud_auth_url": null, + "cloud_user": null, + "cloud_pass": null, + "cloud_network": null, + "cloud_tenant": null, + "cloud_user_data": null, + "ssh_user": null, + "ssh_proxy_host": "" + }, + "builders": [ + { + "name": "vexxhost", + "image_name": "ZZCI - {{user `distro`}} - mininet-ovs-28 - {{isotime \"20060102-1504\"}}", + "source_image_name": "{{user `base_image`}}", + "type": "openstack", + "identity_endpoint": "{{user `cloud_auth_url`}}", + "username": "{{user `cloud_user`}}", + "password": "{{user `cloud_pass`}}", + "tenant_name": "{{user `cloud_tenant`}}", + "domain_name": "Default", + "region": "ca-ymq-1", + "availability_zone": "ca-ymq-2", + "networks": [ + "{{user `cloud_network`}}" + ], + "user_data_file": "{{user `cloud_user_data`}}", + "ssh_username": "{{user `ssh_user`}}", + "ssh_proxy_host": "{{user `ssh_proxy_host`}}", + "flavor": "v1-standard-1", + "metadata": { + "ci_managed": "yes" + } + } + ], + "provisioners": [ + { + "type": "shell", + "scripts": [ + "common-packer/provision/install-python.sh" + ], + "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi" + }, + { + "type": "ansible", + "playbook_file": "provision/mininet-ovs-2.8.yaml", + "ansible_env_vars": [ + "ANSIBLE_NOCOWS=1", + "ANSIBLE_PIPELINING=True", + "ANSIBLE_ROLES_PATH=../lf-ansible/roles", + "ANSIBLE_CALLBACK_WHITELIST=profile_tasks", + "ANSIBLE_STDOUT_CALLBACK=debug" + ] + } + ] +} diff --git a/packer/templates/mininet.json b/packer/templates/mininet.json deleted file mode 100644 index d39f2fb23..000000000 --- a/packer/templates/mininet.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "variables": { - "public_base_image": null, - "public_network": null, - "public_cloud_user": null, - "public_auth_url": null, - "public_tenant": null, - "public_user": null, - "public_pass": null, - "distro": null, - "cloud_user_data": null, - "ssh_proxy_host": "" - }, - "builders": [ - { - "type": "openstack", - "identity_endpoint": "{{user `public_auth_url`}}", - "domain_name": "Default", - "tenant_name": "{{user `public_tenant`}}", - "username": "{{user `public_user`}}", - "password": "{{user `public_pass`}}", - "region": "ca-ymq-1", - "availability_zone": "ca-ymq-2", - "ssh_username": "{{user `public_cloud_user`}}", - "ssh_proxy_host": "{{user `ssh_proxy_host`}}", - "image_name": "ZZCI - {{user `distro`}} - mininet - {{isotime \"20060102-1504\"}}", - "source_image_name": "{{user `public_base_image`}}", - "flavor": "v1-standard-1", - "networks": [ - "{{user `public_network`}}" - ], - "user_data_file": "{{user `cloud_user_data`}}", - "metadata": { - "ci_managed": "yes" - } - } - ], - "provisioners": [ - { - "type": "shell", - "scripts": [ - "provision/baseline.sh", - "provision/mininet.sh", - "provision/system_reseal_local_env.sh", - "provision/system_reseal.sh" - ], - "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi" - } - ] -} diff --git a/packer/vars/centos.json b/packer/vars/centos.json index 412aac90e..678a90303 100644 --- a/packer/vars/centos.json +++ b/packer/vars/centos.json @@ -1,6 +1,4 @@ { - "public_base_image": "CentOS 7.1711 (2017-11-05) - LF upload", - "public_cloud_user": "centos", "base_image": "LF - CentOS 7.1711 (2017-11-05)", "distro": "CentOS 7", "ssh_user": "centos", diff --git a/packer/vars/ubuntu-14.04.json b/packer/vars/ubuntu-14.04.json index 742825fc2..882d9598d 100644 --- a/packer/vars/ubuntu-14.04.json +++ b/packer/vars/ubuntu-14.04.json @@ -1,6 +1,4 @@ { - "public_base_image": "Ubuntu 14.04.5 LTS (2017-12-05) - LF upload", - "public_cloud_user": "ubuntu", "base_image": "LF - Ubuntu 14.04 LTS (2017-12-01)", "distro": "Ubuntu 14.04", "ssh_user": "ubuntu", diff --git a/packer/vars/ubuntu-16.04.json b/packer/vars/ubuntu-16.04.json index b8dc1762b..b55f96b4b 100644 --- a/packer/vars/ubuntu-16.04.json +++ b/packer/vars/ubuntu-16.04.json @@ -1,6 +1,4 @@ { - "public_base_image": "Ubuntu 16.04 LTS (2017-12-01) - LF upload", - "public_cloud_user": "ubuntu", "base_image": "LF - Ubuntu 16.04 LTS (2017-12-01)", "distro": "Ubuntu 16.04", "ssh_user": "ubuntu",