[submodule "jjb/global-jjb"]
path = jjb/global-jjb
url = https://github.com/lfit/releng-global-jjb
-[submodule "lf-ansible"]
- path = lf-ansible
- url = https://gerrit.linuxfoundation.org/infra/releng/lf-ansible.git
[submodule "packer/common-packer"]
path = packer/common-packer
url = https://gerrit.linuxfoundation.org/infra/releng/common-packer.git
IMAGE_NAME=ZZCI - CentOS 7 - autorelease - 20180125-2240
+VOLUME_SIZE=150
HARDWARE_ID=v2-standard-4
$EXTRA_MVN_OPTS
-Pintegrationtests,docs,repoBuild
-Dcheckstyle.skip=true
+ -Dkaraf.keep.unpack=true
-DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
{opendaylight-infra-mvn-opts}
java-opts:
- shell: |
mkdir -p archives/
cp *.log *.prop $_
+ for file in $(find . -name karaf.log); do
+ module="${{file%%/target/*}}"
+ module="${{module##*/}}"
+ cp "$file" "archives/${{module}}-karaf.log"
+ done
publishers:
- opendaylight-infra-notify-status
goals: |
clean validate
-Pq
+ -Dkaraf.keep.unpack=true
{opendaylight-infra-mvn-opts}
java-opts:
- '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
- shell: |
mkdir -p archives/
cp *.log $_
+ for file in $(find . -name karaf.log); do
+ module="${{file%%/target/*}}"
+ module="${{module##*/}}"
+ cp "$file" "archives/${{module}}-karaf.log"
+ done
publishers:
- email-notification:
project: docs
project-name: docs
- build-node: centos7-builder-2c-8g
- build-timeout: 30
+ build-node: centos7-builder-4c-4g
+ build-timeout: 60
rtd-project: opendaylight
-Subproject commit 90e4e825b3d0ac5959122c50e457419ad0cfe137
+Subproject commit aa205517366205dd017d0801bd0cfe104e742c1a
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 \
--v JAVA_HOME:${JAVA_HOME} -v BUNDLE_URL:${ACTUAL_BUNDLE_URL} -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} \
--v TOOLS_SYSTEM_IP:${TOOLS_SYSTEM_IP} -v TOOLS_SYSTEM_2_IP:${TOOLS_SYSTEM_2_IP} -v TOOLS_SYSTEM_3_IP:${TOOLS_SYSTEM_3_IP} \
--v TOOLS_SYSTEM_4_IP:${TOOLS_SYSTEM_4_IP} -v TOOLS_SYSTEM_5_IP:${TOOLS_SYSTEM_5_IP} -v TOOLS_SYSTEM_6_IP:${TOOLS_SYSTEM_6_IP} \
--v TOOLS_SYSTEM_USER:${USER} -v JDKVERSION:${JDKVERSION} -v ODL_STREAM:${DISTROSTREAM} -v NUM_ODL_SYSTEM:${NUM_ODL_SYSTEM} \
--v MININET:${TOOLS_SYSTEM_IP} -v MININET1:${TOOLS_SYSTEM_2_IP} -v MININET2:${TOOLS_SYSTEM_3_IP} \
--v MININET3:${TOOLS_SYSTEM_4_IP} -v MININET4:${TOOLS_SYSTEM_5_IP} -v MININET5:${TOOLS_SYSTEM_6_IP} \
--v MININET_USER:${USER} -v USER_HOME:${HOME} ${TESTOPTIONS} ${SUITES} || true
-# FIXME: Sort (at least -v) options alphabetically.
+pybot -N ${TESTPLAN} \
+ --removekeywords wuks -c critical -e exclude -e skip_if_${DISTROSTREAM} \
+ -v BUNDLEFOLDER:${BUNDLEFOLDER} \
+ -v BUNDLE_URL:${ACTUAL_BUNDLE_URL} \
+ -v CONTROLLER:${ODL_SYSTEM_IP} \
+ -v CONTROLLER_USER:${USER} \
+ -v JAVA_HOME:${JAVA_HOME} \
+ -v JDKVERSION:${JDKVERSION} \
+ -v MININET1:${TOOLS_SYSTEM_2_IP} \
+ -v MININET2:${TOOLS_SYSTEM_3_IP} \
+ -v MININET3:${TOOLS_SYSTEM_4_IP} \
+ -v MININET4:${TOOLS_SYSTEM_5_IP} \
+ -v MININET5:${TOOLS_SYSTEM_6_IP} \
+ -v MININET:${TOOLS_SYSTEM_IP} \
+ -v MININET_USER:${USER} \
+ -v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} \
+ -v NUM_ODL_SYSTEM:${NUM_ODL_SYSTEM} \
+ -v ODL_STREAM:${DISTROSTREAM} \
+ -v ODL_SYSTEM_1_IP:${ODL_SYSTEM_IP} \
+ -v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} \
+ -v ODL_SYSTEM_USER:${USER} \
+ -v TOOLS_SYSTEM_2_IP:${TOOLS_SYSTEM_2_IP} \
+ -v TOOLS_SYSTEM_3_IP:${TOOLS_SYSTEM_3_IP} \
+ -v TOOLS_SYSTEM_4_IP:${TOOLS_SYSTEM_4_IP} \
+ -v TOOLS_SYSTEM_5_IP:${TOOLS_SYSTEM_5_IP} \
+ -v TOOLS_SYSTEM_6_IP:${TOOLS_SYSTEM_6_IP} \
+ -v TOOLS_SYSTEM_IP:${TOOLS_SYSTEM_IP} \
+ -v TOOLS_SYSTEM_USER:${USER} \
+ -v USER_HOME:${HOME} \
+ -v WORKSPACE:/tmp \
+ ${TESTOPTIONS} ${SUITES} || true
echo "Examining the files in data/log and checking filesize"
ssh ${ODL_SYSTEM_IP} "ls -altr /tmp/${BUNDLEFOLDER}/data/log/"
SCREEN_LOGDIR=/opt/stack/data/log
LOG_COLOR=False
RECLONE=${RECLONE}
+# Increase the wait used by stack to poll for services
+SERVICE_TIMEOUT=120
disable_all_services
EOF
USE_SCREEN=True
SCREEN_LOGDIR=/opt/stack/data/log
RECLONE=${RECLONE}
+# Increase the wait used by stack to poll for the nova service on the control node
+NOVA_READY_TIMEOUT=1800
disable_all_services
EOF
add_os_services "${CORE_OS_COMPUTE_SERVICES}" "${ENABLE_OS_COMPUTE_SERVICES}" "${DISABLE_OS_SERVICES}" "${local_conf_file_name}"
cat >> ${local_conf_file_name} << EOF
-#Added to make Nova wait until nova in control node is ready.
-NOVA_READY_TIMEOUT=1800
HOST_IP=${HOSTIP}
SERVICE_HOST=${SERVICEHOST}
Q_ML2_TENANT_NETWORK_TYPE=${TENANT_NETWORK_TYPE}
controller-merge-{stream},
openflowjava-merge-{stream}
email-upstream: '[openflowplugin] [odlparent] [yangtools] [controller] [openflowjava]'
- archive-artifacts: 'model/*/target/site/**'
# Used by the release job
staging-profile-id: a68a76dc1b44c
controller-merge-{stream},
openflowjava-merge-{stream}
email-upstream: '[openflowplugin] [odlparent] [yangtools] [controller] [openflowjava]'
- archive-artifacts: 'model/*/target/site/**'
# Used by the release job
staging-profile-id: a68a76dc1b44c
controller-merge-{stream},
openflowjava-merge-{stream}
email-upstream: '[openflowplugin] [odlparent] [yangtools] [controller] [openflowjava]'
- archive-artifacts: 'model/*/target/site/**'
# Used by the release job
staging-profile-id: a68a76dc1b44c
controller-merge-{stream},
openflowjava-merge-{stream}
email-upstream: '[openflowplugin] [odlparent] [yangtools] [controller] [openflowjava]'
- archive-artifacts: 'model/*/target/site/**'
# Used by the release job
staging-profile-id: a68a76dc1b44c
mkdir -p "$UPLOAD_FILES_PATH"
# Note: no source packages are available, since the debs are not built
# from the actual source
- mv "$WORKSPACE/packaging/packages/deb/opendaylight/"*.deb "$_"
+ ln -s "$WORKSPACE/packaging/packages/deb/opendaylight/"*.deb "$_"
else
echo "Unknown Jenkins silo: $SILO"
exit 1
builders:
- shell: !include-raw: install-deb.sh
- shell: !include-raw: start-odl.sh
+ - shell: !include-raw-escape: test-ports-nofeature.sh
- shell: |
# Install expect to interact with Karaf shell
- sudo apt-get install -y expect
# Install nmap to check status of ODL's SSH port
- sudo apt-get install -y nmap
+ sudo apt-get install -y expect nmap
- shell: !include-raw: test-karaf-oxygensafe.expect
+ # Disable this test until ODLPARENT-139 is fixed
+ # - shell: !include-raw-escape: test-rest-ok.sh
- shell: !include-raw: stop-odl.sh
+ - shell: !include-raw: uninstall-deb.sh
publishers:
- lf-infra-publish
--- /dev/null
+#!/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 dpkg --purge opendaylight
+
+# Verify ODL not installed
+if dpkg -s 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
- project:
name: sfc-python
jobs:
- - 'sfc-verify-python-{stream}'
+ - 'gerrit-tox-verify'
stream:
- fluorine:
branch: 'stable/carbon'
project: 'sfc'
-
-- job-template:
- name: 'sfc-verify-python-{stream}'
-
- project-type: freestyle
- node: centos7-builder-2c-8g
- concurrent: true
-
- properties:
- - opendaylight-infra-properties:
- build-days-to-keep: '{build-days-to-keep}'
-
- parameters:
- - opendaylight-infra-parameters:
- os-cloud: '{os-cloud}'
- project: '{project}'
- branch: '{branch}'
- refspec: 'refs/heads/{branch}'
- artifacts: '{archive-artifacts}'
-
- scm:
- - gerrit-trigger-scm:
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - opendaylight-infra-wrappers:
- build-timeout: '{build-timeout}'
-
- triggers:
- - gerrit-trigger-patch-submitted:
- gerrit-server-name: '{gerrit-server-name}'
- project: '{project}'
- branch: '{branch}'
- files: 'sfc-py/**'
-
- builders:
- - shell: |
- virtualenv $WORKSPACE/venv-tox
- source $WORKSPACE/venv-tox/bin/activate
- PYTHON="$WORKSPACE/venv-tox/bin/python"
- $PYTHON -m pip install tox argparse
- tox --version
- cd $WORKSPACE/sfc-py
- tox
- ./jenkins_build_package.sh
-
- publishers:
- - email-notification:
- email-recipients: '{email-recipients}'
- email-prefix: '[sfc]'
+ project-name: 'sfc'
+ tox-dir: sfc-py
+++ /dev/null
-Subproject commit 45fe40b674c0f2d2cfed080848ddeb2775b7d402
-Subproject commit 4332818a2ae9fc366bace64f459f4e44d1f8a86e
+Subproject commit e3344fc74b1fc3e40cf8f4f7e713047373d9b177