-NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
CONTROLLERMEM="3072m"
ACTUALFEATURES="odl-integration-all"
-if [ ${BUNDLEURL} == 'last' ]; then
- NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf"
- # Extract the BUNDLEVERSION from the pom.xml
- BUNDLEVERSION=`xpath pom.xml '/project/version/text()' 2> /dev/null`
- echo "Bundle version is ${BUNDLEVERSION}"
- # Acquire the timestamp information from maven-metadata.xml
- wget ${NEXUSPATH}/${BUNDLEVERSION}/maven-metadata.xml
- TIMESTAMP=`xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null`
- echo "Nexus timestamp is ${TIMESTAMP}"
- BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
- BUNDLE="distribution-karaf-${TIMESTAMP}.zip"
- ACTUALBUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
-else
- ACTUALBUNDLEURL="${BUNDLEURL}"
- BUNDLE="${BUNDLEURL##*/}"
- BUNDLEVERSION="$(basename $(dirname $BUNDLEURL))"
- BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
-fi
-
-echo "Distribution bundle URL is ${ACTUALBUNDLEURL}"
-echo "Distribution bundle is ${BUNDLE}"
-echo "Distribution bundle version is ${BUNDLEVERSION}"
-echo "Distribution folder is ${BUNDLEFOLDER}"
-echo "Nexus prefix is ${NEXUSURL_PREFIX}"
-
echo "Downloading the distribution..."
wget --no-verbose ${ACTUALBUNDLEURL}
-export NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
CONTROLLERMEM="2048m"
if [ ${CONTROLLERSCOPE} == 'all' ]; then
ACTUALFEATURES="${CONTROLLERFEATURES}"
fi
-if [ ${BUNDLEURL} == 'last' ]; then
- NEXUSPATH="${NEXUSURL_PREFIX}/content/repositories/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf"
- # Extract the BUNDLEVERSION from the pom.xml
- export BUNDLEVERSION=`xpath distribution/pom.xml '/project/version/text()' 2> /dev/null`
- echo "Bundle version is ${BUNDLEVERSION}"
- # Acquire the timestamp information from maven-metadata.xml
- wget ${NEXUSPATH}/${BUNDLEVERSION}/maven-metadata.xml
- TIMESTAMP=`xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null`
- echo "Nexus timestamp is ${TIMESTAMP}"
- export BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
- export BUNDLE="distribution-karaf-${TIMESTAMP}.zip"
- export ACTUALBUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
-else
- export ACTUALBUNDLEURL="${BUNDLEURL}"
- export BUNDLE="${BUNDLEURL##*/}"
- export BUNDLEVERSION="$(basename $(dirname $BUNDLEURL))"
- export BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
-fi
-
-echo "Distribution bundle URL is ${ACTUALBUNDLEURL}"
-echo "Distribution bundle is ${BUNDLE}"
-echo "Distribution bundle version is ${BUNDLEVERSION}"
-echo "Distribution folder is ${BUNDLEFOLDER}"
-echo "Nexus prefix is ${NEXUSURL_PREFIX}"
-
if [ -f ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} ]; then
echo "scriptplan exists!!!"
echo "Changing the scriptplan path..."
choosing-strategy: 'gerrit'
# Macro: integration-test-gerrit-trigger-patch-submitted
-# Operation: this macro sets a trigger for patch submit on test/csit/suites/{project}/**
+# Operation: this macro sets a trigger for patch submit on csit/suites/{project}/**
# Used by: {project}-verify-csit-* job templates
- trigger:
pattern: 'csit/suites/{project}/**'
# Macro: integration-csit-gerrit-trigger-patch-submitted
-# Operation: this macro sets a trigger for patch submit on test/csit/**
+# Operation: this macro sets a trigger for patch submit on csit/libraries
# Used by: integration-verify-csit-1node-{stream} job template
- trigger:
branch-pattern: '**/{branch}'
file-paths:
- compare-type: 'ANT'
- pattern: 'csit/**'
+ pattern: 'csit/libraries/*'
# Macro: integration-csit-gerrit-trigger-patch-merged
-# Operation: this macro sets a trigger for patch merged on test/csit/**
+# Operation: this macro sets a trigger for patch merged on csit/**
# Used by: not used yet
- trigger:
+++ /dev/null
-- project:
- name: integration-python
- jobs:
- - 'integration-verify-python-{stream}'
-
- # stream: release stream (eg. stable-lithium or beryllium)
- # branch: git branch (eg. stable/lithium or master)
- stream:
- - beryllium:
- branch: 'master'
- - stable-lithium:
- branch: 'stable/lithium'
-
- project: 'integration'
- jdk: 'openjdk7'
-
-- job-template:
- name: 'integration-verify-python-{stream}'
-
- # Job template for ODL verify jobs
- #
- # The purpose of this job template is to setup a ODL verify job
- #
- # Required Variables:
- # stream: release stream (eg. stable-lithium or beryllium)
- # branch: git branch (eg. stable/lithium or master)
-
- project-type: freestyle
- node: dynamic_verify
- concurrent: true
- jdk: '{jdk}'
-
- logrotate:
- daysToKeep: '{build-days-to-keep}'
- numToKeep: '{build-num-to-keep}'
- artifactDaysToKeep: '{build-artifact-days-to-keep}'
- artifactNumToKeep: '{build-artifact-num-to-keep}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - build-timeout
- - ssh-agent-credentials:
- users:
- - '{ssh-credentials}'
-
- triggers:
- - gerrit:
- server-name: 'OpenDaylight'
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'true'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'true'
- - draft-published-event
- - comment-added-contains-event:
- comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: 'integration'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- file-paths:
- - compare-type: ANT
- pattern: test/**
-
- builders:
- - shell: |
- virtualenv $WORKSPACE/venv-tox
- source $WORKSPACE/venv-tox/bin/activate
- pip install tox argparse
- tox --version
- cd $WORKSPACE/test
- tox
-
- publishers:
- - email-notification:
- email-prefix: '[integration]'
- integration-get-slave-addresses
- inject:
properties-file: 'slave_addresses.txt'
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- integration-deploy-controller-run-test
publishers:
- integration-get-slave-addresses
- inject:
properties-file: 'slave_addresses.txt'
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- integration-deploy-controller-run-test
publishers:
- integration-get-slave-addresses
- inject:
properties-file: 'slave_addresses.txt'
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- integration-deploy-controller-run-test
publishers:
- integration-get-slave-addresses
- inject:
properties-file: 'slave_addresses.txt'
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- integration-deploy-controller-run-test
publishers:
- integration-get-slave-addresses
- inject:
properties-file: 'slave_addresses.txt'
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- integration-deploy-controller-run-test
publishers:
- project:
name: integration-test-jobs
jobs:
- - 'integration-csit-verify-1node-{stream}'
+ - 'integration-verify-python'
+ - 'integration-csit-verify-1node-library'
- 'integration-distribution-offline-{stream}'
- 'integration-distribution-test-{stream}'
- 'integration-patch-test-{stream}'
aaa-distribution-{stream},
integration-distribution-merge-{stream}
-# Template: integration-csit-verify-1node-{stream}
-# Goal: Verify changes in csit folder not covered by projects suite verify jobs (e.g. library or variables)
-# Operation: This job template performs a base openflow test every time there is a change in the csit folder.
+# Template: integration-verify-python
+# Goal: Verify python scripts correct syntax
+# Operation: This job template performs a python tox check on any integration/test patch
- job-template:
- name: 'integration-csit-verify-1node-{stream}'
+ name: 'integration-verify-python'
+
+ project-type: freestyle
+ node: dynamic_verify
+ concurrent: true
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration/test'
+ - gerrit-parameter:
+ branch: 'master'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - gerrit-trigger-patch-submitted:
+ name: 'integration/test'
+ branch: 'master'
+
+ builders:
+ - shell: |
+ virtualenv $WORKSPACE/venv-tox
+ source $WORKSPACE/venv-tox/bin/activate
+ pip install tox argparse
+ tox --version
+ tox
+
+ publishers:
+ - email-notification:
+ email-prefix: '[integration]'
+
+# Template: integration-csit-verify-1node-library
+# Goal: Verify changes in csit folder not covered by projects suite verify jobs (e.g. libraries or variables)
+# Operation: This job template performs a base openflow test when there is a change in the libraries folder
+
+- job-template:
+ name: 'integration-csit-verify-1node-library'
project-type: freestyle
node: dynamic_robot
parameters:
- project-parameter:
- project: 'integration'
+ project: 'integration/test'
+ - integration-distribution-git-url
- integration-branch:
- branch: '{branch}'
+ branch: 'master'
- integration-bundleurl:
bundleurl: 'last'
- integration-controller-scope:
test-plan: 'openflowplugin-flow-services.txt'
scm:
- - gerrit-trigger-scm:
+ - integration-distribution-scm:
credentials-id: '{ssh-credentials}'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
+ branch: 'master'
+ - integration-gerrit-test-scm:
+ credentials-id: '{ssh-credentials}'
+ branch: 'master'
wrappers:
- build-timeout
triggers:
- integration-csit-gerrit-trigger-patch-submitted:
- name: 'integration'
- branch: '{branch}'
+ name: 'integration/test'
+ branch: 'master'
builders:
- integration-get-slave-addresses
- inject:
properties-file: 'slave_addresses.txt'
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- integration-deploy-controller-run-test
publishers:
# Template: integration-distribution-offline-{stream}
# Goal: Verify distribution can start with no internet connection
-# Operation: This daily job template deployes the controller removing any external repository definition
+# Operation: This job deployes the controller removing any external repository definition
+# whenever there is a change in a kernel project (odlparent, controller, yangtools, etc...)
- job-template:
name: 'integration-distribution-offline-{stream}'
parameters:
- project-parameter:
- project: 'integration'
+ project: 'integration/distribution'
+ - integration-distribution-git-url
- integration-branch:
branch: '{branch}'
- integration-bundleurl:
bundleurl: 'last'
scm:
- - git-scm:
+ - integration-distribution-scm:
credentials-id: '{ssh-credentials}'
- refspec: ''
branch: '{branch}'
wrappers:
result: 'success'
builders:
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- integration-deploy-controller-offline
publishers: