cherry-pick 59/60259/17 and build netvirt, finally it will checkout latest distribution
code and build a distribution. The resulting distribution is stored in Nexus and the URL
is stored in a variable called BUNDLE_URL visible in the job console.
+ Use multipatch-build-fast (vs multipatch-build) for building projects fast (-Pq).
This job should not alter Gerrit votes for a given patch, nor will do anything with the
given patch unless the patch is added to the build list.
</td>
branch: 'stable/nitrogen'
integration-test: nitrogen
extra-mvn-opts: -P!karaf -Dsft.heap.max=4g
- - carbon:
- # Run once a week (Saturday) now that Fluorine branch is cut, and Oxygen is pending release
- cron: 'H 12 * * 6'
- next-release-tag: '{stream}'
- branch: 'stable/carbon'
- integration-test: carbon
- karaf-version: karaf3
- extra-mvn-opts: -P!karaf -Dskip.karaf4.featureTest=true
project: releng/autorelease
project-name: autorelease
branch: 'stable/oxygen'
- nitrogen:
branch: 'stable/nitrogen'
- - carbon:
- branch: 'stable/carbon'
+++ /dev/null
----
-# Autogenerated by autorelease autorelease-update-validate-autorelease-jobs-{stream} Jenkins job
-- project:
- name: autorelease-validate-carbon
- jobs:
- - '{project-name}-validate-autorelease-{stream}'
- stream: carbon
- branch: stable/carbon
- project-name:
- - aaa:
- project: aaa
- - alto:
- project: alto
- - bgpcep:
- project: bgpcep
- - bier:
- project: bier
- - cardinal:
- project: cardinal
- - controller:
- project: controller
- - didm:
- project: didm
- - dlux:
- project: dlux
- - dluxapps:
- project: dluxapps
- - eman:
- project: eman
- - faas:
- project: faas
- - federation:
- project: federation
- - genius:
- project: genius
- - groupbasedpolicy:
- project: groupbasedpolicy
- - honeycomb-vbd:
- project: honeycomb/vbd
- - infrautils:
- project: infrautils
- - integration-distribution:
- project: integration/distribution
- - iotdm:
- project: iotdm
- - l2switch:
- project: l2switch
- - lacp:
- project: lacp
- - lispflowmapping:
- project: lispflowmapping
- - mdsal:
- project: mdsal
- - nemo:
- project: nemo
- - netconf:
- project: netconf
- - netide:
- project: netide
- - netvirt:
- project: netvirt
- - neutron:
- project: neutron
- - nic:
- project: nic
- - ocpplugin:
- project: ocpplugin
- - odlparent:
- project: odlparent
- - of-config:
- project: of-config
- - openflowjava:
- project: openflowjava
- - openflowplugin:
- project: openflowplugin
- - ovsdb:
- project: ovsdb
- - packetcable:
- project: packetcable
- - sdninterfaceapp:
- project: sdninterfaceapp
- - sfc:
- project: sfc
- - snmp:
- project: snmp
- - snmp4sdn:
- project: snmp4sdn
- - sxp:
- project: sxp
- - topoprocessing:
- project: topoprocessing
- - tsdr:
- project: tsdr
- - ttp:
- project: ttp
- - unimgr:
- project: unimgr
- - usc:
- project: usc
- - yangtools:
- project: yangtools
# environment or more complex scenario is chosen
robot-options: >
-v USE_NETCONF_CONNECTOR:False
- -v COUNT:1000000
+ -v COUNT:500000
-v INSERT:10
-v WITHDRAW:9
-v PREFILL:10
# Robot custom options:
robot-options: >
-v USE_NETCONF_CONNECTOR:False
- -v CHECK_PERIOD_PREFIX_COUNT_SINGLE:10
- -v REPETITIONS_CHANGE_COUNT_SINGLE:3
- -v CHECK_PERIOD_PREFIX_COUNT_MANY:10
+ -v CHECK_PERIOD_PREFIX_COUNT_SINGLE:60
+ -v REPETITIONS_CHANGE_COUNT_SINGLE:1
+ -v CHECK_PERIOD_PREFIX_COUNT_MANY:60
-v TEST_DURATION_MULTIPLIER_PREFIX_COUNT_MANY:8.0
- -v REPETITIONS_CHANGE_COUNT_MANY:10
- -v MULTIPLICITY_CHANGE_COUNT_MANY:600
+ -v REPETITIONS_CHANGE_COUNT_MANY:1
+ -v MULTIPLICITY_CHANGE_COUNT_MANY:10
-v TEST_DURATION_MULTIPLIER_CHANGE_COUNT_MANY:8.0
# Controller configuration
verify-branch: 'stable/oxygen'
verify-karaf-version: 'karaf4'
- testplan: 'genius-genius.txt'
-
install:
- all:
scope: 'all'
- cluster-netvirt:
csit-list: >
netvirt-csit-3node-openstack-{os-branch}-gate-stateful-{stream}
+
+ - genius:
+ csit-list: >
+ genius-csit-1node-gate-all-{stream}
+++ /dev/null
-aaa-csit-1node-authn-all-carbon,
-aaa-csit-1node-keystone-all-carbon,
-aaa-csit-1node-tls-only-carbon,
-alto-csit-1node-setup-all-carbon,
-bgpcep-csit-1node-bgp-ingest-all-carbon,
-bgpcep-csit-1node-bgp-ingest-mixed-all-carbon,
-bgpcep-csit-1node-throughpcep-all-carbon,
-bgpcep-csit-1node-userfeatures-all-carbon,
-bgpcep-csit-3node-bgpclustering-all-carbon,
-bgpcep-csit-3node-bgpclustering-ha-only-carbon,
-bier-csit-1node-basic-all-carbon,
-controller-csit-1node-akka1-all-carbon,
-controller-csit-1node-benchmark-all-carbon,
-controller-csit-1node-rest-cars-perf-all-carbon,
-controller-csit-3node-benchmark-all-carbon,
-controller-csit-3node-clustering-all-carbon,
-controller-csit-3node-rest-clust-cars-perf-only-carbon,
-didm-csit-1node-discovery-only-carbon,
-distribution-csit-1node-userfeatures-all-carbon,
-dluxapps-csit-1node-yangman-all-carbon,
-genius-csit-1node-upstream-all-carbon,
-genius-csit-3node-upstream-all-carbon,
-groupbasedpolicy-csit-1node-3-node-all-carbon,
-groupbasedpolicy-csit-1node-6node-all-carbon,
-groupbasedpolicy-csit-1node-openstack-ocata-openstack-carbon,
-groupbasedpolicy-csit-1node-sxp-only-carbon,
-groupbasedpolicy-csit-3node-clustering-all-carbon,
-iotdm-csit-1node-basic-all-carbon,
-l2switch-csit-1node-host-scalability-daily-only-carbon,
-l2switch-csit-1node-scalability-all-carbon,
-l2switch-csit-1node-switch-all-carbon,
-lacp-csit-1node-lacp-all-carbon,
-lispflowmapping-csit-1node-msmr-all-carbon,
-lispflowmapping-csit-1node-performance-only-carbon,
-lispflowmapping-csit-3node-msmr-all-carbon,
-mdsal-csit-1node-bindingv1-only-carbon,
-messaging4transport-csit-1node-basic-all-carbon,
-natapp-csit-1node-basic-all-carbon,
-nemo-csit-1node-engine-all-carbon,
-netconf-csit-1node-callhome-only-carbon,
-netconf-csit-1node-scale-all-carbon,
-netconf-csit-1node-userfeatures-all-carbon,
-netconf-csit-3node-cluster-stress-all-carbon,
-netconf-csit-3node-clustering-all-carbon,
-netconf-csit-3node-clustering-scale-all-carbon,
-netide-csit-1node-basic-all-carbon,
-netvirt-csit-1node-openstack-ocata-upstream-stateful-carbon,
-netvirt-csit-1node-openstack-ocata-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-1node-openstack-pike-upstream-stateful-carbon,
-netvirt-csit-1node-openstack-pike-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-1node-openstack-queens-sfc-carbon,
-netvirt-csit-3node-openstack-ocata-upstream-stateful-carbon,
-netvirt-csit-3node-openstack-ocata-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-3node-openstack-pike-upstream-stateful-carbon,
-netvirt-csit-3node-openstack-pike-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-hwvtep-1node-openstack-ocata-upstream-stateful-carbon,
-netvirt-csit-hwvtep-1node-openstack-pike-upstream-stateful-carbon,
-netvirt-csit-hwvtep-3node-openstack-ocata-upstream-stateful-carbon,
-netvirt-csit-hwvtep-3node-openstack-pike-upstream-stateful-carbon,
-nic-csit-1node-basic-all-carbon,
-ocpplugin-csit-1node-get-all-carbon,
-ocpplugin-csit-1node-scalability-all-carbon,
-of-config-csit-1node-basic-all-carbon,
-openflowplugin-csit-1node-cbench-only-carbon,
-openflowplugin-csit-1node-flow-services-all-carbon,
-openflowplugin-csit-1node-perf-bulkomatic-only-carbon,
-openflowplugin-csit-1node-perf-stats-collection-only-carbon,
-openflowplugin-csit-1node-scale-link-only-carbon,
-openflowplugin-csit-1node-scale-only-carbon,
-openflowplugin-csit-1node-scale-switch-only-carbon,
-openflowplugin-csit-3node-clustering-bulkomatic-only-carbon,
-openflowplugin-csit-3node-clustering-only-carbon,
-openflowplugin-csit-3node-clustering-perf-bulkomatic-only-carbon,
-ovsdb-csit-1node-upstream-southbound-all-carbon,
-ovsdb-csit-3node-upstream-clustering-only-carbon,
-packetcable-csit-1node-pcmm-all-carbon,
-sdninterfaceapp-csit-1node-basic-only-carbon,
-sfc-csit-3node-docker-full-deploy-all-carbon,
-sfc-csit-3node-rest-basic-all-carbon,
-sxp-csit-1node-basic-all-carbon,
-sxp-csit-1node-filtering-all-carbon,
-sxp-csit-1node-performance-all-carbon,
-sxp-csit-1node-topology-all-carbon,
-sxp-csit-3node-clustering-all-carbon,
-sxp-csit-3node-routing-all-carbon,
-topoprocessing-csit-1node-topology-operations-all-carbon,
-tsdr-csit-1node-cassandra-datastore-only-carbon,
-tsdr-csit-1node-elasticsearch-datastore-only-carbon,
-tsdr-csit-1node-hbase-datastore-all-carbon,
-tsdr-csit-1node-hsqldb-datastore-all-carbon,
-unimgr-csit-1node-basic-all-carbon,
-unimgr-csit-1node-legato-all-carbon,
-usc-csit-1node-channel-all-carbon,
-usc-csit-1node-tcp-all-carbon,
-usecplugin-csit-1node-basic-all-carbon,
-vtn-csit-1node-openstack-pike-neutron-carbon,
-yangtools-csit-1node-system-only-carbon,
usc-csit-1node-channel-all-nitrogen,
usc-csit-1node-tcp-all-nitrogen,
usecplugin-csit-1node-basic-all-nitrogen,
-vtn-csit-1node-openstack-pike-neutron-nitrogen,
yangtools-csit-1node-system-only-nitrogen,
tsdr-csit-1node-hsqldb-datastore-all-oxygen,
usc-csit-1node-channel-all-oxygen,
usc-csit-1node-tcp-all-oxygen,
-vtn-csit-1node-openstack-pike-neutron-oxygen,
yangtools-csit-1node-system-only-oxygen,
branch: 'stable/oxygen'
- nitrogen:
branch: 'stable/nitrogen'
- - carbon:
- branch: 'stable/carbon'
- karaf-version: karaf3
install:
- all:
- gerrit-maven-clm
- gerrit-maven-verify-dependencies
- gerrit-tox-verify
+ - '{project-name}-rtd-jobs':
+ project-pattern: integration/distribution
+ rtd-build-url: https://readthedocs.org/api/v2/webhook/opendaylight-distribution/34591/
+ rtd-token: 6247e7a21158a20b207470b8bf7719c676ff8944
project: integration/distribution
project-name: distribution
branch: 'stable/oxygen'
- nitrogen:
branch: 'stable/nitrogen'
- - carbon:
- branch: 'stable/carbon'
- karaf-version: karaf3
- project:
name: distribution-sonar
csit-high-frequency-list: '{csit-high-frequency-list-nitrogen}'
mvn-version: 'mvn35'
- - carbon:
- branch: 'stable/carbon'
- karaf-version: karaf3
- csit-blacklist: capwap centinel coe jsonrpc gate longevity sanity tdd wip
- csit-list: !include: csit-jobs-carbon.lst
- 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: 'mvn35'
-
# tools system image
tools_system_image: ZZCI - Ubuntu 16.04 - mininet-ovs-25 - 20171208-1847
# (if not all) available CSIT jobs.
project-type: freestyle
- node: centos7-builder-4c-4g
+ node: centos7-builder-8c-8g
+ concurrent: true
jdk: '{java-version}'
properties:
patches_to_build: '$PATCHES_TO_BUILD'
- run-test-parameter:
run-test: 'false'
+ - build-fast-parameter:
+ build-fast: 'false'
- integration-distribution-branch:
branch: '{branch}'
- integration-distribution-stream:
branch: '{branch}'
refspec: 'refs/heads/{branch}'
artifacts: '{archive-artifacts}'
- - maven-exec:
- maven-version: mvn35
+ - lf-infra-maven-parameters:
+ mvn-opts: ''
+ mvn-params: ''
+ mvn-version: mvn35
+ staging-profile-id: '' # Staging repos do not make sense for this job
wrappers:
- opendaylight-infra-wrappers:
server-name: '{gerrit-server-name}'
trigger-on:
- comment-added-contains-event:
- comment-contains-value: 'multipatch-build:'
+ comment-contains-value: 'multipatch-build'
projects:
- project-compare-type: ANT
project-pattern: '**'
dist-pom: patch_tester/distribution/pom.xml
- conditional-step:
condition-kind: boolean-expression
- condition-expression: $RUNTEST
+ condition-expression: $RUN_TEST
steps:
- trigger-builds:
- project: '{csit-list}'
#
# multipatch-build:openflowplugin:45/69445/1,genius:46/69446/1,netvirt:47/69447/1
if [ -n "$GERRIT_EVENT_COMMENT_TEXT" ]; then
- # Grep the multipatch-build: line and then strip from the beginning to the :
- PATCHES_TO_BUILD=$(echo "$GERRIT_EVENT_COMMENT_TEXT" | grep 'multipatch-build:')
+ if [[ "$GERRIT_EVENT_COMMENT_TEXT" == *fast* ]]; then
+ BUILD_FAST="true"
+ PATCHES_TO_BUILD=$(echo "$GERRIT_EVENT_COMMENT_TEXT" | grep 'multipatch-build-fast:')
+ else
+ BUILD_FAST="false"
+ PATCHES_TO_BUILD=$(echo "$GERRIT_EVENT_COMMENT_TEXT" | grep 'multipatch-build:')
+ fi
PATCHES_TO_BUILD=${PATCHES_TO_BUILD#*:}
fi
+if ${BUILD_FAST}; then
+ fast_option="-Pq"
+else
+ fast_option=""
+fi
IFS=',' read -ra PATCHES <<< "${PATCHES_TO_BUILD}"
# For each patch:
fi
# Build project
"$MVN" clean install \
- -e -Pq \
+ -e ${fast_option} \
-Dstream=oxygen \
-Dgitid.skip=false \
-Dmaven.gitcommitid.skip=false \
--settings "$SETTINGS_FILE" \
$MAVEN_OPTIONS
cd "${BUILD_DIR}" || exit 1
+ # Since we've installed the artifacts, we can delete the build and save
+ # disk space
+ rm -rf "${PROJECT_SHORTNAME}"
done
if [ "${distribution_status}" == "not_included" ]; then
# Removes openstack images older than 30 days in the cloud
echo "---> Cleanup old images"
-# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
-source "/tmp/v/lftools/bin/activate"
+# shellcheck source=/tmp/v/openstack/bin/activate disable=SC1091
+source "/tmp/v/openstack/bin/activate"
lftools openstack --os-cloud vex image cleanup --days=30
# shellcheck disable=SC2207
mapfile -t OS_SERVERS < <(openstack server list -f value -c "Name" | grep -E 'prd|snd')
-deactivate
-
#############################
## DELETE ORPHANED SERVERS ##
#############################
-# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
-source "/tmp/v/lftools/bin/activate"
-
# Search for servers that are not in use by either releng or sandbox silos and
# delete them.
for server in "${OS_SERVERS[@]}"; do
##############################################################################
echo "---> Cleanup stale nodes"
+# shellcheck source=/tmp/v/openstack/bin/activate disable=SC1091
+source "/tmp/v/openstack/bin/activate"
+
# Todo: As a safe check we could obtain the list of active jobs from Jenkins and
# compute the checksum from $JOB_NAME to check if any active nodes exist and
# skip deleting those nodes. This step may not be required since there is already
# 24H timeout in place for all jobs therefore all jobs are expected to complete
# within the timeout.
-# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
-source "/tmp/v/lftools/bin/activate"
lftools openstack --os-cloud vex server list --days=1
lftools openstack --os-cloud vex server cleanup --days=1
# shellcheck source=/tmp/v/openstack/bin/activate disable=SC1091
source "/tmp/v/openstack/bin/activate"
mapfile -t os_volumes < <(openstack volume list -f value -c ID --status Available)
-deactivate
-# shellcheck source=/tmp/v/lftools/bin/activate disable=SC1091
-source "/tmp/v/lftools/bin/activate"
echo "---> Orphaned volumes"
if [ ${#os_volumes[@]} -eq 0 ]; then
echo "No orphaned volumes found."
lftools openstack --os-cloud vex volume remove --minutes 15 "$volume"
done
fi
+
deactivate
# shellcheck source=/tmp/v/openstack/bin/activate disable=SC1091
source "/tmp/v/openstack/bin/activate"
pip install --upgrade "pip<10.0.0" setuptools
-pip install --upgrade python-openstackclient python-heatclient
+pip install --upgrade lftools python-openstackclient python-heatclient
pip freeze
files:
- file-id: clouds-yaml
target: '$HOME/.config/openstack/clouds.yaml'
+ - file-id: npmrc
+ target: '$HOME/.npmrc'
+ - file-id: pipconf
+ target: '$HOME/.config/pip/pip.conf'
triggers:
- timed: '0,30 * * * *'
builders:
- odl-openstack-install
- - shell: !include-raw-escape: global-jjb/shell/lftools-install.sh
# Servers
- odl-openstack-cleanup-stale-stacks
- odl-openstack-cleanup-stale-nodes
name: run-test-parameter
parameters:
- string:
- name: RUNTEST
+ name: RUN_TEST
default: '{run-test}'
description: 'Set true to run test after build'
+- parameter:
+ name: build-fast-parameter
+ parameters:
+ - string:
+ name: BUILD_FAST
+ default: '{build-fast}'
+ description: 'Set true to build fast -Pq'
+
- parameter:
name: distribution-branch-to-build-parameter
parameters: