</tr>
<tr>
<td colspan="2">
- This job builds a distrbution against your patch, passes distribution sanity test
+ This job builds a distrbution against your patch, tiggers distribution sanity CSIT jobs
and reports back the results to Gerrit. Leave a comment with trigger keyword above
to activate it for a particular patch.
<p>
Running the "test-distribution" trigger will cause Jenkins to
remove it's existing vote if it's already -1 or +1'd a comment.
- You will need to re-run your verify job (recheck) after running
+ You will need to re-run your verify jobs (recheck) after running
this to get Jenkins to put back the correct vote.
</p>
</div>
</td>
</tr>
+ <tr class="warning">
+ <td><b>Job Template</b><br/>{project}-distribution-check-{stream}</td>
+ <td><b>Gerrit Trigger</b><br/>recheck | redistcheck</td>
+ </tr>
+ <tr>
+ <td colspan="2">
+ This job runs the PROJECT-distribution-check-BRANCH job which is
+ building also integration/distribution project in order to run SingleFeatureTest.
+
+ The <b>redistcheck</b> trigger is useful in cases where a project's
+ other jobs passed, however this job failed due to infra problems or
+ intermittent issues. It will retrigger just this job to save time.
+
+ BEWARE: If there were other failed jobs, redistcheck could lead
+ to false Verified+1 vote, risking a merge which breaks other projetcs.
+ Redistcheck is only for committers who are familiar with the risks involved.
+ If in doubt, use the safe trigger word: recheck.
+ Recheck triggers every job involved in verifying latest patch set in the Change.
+ </td>
+ </tr>
+
<tr class="warning">
<td><b>Job Template</b><br/>{project}-integration-{stream}</td>
<td></td>
</tr>
<tr>
<td colspan="2">
- The Merge job template is similar to the Verify Job Template except
- it will trigger once a Gerrit patch is merged into the repo. It
- also automatically runs the Maven goals <b>source:jar</b> and
- <b>javadoc:jar</b>.
-
- This job will upload artifacts to OpenDaylight's
+ This job will trigger once a Gerrit patch is merged into the repo.
+ It will build HEAD of the current project branch and also run the Maven goals
+ <b>source:jar</b> and <b>javadoc:jar</b>.
+ Artifacts are uploaded to OpenDaylight's
<a href="https://nexus.opendaylight.org">Nexus</a> on completion.
+
+ Running the "remerge" trigger is possible before a Change is merged,
+ in which case it will cause Jenkins to remove it's existing vote
+ if it's already -1 or +1'd a comment.
+ You will need to re-run your verify jobs (recheck) after running
+ this to get Jenkins to put back the correct vote.
</td>
</tr>
<tr class="warning">
<td><b>Job Template</b><br/>{project}-validate-autorelease-{stream}</td>
- <td><b>Gerrit Trigger</b><br/>recheck | reverify</td>
+ <td><b>Gerrit Trigger</b><br/>recheck | revalidate</td>
</tr>
<tr>
<td colspan="2">
features that do not exist in the current release.
The <b>revalidate</b> trigger is useful in cases where a project's
- verify job passed however validate failed due to infra problems or
- intermittent issues. It will retrigger just the validate-autorelease
- job.
+ other job passed, however this job failed due to infra problems or
+ intermittent issues. It will retrigger just this job to save time.
+
+ BEWARE: If there were other failed jobs, revalidate could lead
+ to false Verified+1 vote, risking a merge which breaks other projetcs.
+ Revalidate is only for committers who are familiar with the risks involved.
+ If in doubt, use the safe trigger word: recheck.
</td>
</tr>
</tr>
<tr>
<td colspan="2">
- The Verify job template creates a Gerrit Trigger job that will
- trigger when a new patch is submitted to Gerrit.
+ The Verify job template creates a Gerrit Trigger job that will
+ trigger when a new patch is submitted to Gerrit.
+ The job only builds the project code (including unit and integration tests).
+
+ The <b>reverify</b> trigger is useful in cases where a project's
+ other jobs passed however this job failed due to infra problems or
+ intermittent issues. It will retrigger just this job to save time.
+
+ BEWARE: If there were other failed jobs, reverify could lead
+ to false Verified+1 vote, risking a merge which breaks other projetcs.
+ Reverify is only for committers who are familiar with the risks involved.
+ If in doubt, use the safe trigger word: recheck.
+ Recheck triggers every job involved in verifying latest patch set in the Change.
</td>
</tr>
<tr class="warning">
<td><b>Job Template</b><br/>{project}-verify-node-{stream}</td>
- <td><b>Gerrit Trigger</b><br/>recheck | reverify</td>
+ <td><b>Gerrit Trigger</b><br/>recheck | renode</td>
</tr>
<tr>
<td colspan="2">
{nodever} containing the directory relative to the project root
containing the nodejs package.json and version of node you wish to
run tests with.
+
+ The <b>renode</b> trigger is useful in cases where a project's
+ other jobs passed, however this job failed due to infra problems or
+ intermittent issues. It will retrigger just this job to save time.
+
+ BEWARE: If there were other failed jobs, renode could lead
+ to false Verified+1 vote, risking a merge which breaks other projetcs.
+ Renode is only for committers who are familiar with the risks involved.
+ If in doubt, use the safe trigger word: recheck.
+ Recheck triggers every job involved in verifying latest patch set in the Change.
</td>
</tr>
<tr class="warning">
- <td><b>Job Template</b><br/>{project}-verify-python-{stream}</td>
- <td><b>Gerrit Trigger</b><br/>recheck | reverify</td>
+ <td><b>Job Template</b><br/>{project}-verify-python-{stream} | {project}-verify-tox-{stream}</td>
+ <td><b>Gerrit Trigger</b><br/>recheck | retox</td>
</tr>
<tr>
<td colspan="2">
- This job template can be used by a project that contains Python. It
+ This job template can be used by a project that uses Tox to build. It
simply installs a Python virtualenv and uses tox to run the tests
defined in the project's tox.ini file. If the tox.ini is anywhere
other than the project's repo root, the path to its directory
relative to the project's repo root should be passed as {toxdir}.
+
+ The 2 template names verify-python & verify-tox are identical and are
+ aliases to each other. This allows the project to use the naming that
+ is most reasonable for them.
+
+ The <b>retox</b> trigger is useful in cases where a project's
+ other verify jobs passed, however this job failed due to infra problems or
+ intermittent issues. It will retrigger just this job to save time.
+
+ BEWARE: If there were other failed jobs, retox could lead
+ to false Verified+1 vote, risking a merge which breaks other projetcs.
+ Retox is only for committers who are familiar with the risks involved.
+ If in doubt, use the safe trigger word: recheck.
+ Recheck triggers every job involved in verifying latest patch set in the Change.
</td>
</tr>
mkdir /tmp/cassandra
cd /tmp/cassandra
-wget --no-verbose http://apache.osuosl.org/cassandra/2.1.14/apache-cassandra-2.1.14-bin.tar.gz
+wget --no-verbose http://apache.osuosl.org/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz
echo "Installing the Cassandra Server..."
-tar -xvf apache-cassandra-2.1.14-bin.tar.gz
+tar -xvf apache-cassandra-2.1.16-bin.tar.gz
# Installation of Elasticsearch node
server-name: 'OpenDaylight'
trigger-on:
- patchset-created-event:
- exclude-drafts: 'false'
+ exclude-drafts: 'true'
exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
+ exclude-no-code-change: 'true'
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
jdk: 'openjdk8'
integration-test: carbon
- boron:
- next-release-tag: Boron
+ next-release-tag: Boron-SR2
branch: 'stable/boron'
jdk: 'openjdk8'
integration-test: boron
- beryllium:
- next-release-tag: Beryllium-SR4
+ next-release-tag: Beryllium-SR5
branch: 'stable/beryllium'
jdk: 'openjdk7'
integration-test: beryllium
project: 'releng/autorelease'
- archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch'
+ archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[autorelease]'
- trigger-parameterized-builds:
- project: 'integration-distribution-test-{integration-test}'
condition: UNSTABLE_OR_BETTER
- property-file: variables.prop
+ property-file: variables.jenkins-trigger
fail-on-missing: true
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
REPOID=`grep "Created staging repository with ID" $WORKSPACE/deploy-staged-repository.log | cut -d '"' -f2`
echo BUNDLEURL=${NEXUSURL}/${REPOID}/org/opendaylight/integration/distribution-karaf/${VERSION}/distribution-karaf-${VERSION}.zip > $WORKSPACE/variables.prop
echo "BUNDLEURL: ${BUNDLEURL}"
+
+# Copy variables.prop to variables.jenkins-trigger so that the end of build
+# trigger can pick up the file as input for triggering downstream jobs.
+# This allows variables.prop to get archive to logs.opendaylight.org while not
+# breaking the downstream trigger due to missing file from archiving.
+cp variables.prop variables.jenkins-trigger
--- /dev/null
+- project:
+ name: daexim-carbon
+ jobs:
+ - '{project-name}-clm-{stream}'
+ - '{project-name}-distribution-{stream}'
+ - '{project-name}-integration-{stream}'
+ - '{project-name}-merge-{stream}'
+ - '{project-name}-periodic-{stream}'
+ - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+ project: 'daexim'
+ project-name: 'daexim'
+ stream: carbon
+ branch: 'master'
+ jdk: openjdk8
+ jdks:
+ - openjdk8
+ maven:
+ - mvn33:
+ mvn-version: 'mvn33'
+ mvn-settings: 'daexim-settings'
+ mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+ dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+ email-upstream: '[daexim] [odlparent] [yangtools] [controller]'
+ archive-artifacts: ''
+
+- project:
+ name: daexim-sonar
+ jobs:
+ - '{project-name}-sonar'
+
+ project: 'daexim'
+ project-name: 'daexim'
+ branch: 'master'
+ mvn-settings: 'daexim-settings'
+ mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[docs]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
trigger-on:
- patchset-created-event:
exclude-drafts: 'true'
- exclude-trivial-rebase: '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: 'redocs'
+ # FIXME: Describe this job in docs/jenkins.rst including the BEWARE section.
projects:
- project-compare-type: 'ANT'
project-pattern: '**'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[docs]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
-- project:
- name: docs-carbon
- jobs:
- - '{project-name}-clm-{stream}'
- - '{project-name}-distribution-{stream}'
- - '{project-name}-distribution-check-{stream}'
- - '{project-name}-integration-{stream}'
- - '{project-name}-merge-{stream}'
- - '{project-name}-periodic-{stream}'
- - '{project-name}-validate-autorelease-{stream}'
- - '{project-name}-verify-{stream}-{maven}-{jdks}'
-
- stream:
- - carbon:
- disable_autorelease: False
- disable_distribution_check: True
- project: 'docs'
- project-name: 'docs'
- branch: 'master'
- jdk: openjdk8
- jdks:
- - openjdk8
- maven:
- - mvn33:
- mvn-version: 'mvn33'
- mvn-settings: 'docs-settings'
- mvn-goals: 'clean install'
- mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- dependencies: 'odlparent-merge-{stream}'
- email-upstream: '[docs] [odlparent]'
- archive-artifacts: ''
-
-- project:
- name: docs-boron
- jobs:
- - '{project-name}-clm-{stream}'
- - '{project-name}-distribution-{stream}'
- - '{project-name}-distribution-check-{stream}'
- - '{project-name}-integration-{stream}'
- - '{project-name}-merge-{stream}'
- - '{project-name}-periodic-{stream}'
- - '{project-name}-validate-autorelease-{stream}'
- - '{project-name}-verify-{stream}-{maven}-{jdks}'
-
- stream:
- - boron:
- disable_autorelease: False
- disable_distribution_check: True
- project: 'docs'
- project-name: 'docs'
- branch: 'stable/boron'
- jdk: openjdk8
- jdks:
- - openjdk8
- maven:
- - mvn33:
- mvn-version: 'mvn33'
- mvn-settings: 'docs-settings'
- mvn-goals: 'clean install'
- mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- dependencies: 'odlparent-merge-{stream}'
- email-upstream: '[docs] [odlparent]'
- archive-artifacts: ''
-
- project:
name: docs-beryllium
jobs:
# The project name
project: 'genius'
- feature: 'all'
-
# Project branches
stream:
- carbon:
branch: 'master'
jdk: 'openjdk8'
- csit-list: >
- genius-csit-1node-genius-only-{stream},
- genius-csit-1node-genius-all-{stream}
-
- boron:
branch: 'stable/boron'
jdk: 'openjdk8'
+
+ feature:
+ - netvirt:
+ csit-list: >
+ netvirt-csit-1node-openstack-mitaka-transparent-{stream}
+
+ - genius:
csit-list: >
genius-csit-1node-genius-only-{stream},
genius-csit-1node-genius-all-{stream}
-
# Magic string used to trim console logs at the appropriate level during wget
echo "-----END_OF_BUILD-----"
-wget -O $ARCHIVES_DIR/_console-output.log ${{BUILD_URL}}consoleText
-sed -i '/^-----END_OF_BUILD-----$/,$d' $ARCHIVES_DIR/_console-output.log
+wget -O $ARCHIVES_DIR/console.log ${{BUILD_URL}}consoleText
+sed -i '/^-----END_OF_BUILD-----$/,$d' $ARCHIVES_DIR/console.log
gzip $ARCHIVES_DIR/*.txt $ARCHIVES_DIR/*.log
# find and gzip any 'text' files
| cut -d: -f1 \
| xargs -d'\n' -r gzip
-zip -r archives.zip $JENKINS_HOSTNAME/
+zip -r archives.zip $JENKINS_HOSTNAME/ > $ARCHIVES_DIR/_archives-zip.log
du -sh archives.zip
scope: 'all'
# Features to install
- install-features: 'odl-restconf,odl-distribution-version,odl-netconf-connector-all'
+ install-features: 'odl-restconf,odl-distribution-version,odl-netconf-connector-all,odl-jolokia'
# Robot custom options
robot-options: ''
SUITES=$( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' ' )
echo "Starting Robot test suites ${SUITES} ..."
-pybot -N ${TESTPLAN} -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp \
+pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp \
-v JAVA_HOME:${JAVA_HOME} -v BUNDLE_URL:${ACTUALBUNDLEURL} -v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} \
-v CONTROLLER:${ODL_SYSTEM_IP} -v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} -v ODL_SYSTEM_1_IP:${ODL_SYSTEM_IP} \
-v CONTROLLER_USER:${USER} -v ODL_SYSTEM_USER:${USER} \
echo "Starting Robot test suites ${SUITES} ..."
-pybot -e exclude \
+pybot --removekeywords wuks -e exclude \
-v WORKSPACE:$WORKSPACE -v USER_HOME:$HOME -L TRACE \
-v DEVSTACK_SYSTEM_USER:$USER \
-v DEVSTACK_SYSTEM_IP:$OPENSTACK_CONTROL_NODE_IP \
${SSH} ${OPENSTACK_CONTROL_NODE_IP} "sudo bash /tmp/disable_firewall.sh"
echo "sleep for a minute and print hypervisor-list"
sleep 60
-${SSH} ${OPENSTACK_CONTROL_NODE_IP} "cd /opt/stack/devstack; source openrc admin admin; nova hypervisor-list;nova-manage service list"
+${SSH} ${OPENSTACK_CONTROL_NODE_IP} "cd /opt/stack/devstack; source openrc admin admin; nova hypervisor-list"
#Need to disable firewalld and iptables in compute nodes as well
for i in `seq 1 $((NUM_OPENSTACK_SYSTEM - 1))`
SUITES=`egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' '`
echo "Starting Robot test suites ${SUITES} ..."
-pybot -N ${TESTPLAN} -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp -v BUNDLE_URL:${ACTUALBUNDLEURL} \
--v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} -v JDKVERSION:${JDKVERSION} -v ODL_STREAM:${DISTROSTREAM} \
+pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp \
+-v BUNDLE_URL:${ACTUALBUNDLEURL} -v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} -v JDKVERSION:${JDKVERSION} -v ODL_STREAM:${DISTROSTREAM} \
-v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} -v ODL_SYSTEM_1_IP:${ODL_SYSTEM_1_IP} -v ODL_SYSTEM_2_IP:${ODL_SYSTEM_2_IP} \
-v ODL_SYSTEM_3_IP:${ODL_SYSTEM_3_IP} -v NUM_ODL_SYSTEM:${NUM_ODL_SYSTEM} -v CONTROLLER_USER:${USER} -v OS_USER:${USER} \
-v NUM_OS_SYSTEM:${NUM_OPENSTACK_SYSTEM} -v OS_CONTROL_NODE_IP:${OPENSTACK_CONTROL_NODE_IP} \
# Make sure pip itself us up-to-date.
pip install --upgrade pip
-pip install --upgrade docker-py importlib requests scapy netifaces netaddr ipaddr
-pip install --upgrade robotframework{,-{httplibrary,requests,selenium2library}}
-pip install --upgrade robotframework-sshlibrary pycparser==2.13 # TODO: Unfreeze when cryptography stops failing on pycparser-2.14-py2.py3-none-any.whl
+pip install --upgrade docker-py importlib requests scapy netifaces netaddr ipaddr pyhocon
+pip install --upgrade robotframework{,-{httplibrary,requests,sshlibrary,selenium2library}}
# Module jsonpath is needed by current AAA idmlite suite.
pip install --upgrade jsonpath-rw
SUITES=`egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' '`
echo "Starting Robot test suites ${SUITES} ..."
-pybot -N ${TESTPLAN} -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} \
+pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} \
-v WORKSPACE:/tmp -v BUNDLE_URL:${ACTUALBUNDLEURL} -v JAVA_HOME:${JAVA_HOME} \
-v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} -v JDKVERSION:${JDKVERSION} -v ODL_STREAM:${DISTROSTREAM} \
-v CONTROLLER:${ODL_SYSTEM_IP} -v CONTROLLER1:${ODL_SYSTEM_2_IP} -v CONTROLLER2:${ODL_SYSTEM_3_IP} -v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} \
build-timeout: '{build-timeout}'
triggers:
- - gerrit-trigger-relevant-patch-submitted:
+ - gerrit-trigger-patch-submitted:
name: 'integration/distribution'
branch: '{branch}'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[int/dist]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[int/dist]'
# Template: integration-distribution-deploy-{stream}
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[int/dist]'
- integration-csit-archive-build
- opendaylight-infra-shiplogs:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[int/dist]'
- integration-csit-archive-build
- opendaylight-infra-shiplogs:
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- integration-csit-archive-build
- opendaylight-infra-shiplogs:
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- plot:
- title: '{01-plot-title}'
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- plot:
- title: '{01-plot-title}'
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- integration-csit-archive-build
- opendaylight-infra-shiplogs:
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- plot:
- title: '{01-plot-title}'
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- plot:
- title: '{01-plot-title}'
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- plot:
- title: '{01-plot-title}'
description: 'Openstack version to use with devstack'
- string:
name: ODL_ML2_DRIVER_REPO
- default: 'https://github.com/openstack/networking-odl'
+ default: '{odl-ml2-driver-repo}'
description: 'URL to fetch networking-odl driver'
- string:
name: ODL_ML2_VERSION
openstack-vms: '{openstack-vms}'
triggers:
- - integration-csit-all
+ - timed: '{schedule}'
builders:
- integration-copy-ssh-keys
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- integration-csit-archive-build
- opendaylight-infra-shiplogs:
description: 'Openstack version to use with devstack'
- string:
name: ODL_ML2_DRIVER_REPO
- default: 'https://github.com/openstack/networking-odl'
+ default: '{odl-ml2-driver-repo}'
description: 'URL to fetch networking-odl driver'
- string:
name: ODL_ML2_VERSION
openstack-vms: '{openstack-vms}'
triggers:
- - integration-csit-all
+ - timed: '{schedule}'
builders:
- integration-copy-ssh-keys
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- integration-csit-archive-build
- opendaylight-infra-shiplogs:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- project:
name: integration-test
jobs:
- - '{project-name}-verify-python-{stream}'
+ - '{project-name}-verify-tox-{stream}'
- 'integration-csit-verify-1node-library'
- 'integration-distribution-test-{stream}'
- 'integration-patch-test-{stream}'
vtn-csit-1node-manager-all-{stream},
vtn-csit-1node-coordinator-only-{stream}
+ # mininet image
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
# Template: integration-csit-verify-1node-library
# Goal: Verify changes in csit folder not covered by projects suite verify jobs (e.g. libraries or variables)
unstable-if: 0.0
pass-if: 100.0
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[integration]'
- integration-csit-archive-build
- opendaylight-infra-shiplogs:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[integration]'
# Template: integration-patch-test-{stream}
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[$GERRIT_PROJECT]'
# Template: integration-multipatch-test-{stream}
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[int/dist]'
--- /dev/null
+- project:
+ name: l2switch-patch-test
+ jobs:
+ - '{project}-patch-test-{feature}-{stream}'
+
+ # The project name
+ project: 'l2switch'
+
+ # Project branches
+ stream:
+ - carbon:
+ branch: 'master'
+ jdk: 'openjdk8'
+ - boron:
+ branch: 'stable/boron'
+ jdk: 'openjdk8'
+ - beryllium:
+ branch: 'stable/beryllium'
+ jdk: 'openjdk7'
+
+ feature:
+ - all:
+ csit-list: >
+ l2switch-csit-1node-periodic-host-scalability-daily-only-{stream},
+ l2switch-csit-1node-scalability-only-{stream},
+ l2switch-csit-1node-switch-only-{stream}
jobs:
- '{project}-csit-1node-openstack-{openstack}-{functionality}-{stream}'
- # The project name
project: 'netvirt'
- # The project name
- functionality: 'openstack'
+ functionality:
+ - upstream-transparent:
+ schedule: 'H H * * *'
+ sg-mode: 'transparent'
+ - upstream-stateful:
+ schedule: 'H H * * *'
+ sg-mode: 'stateful'
+ - upstream-learn:
+ schedule: 'H H * * *'
+ sg-mode: 'learn'
+ - gate-transparent:
+ schedule: ''
+ sg-mode: 'transparent'
stream:
- carbon:
- boron:
branch: 'stable/boron'
jre: 'openjdk8'
- - beryllium:
- branch: 'stable/beryllium'
- jre: 'openjdk7'
openstack:
- mitaka:
openstack-vms: 3
- install-features: 'odl-ovsdb-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
-
- schedule: 'H H * * *'
+ install-features: 'odl-netvirt-openstack'
odl-enable-l3: 'yes'
- public-bridge: 'br-ex'
+ public-bridge: 'public' # PUBLIC_PHYSICAL_NETWORK
enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
tenant-network-type: 'vxlan'
- security-group-mode: 'none'
+ security-group-mode: '{sg-mode}'
jobs:
- '{project}-csit-3node-openstack-{openstack}-{functionality}-{stream}'
- # The project name
project: 'netvirt'
- # The project name
- functionality: 'openstack'
+ functionality:
+ - upstream-transparent:
+ schedule: 'H H * * *'
+ sg-mode: 'transparent'
+ - upstream-stateful:
+ schedule: 'H H * * *'
+ sg-mode: 'stateful'
+ - upstream-learn:
+ schedule: 'H H * * *'
+ sg-mode: 'learn'
+ - gate-transparent:
+ schedule: ''
+ sg-mode: 'transparent'
stream:
- carbon:
- boron:
branch: 'stable/boron'
jre: 'openjdk8'
- - beryllium:
- branch: 'stable/beryllium'
- jre: 'openjdk7'
openstack:
- mitaka:
openstack-vms: 4
- install-features: 'odl-ovsdb-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
-
- schedule: 'H H * * *'
+ install-features: 'odl-netvirt-openstack'
odl-enable-l3: 'yes'
enable-haproxy: 'yes'
- public-bridge: 'br-ex'
+ public-bridge: 'public' # PUBLIC_PHYSICAL_NETWORK
enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
tenant-network-type: 'vxlan'
- security-group-mode: 'none'
+ security-group-mode: '{sg-mode}'
- project:
- name: netvirt-csit-clustering
+ name: netvirt-legacy-csit-clustering
jobs:
- '{project}-csit-3node-{functionality}-{install}-{stream}'
- '{project}-csit-verify-3node-{functionality}'
# The project name
- project: 'netvirt'
+ project: 'netvirt-legacy'
# The functionality under test
functionality: 'clustering'
- project:
- name: netvirt-csit
+ name: netvirt-legacy-csit
jobs:
- '{project}-csit-1node-{functionality}-{install}-{stream}'
- '{project}-csit-verify-1node-{functionality}'
# The project name
- project: 'netvirt'
+ project: 'netvirt-legacy'
# The functionality under test
functionality: 'openstack-basic'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[netvirt]'
- text-finder:
fileset: "**/target/surefire-reports/*.xml"
- project:
- name: netvirt-vpnservice-csit-openstack-integration
+ name: netvirt-legacy-csit-openstack-integration
jobs:
- '{project}-csit-1node-openstack-{openstack}-{functionality}-{stream}'
- project: 'netvirt-vpnservice'
+ # The project name
+ project: 'netvirt-legacy'
+ # The project name
functionality:
- - 'transparent'
- - 'stateful'
- - 'learn'
+ - upstream:
+ schedule: 'H H * * *'
+ - gate:
+ schedule: ''
stream:
- carbon:
- boron:
branch: 'stable/boron'
jre: 'openjdk8'
+ - beryllium:
+ branch: 'stable/beryllium'
+ jre: 'openjdk7'
openstack:
- mitaka:
openstack-vms: 3
- install-features: 'odl-netvirt-openstack'
-
- schedule: 'H H * * *'
+ install-features: 'odl-ovsdb-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
odl-enable-l3: 'yes'
- public-bridge: 'public' # PUBLIC_PHYSICAL_NETWORK
+ public-bridge: 'br-ex'
enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
tenant-network-type: 'vxlan'
- security-group-mode: '{functionality}'
+ security-group-mode: 'none'
- project:
- name: netvirt-vpnservice-3node-csit-openstack-integration
+ name: netvirt-legacy-3node-csit-openstack-integration
jobs:
- '{project}-csit-3node-openstack-{openstack}-{functionality}-{stream}'
# The project name
- project: 'netvirt-vpnservice'
+ project: 'netvirt-legacy'
# The project name
- functionality: 'openstack'
+ functionality:
+ - upstream:
+ schedule: 'H H * * *'
+ - gate:
+ schedule: ''
stream:
- carbon:
- boron:
branch: 'stable/boron'
jre: 'openjdk8'
+ - beryllium:
+ branch: 'stable/beryllium'
+ jre: 'openjdk7'
openstack:
- mitaka:
openstack-vms: 4
- install-features: 'odl-netvirt-openstack'
-
- schedule: 'H H * * *'
+ install-features: 'odl-ovsdb-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
odl-enable-l3: 'yes'
enable-haproxy: 'yes'
- public-bridge: 'public' # PUBLIC_PHYSICAL_NETWORK
+ public-bridge: 'br-ex'
enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
tenant-network-type: 'vxlan'
- security-group-mode: 'transparent'
+ security-group-mode: 'none'
- gerrit:
trigger-on:
- patchset-created-event:
- exclude-drafts: 'false'
+ exclude-drafts: 'true'
exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
+ exclude-no-code-change: 'true'
- comment-added-contains-event:
comment-contains-value: 'recheck-opendaylight'
projects:
feature:
- legacy:
csit-list: >
- netvirt-csit-1node-openstack-mitaka-openstack-{stream}
-
+ netvirt-legacy-csit-1node-openstack-mitaka-gate-{stream},
+ netvirt-legacy-csit-1node-openstack-basic-only-{stream}
- current:
csit-list: >
- netvirt-vpnservice-csit-1node-openstack-mitaka-transparent-{stream}
-
- - all:
+ netvirt-csit-1node-openstack-mitaka-gate-transparent-{stream}
+ - legacy-cluster:
+ csit-list: >
+ netvirt-legacy-csit-3node-clustering-only-{stream},
+ netvirt-legacy-csit-3node-openstack-mitaka-openstack-{stream}
+ - current-cluster:
csit-list: >
- netvirt-vpnservice-csit-1node-openstack-mitaka-transparent-{stream},
- netvirt-csit-1node-openstack-mitaka-openstack-{stream}
+ netvirt-csit-3node-openstack-newton-openstack-{stream}
\ No newline at end of file
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[netvirt]'
- jacoco-report
- findbugs
scope: 'only'
# Features to install
- install-features: 'odl-openflowplugin-flow-services-ui'
+ install-features: 'odl-openflowplugin-flow-services-ui,decanter-collector-jmx,decanter-appender-elasticsearch'
# Robot custom options
robot-options: ''
schedule: 'H H * * *'
# Plot Info
- 01-plot-title: 'Max number of switch links'
+ 01-plot-title: 'Maxmum Links Full Mesh Topology'
01-plot-yaxis: 'Links'
- 01-plot-group: 'Inventory Switch Link Scalability'
+ 01-plot-group: 'Link Scalability'
01-plot-data-file: 'links.csv'
+ 02-plot-title: 'Topology Discover Time'
+ 02-plot-yaxis: 'Seconds'
+ 02-plot-group: 'Link Scalability'
+ 02-plot-data-file: 'time.csv'
scope: 'only'
# Features to install
- install-features: 'odl-openflowplugin-flow-services-ui'
+ install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-table-miss-enforcer,decanter-collector-jmx,decanter-appender-elasticsearch'
# Robot custom options
robot-options: ''
+ # mininet image
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
+
# Trigger jobs (daily)
schedule: 'H H * * *'
# Plot Info
- 01-plot-title: 'Max number of switch links'
+ 01-plot-title: 'Maximum Links Full Mesh Topology'
01-plot-yaxis: 'Links'
- 01-plot-group: 'Inventory Switch Link Scalability'
+ 01-plot-group: 'Link Scalability'
01-plot-data-file: 'links.csv'
+ 02-plot-title: 'Topology Discover Time'
+ 02-plot-yaxis: 'Seconds'
+ 02-plot-group: 'Link Scalability'
+ 02-plot-data-file: 'time.csv'
install-features: 'odl-openflowplugin-flow-services-ui,decanter-collector-jmx,decanter-appender-elasticsearch'
# Robot custom options
- robot-options: '-v TEST_LENGTH:23@hours --escape space:@'
+ robot-options: '-v TEST_LENGTH:23h'
# Trigger jobs (daily)
schedule: 'H H * * *'
scope: 'only'
# Features to install
- install-features: 'odl-openflowplugin-flow-services-ui,decanter-collector-jmx,decanter-appender-elasticsearch'
+ install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-table-miss-enforcer,decanter-collector-jmx,decanter-appender-elasticsearch'
# Robot custom options
- robot-options: '-v TEST_LENGTH:23@hours --escape space:@'
+ robot-options: '-v TEST_LENGTH:23h'
+
+ # mininet image
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
# Trigger jobs (daily)
schedule: 'H H * * *'
+++ /dev/null
-- project:
- name: openflowplugin-csit-scalability-daily-old
- jobs:
- - '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
-
- # The project name
- project: 'openflowplugin'
-
- # The functionality under test
- functionality: 'scalability-daily'
-
- # Project branches
- stream:
- - beryllium:
- branch: 'stable/beryllium'
- jre: 'openjdk7'
-
- install:
- - only:
- scope: 'only'
-
- # Features to install
- install-features: 'odl-openflowplugin-flow-services-ui'
-
- # Robot custom options
- robot-options: '-v MIN_SWITCHES:100 -v MAX_SWITCHES:500 -v STEP_SWITCHES:100'
-
- # Trigger jobs (daily)
- schedule: 'H H * * *'
-
- # Plot Info
- 01-plot-title: 'Max number of Switches'
- 01-plot-yaxis: 'OpenFlow Switches'
- 01-plot-group: 'Inventory Scalability'
- 01-plot-data-file: 'switches.csv'
+++ /dev/null
-- project:
- name: openflowplugin-csit-scalability-daily
- jobs:
- - '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
-
- # The project name
- project: 'openflowplugin'
-
- # The functionality under test
- functionality: 'scalability-daily'
-
- # Project branches
- stream:
- - carbon:
- branch: 'master'
- jre: 'openjdk8'
- - boron:
- branch: 'stable/boron'
- jre: 'openjdk8'
-
- install:
- - only:
- scope: 'only'
-
- # Features to install
- install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-table-miss-enforcer'
-
- # Robot custom options
- robot-options: '-v MIN_SWITCHES:100 -v MAX_SWITCHES:500 -v STEP_SWITCHES:50'
-
- # mininet image
- mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
-
- # Trigger jobs (daily)
- schedule: 'H H * * *'
-
- # Plot Info
- 01-plot-title: 'Max number of Switches'
- 01-plot-yaxis: 'OpenFlow Switches'
- 01-plot-group: 'Inventory Scalability'
- 01-plot-data-file: 'switches.csv'
- project:
- name: openflowplugin-csit-sw-scalability-daily-old
+ name: openflowplugin-csit-scalability-daily-old
jobs:
- '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
scope: 'only'
# Features to install
- install-features: 'odl-openflowplugin-flow-services-ui'
+ install-features: 'odl-openflowplugin-flow-services-ui,decanter-collector-jmx,decanter-appender-elasticsearch'
# Robot custom options
robot-options: ''
schedule: 'H H * * *'
# Plot Info
- 01-plot-title: 'Max number of Switches'
- 01-plot-yaxis: 'OpenFlow Switches'
- 01-plot-group: 'Inventory Scalability'
- 01-plot-data-file: 'max_found.csv'
+ 01-plot-title: 'Maximum Switches Linear Topology'
+ 01-plot-yaxis: 'Switches'
+ 01-plot-group: 'Switch Scalability'
+ 01-plot-data-file: 'switches.csv'
+ 02-plot-title: 'Topology Discover Time'
+ 02-plot-yaxis: 'Seconds'
+ 02-plot-group: 'Switch Scalability'
+ 02-plot-data-file: 'time.csv'
- project:
- name: openflowplugin-csit-sw-scalability-daily
+ name: openflowplugin-csit-scalability-daily
jobs:
- '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
scope: 'only'
# Features to install
- install-features: 'odl-openflowplugin-flow-services-ui'
+ install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-table-miss-enforcer,decanter-collector-jmx,decanter-appender-elasticsearch'
# Robot custom options
robot-options: ''
+ # mininet image
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
+
# Trigger jobs (daily)
schedule: 'H H * * *'
# Plot Info
- 01-plot-title: 'Max number of Switches'
- 01-plot-yaxis: 'OpenFlow Switches'
- 01-plot-group: 'Inventory Scalability'
- 01-plot-data-file: 'max_found.csv'
+ 01-plot-title: 'Maximum Switches Linear Topology'
+ 01-plot-yaxis: 'Switches'
+ 01-plot-group: 'Switch Scalability'
+ 01-plot-data-file: 'switches.csv'
+ 02-plot-title: 'Topology Discover Time'
+ 02-plot-yaxis: 'Seconds'
+ 02-plot-group: 'Switch Scalability'
+ 02-plot-data-file: 'time.csv'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[opflex]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[opflex]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[opflex]'
- archive:
artifacts: 'install-root/*.tgz'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[opflex]'
- archive:
artifacts: 'install-root/*.tgz'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[opflex]'
- archive:
artifacts: 'install-root/*.tgz'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[ovsdb]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[ovsdb]'
- jacoco-report
- opendaylight-infra-shiplogs:
artifacts: '{archive-artifacts}'
- string:
name: VERSION_MAJOR
- default: '4'
+ default: '5'
description: 'OpenDaylight major (element) version number to build'
- string:
name: VERSION_MINOR
- default: '2'
+ default: '0'
description: 'OpenDaylight minor (SR) version number to build'
- string:
name: VERSION_PATCH
description: 'RPM version for the given ODL major.minor.patch'
- string:
name: SYSD_COMMIT
- default: 'c6d7ee1f21d62ff8ffb741c7a12c3d8d3aa3d6ed'
+ default: '07f7c83b0ef46ad3809e5be03e09a77fe554eeae'
description: 'Version of ODL systemd unitfile to download and package in ODL RPM'
- string:
name: CODENAME
- default: 'Beryllium-SR2'
+ default: 'Boron'
description: 'Elemental codename for the ODL release, including SR if applicable'
- string:
name: DOWNLOAD_URL
- default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.4.2-Beryllium-SR2/distribution-karaf-0.4.2-Beryllium-SR2.tar.gz'
+ default: 'https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/distribution-karaf/0.5.0-Boron/distribution-karaf-0.5.0-Boron.tar.gz'
description: 'URL to ODL tarball artifact to repackage into RPM'
- string:
name: CHANGELOG_DATE
- default: 'Wed May 11 2016'
+ default: 'Sun Aug 25 1991'
description: 'Date this RPM was defined'
- string:
name: CHANGELOG_NAME
build-timeout: 360
build-node: centos7-java-builder-2c-8g
+ email-recipients: 'jenkins@lists.opendaylight.org'
+ odl-ml2-driver-repo: 'https://github.com/openstack/networking-odl'
+
# openstack-infra-parameters defaults
archive-artifacts: ''
branch: master
server-name: 'OpenDaylight'
trigger-on:
- patchset-created-event:
- exclude-drafts: 'false'
+ exclude-drafts: 'true'
exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
+ exclude-no-code-change: 'true'
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[releng]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
server-name: 'OpenDaylight'
trigger-on:
- patchset-created-event:
- exclude-drafts: 'false'
+ exclude-drafts: 'true'
exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
+ exclude-no-code-change: 'true'
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[releng]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[releng]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[releng]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[releng]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
build-timeout: '{build-timeout}'
triggers:
+ - timed: '00 10 1 * *'
- gerrit:
server-name: 'OpenDaylight'
trigger-on:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
timeout: 360
fail: true
+# Used only by opflex-verify-{stream} and {project-name}-verify-{stream}-{maven}-{jdks}
- trigger:
name: gerrit-trigger-patch-submitted
- triggers:
- - gerrit:
- server-name: 'OpenDaylight'
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'false'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
- - 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: '{name}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
-
-- trigger:
- name: gerrit-trigger-relevant-patch-submitted
triggers:
- gerrit:
server-name: 'OpenDaylight'
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/{branch}'
+ skip-vote:
+ successful: true
+ failed: true
+ unstable: true
+ notbuilt: true
+ # Force Jenkins always vote the values it should already have voted
+ # during the prior verify phase
+ override-votes: true
+ gerrit-build-started-verified-value: 1
+ gerrit-build-successful-verified-value: 1
+ gerrit-build-failed-verified-value: 1
+ gerrit-build-unstable-verified-value: 1
+ gerrit-build-notbuilt-verified-value: 1
+ gerrit-build-started-codereview-value: 0
+ gerrit-build-successful-codereview-value: 0
+ gerrit-build-failed-codereview-value: 0
+ gerrit-build-unstable-codereview-value: 0
+ gerrit-build-notbuilt-codereview-value: 0
- trigger:
name: gerrit-trigger-patch-sonar
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/{branch}'
+ # Force Jenkins always vote the values it should already have voted
+ # during the prior verify phase
+ override-votes: true
+ gerrit-build-started-verified-value: 1
+ gerrit-build-successful-verified-value: 1
+ gerrit-build-failed-verified-value: 1
+ gerrit-build-unstable-verified-value: 1
+ gerrit-build-notbuilt-verified-value: 1
+ gerrit-build-started-codereview-value: 0
+ gerrit-build-successful-codereview-value: 0
+ gerrit-build-failed-codereview-value: 0
+ gerrit-build-unstable-codereview-value: 0
+ gerrit-build-notbuilt-codereview-value: 0
- publisher:
name: archive-artifacts
name: email-notification
publishers:
- email-ext:
- recipients: 'jenkins@lists.opendaylight.org'
- reply-to:
+ recipients: '{email-recipients}'
+ reply-to: ''
content-type: default
subject: '{email-prefix} $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!'
body: |
mark-unstable-if-failed: True
- workspace-cleanup:
exclude:
- # autorelease-release-{stream} reqires vaiables.prop file to be preserved
- # as the downstream test jobs fails invoke without automatically
- - variables.prop
+ # Do not clean up *.jenkins-trigger files for jobs that use a
+ # properties file as input for triggering another build.
+ - '**/*.jenkins-trigger'
fail-build: false
- builder:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project-name}]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- maven-deploy:
id: ''
wrappers:
- opendaylight-infra-wrappers:
- build-timeout: '{build-timeout}'
+ # Distro-check jobs typically run within 10 - 30 minutes
+ # with 45 minutes being the occassional edge case.
+ # enforce a 60 minute limit to ensure stuck jobs get
+ # cleared up sooner.
+ build-timeout: '60'
triggers:
- gerrit:
- patchset-created-event:
exclude-drafts: 'true'
exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
+ exclude-no-code-change: 'true'
- draft-published-event
- comment-added-contains-event:
- comment-contains-value: 'test-distribution'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
+ comment-contains-value: 'redistcheck'
- comment-added-contains-event:
comment-contains-value: 'recheck'
projects:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project-name}]'
- postbuildscript:
builders:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '{email-upstream}'
- findbugs
- jacoco-report
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project-name}]'
- maven-deploy:
id: ''
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project-name}]'
- jacoco-report
- findbugs
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project-name}]'
- jacoco-report
- findbugs
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- comment-added-contains-event:
comment-contains-value: 'revalidate'
projects:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[autorelease] [{project-name}]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- findbugs
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project-name}]'
- jacoco-report
- opendaylight-infra-shiplogs:
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[releng]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[releng]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
-# Python Related
+# Generic tox-based verify action
-- job-template:
- name: '{project-name}-verify-python-{stream}'
+- tox_builder_verify: &tox_builder_verify
+ name: tox_builder_verify
- # Job template for python verify jobs
- #
- # The purpose of this job template is to run tox for projects using this
- # template.
- #
# Required Variables:
# stream: release stream (eg. boron or carbon)
# branch: git branch (eg. stable/boron or master)
logrotate:
daysToKeep: '7'
- numToKeep: '-1'
- artifactDaysToKeep: '-1'
- artifactNumToKeep: '-1'
parameters:
- opendaylight-infra-parameters:
- comment-added-contains-event:
comment-contains-value: 'recheck'
- comment-added-contains-event:
- comment-contains-value: 'reverify'
+ comment-contains-value: 'retox'
projects:
- project-compare-type: 'ANT'
project-pattern: '{project}'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
+- job-template:
+ name: '{project-name}-verify-tox-{stream}'
+
+ # Job template for verify jobs executing tox envlist
+ #
+ # The purpose of this job template is to run tox for projects using this
+ # template.
+ #
+ # Required Variables:
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
+ # toxdir: directory containing the project's tox.ini relative to
+ # the workspace. Empty works if tox.ini is at project root.
+
+ <<: *tox_builder_verify
+
+# Python (pep8) specific, project should migrate to {project-name}-verify-tox-{stream}
+
+- job-template:
+ name: '{project-name}-verify-python-{stream}'
+
+ # Job template for python verify jobs
+ #
+ # The purpose of this job template is to run tox for projects using this
+ # template.
+ #
+ # Required Variables:
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
+ # toxdir: directory containing the project's tox.ini relative to
+ # the workspace. Empty works if tox.ini is at project root.
+
+ <<: *tox_builder_verify
+
- job-template:
name: '{project-name}-merge-rtd-{stream}'
# Template for ReadTheDocs triggering
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
- comment-added-contains-event:
comment-contains-value: 'recheck'
- comment-added-contains-event:
- comment-contains-value: 'reverify'
+ comment-contains-value: 'renode'
projects:
- project-compare-type: 'ANT'
project-pattern: '{project}'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[{project}]'
- opendaylight-infra-shiplogs:
maven-version: 'mvn33'
server-name: 'OpenDaylight'
trigger-on:
- patchset-created-event:
- exclude-drafts: 'false'
+ exclude-drafts: 'true'
exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
+ exclude-no-code-change: 'true'
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
publishers:
- email-notification:
+ email-recipients: '{email-recipients}'
email-prefix: '[sfc]'
- carbon:
branch: 'master'
jre: 'openjdk8'
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
- boron:
branch: 'stable/boron'
jre: 'openjdk8'
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
- beryllium:
branch: 'stable/beryllium'
jre: 'openjdk7'
# Robot custom options
robot-options: ''
- mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
# Trigger jobs (upstream dependencies)
trigger-jobs: 'openflowjava-distribution-{stream},openflowplugin-distribution-{stream},vtn-distribution-{stream}'
- carbon:
branch: 'master'
jre: 'openjdk8'
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
- boron:
branch: 'stable/boron'
jre: 'openjdk8'
+ mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
- beryllium:
branch: 'stable/beryllium'
jre: 'openjdk7'
# Robot custom options
robot-options: ''
- mininet-image: 'ubuntu-trusty-mininet-ovs-25-2c-2g'
# Trigger jobs (upstream dependencies)
trigger-jobs: 'openflowjava-distribution-{stream},openflowplugin-distribution-{stream},vtn-distribution-{stream}'
- mitaka:
openstack-branch: 'stable/mitaka'
odl-ml2-version: 'stable/mitaka'
- - liberty:
- openstack-branch: 'stable/liberty'
- odl-ml2-version: 'stable/liberty'
+ - newton:
+ openstack-branch: 'stable/newton'
+ odl-ml2-version: 'master'
openstack-vms: 1
tenant-network-type: 'local'
- security-group-mode: 'none'
\ No newline at end of file
+ security-group-mode: 'none'