jjb/**/*.sh,
scripts/**/*.sh
ignore = jenkins-scripts/*-local-env.sh,
- jjb/integration/*.sh
+ jjb/integration/include-raw-integration-compare-distributions.sh,
+ jjb/integration/include-raw-integration-configure-clustering.sh,
+ jjb/integration/include-raw-integration-deploy-controller-offline.sh,
+ jjb/integration/include-raw-integration-deploy-controller-run-test.sh,
+ jjb/integration/include-raw-integration-deploy-controller-verify.sh,
+ jjb/integration/include-raw-integration-deploy-openstack-run-test.sh,
+ jjb/integration/include-raw-integration-distribution-check.sh,
+ jjb/integration/include-raw-integration-get-bundle-url-root.sh,
+ jjb/integration/include-raw-integration-get-bundle-url.sh,
+ jjb/integration/include-raw-integration-get-bundle-vars.sh,
+ jjb/integration/include-raw-integration-get-slave-addresses.sh,
+ jjb/integration/include-raw-integration-list-jobs.sh,
+ jjb/integration/include-raw-integration-multipatch-distribution-test.sh,
+ jjb/integration/include-raw-integration-replace-block-text.sh,
+ jjb/integration/include-raw-integration-start-cluster-run-test.sh,
+ jjb/integration/include-raw-integration-replace-block-text.sh,
+ jjb/integration/include-raw-integration-start-cluster-run-test.sh
shell = bash
indent_size = 4
use_spaces = yeah
* CentOS 7 - java-builder - 20170311-0517
* CentOS 7 - robot - 20170117-0004
* CentOS 7 - robot - 20170210-1803
+* CentOS 7 - robot - 20170328-0206
* Fedora 23 (20151030 cloud)
* Ubuntu 14.04 - devstack - 20170117-0004
* Ubuntu 14.04 - docker - 20170117-0003
- maven-exec:
maven-version: 'mvn33'
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
- maven-exec:
maven-version: 'mvn33'
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
jobs:
- 'docs-merge-rtd-{stream}'
- 'docs-verify-rtd-{stream}'
+ - '{project-name}-verify-tox-{stream}'
stream:
- carbon:
- beryllium:
branch: 'stable/beryllium'
- project: 'docs'
- rtdproject: 'opendaylight'
+ project: docs
+ project-name: docs
+ rtdproject: opendaylight
archive-artifacts: 'docs/_build/html/**'
- job-template:
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
if [ -d "$WORKSPACE/.venv-openstack" ]; then
# shellcheck disable=SC1090
source "$WORKSPACE/.venv-openstack/bin/activate"
- OS_STATUS=$(openstack --os-cloud rackspace stack show -f json -c stack_status "$STACK_NAME" | jq -r '.stack_status')
+ OS_STATUS=$(openstack stack show -f json -c stack_status "$STACK_NAME" | jq -r '.stack_status')
if [ "$OS_STATUS" == "CREATE_COMPLETE" ] || [ "$OS_STATUS" == "CREATE_FAILED" ]; then
echo "Deleting $STACK_NAME"
- openstack --os-cloud rackspace stack delete --yes "$STACK_NAME"
+ openstack stack delete --yes "$STACK_NAME"
fi
fi
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
OPENSTACK_SYSTEM=()
source $WORKSPACE/.venv-openstack/bin/activate
-ADDR=(`openstack --os-cloud rackspace stack show -f json -c outputs $STACK_NAME | \
+ADDR=(`openstack stack show -f json -c outputs $STACK_NAME | \
jq -r '.outputs[] | \
select(.output_key | match("^vm_[0-9]+_ips$")) | \
.output_value | .[]'`)
# http://www.eclipse.org/legal/epl-v10.html
##############################################################################
-ROBOT_VENV=`mktemp -d --suffix=robot_venv`
-echo ROBOT_VENV=${ROBOT_VENV} >> ${WORKSPACE}/env.properties
+ROBOT_VENV=$(mktemp -d --suffix=robot_venv)
+echo ROBOT_VENV="${ROBOT_VENV}" >> "${WORKSPACE}/env.properties"
# The --system-site-packages parameter allows us to pick up system level
# installed packages. This allows us to bake matplotlib which takes very long
# to install into the image.
-virtualenv --system-site-packages ${ROBOT_VENV}
-source ${ROBOT_VENV}/bin/activate
+virtualenv --system-site-packages "${ROBOT_VENV}"
+# shellcheck disable=SC1090
+source "${ROBOT_VENV}/bin/activate"
set -exu
pip install --upgrade pip
pip install --upgrade docker-py importlib requests scapy netifaces netaddr ipaddr pyhocon
-pip install --upgrade robotframework{,-{httplibrary,requests,sshlibrary,selenium2library}}
-pip install --upgrade robotframework-pycurllibrary
+pip install --upgrade robotframework-httplibrary \
+ robotframework-requests \
+ robotframework-sshlibrary \
+ robotframework-selenium2library \
+ robotframework-pycurllibrary
# Module jsonpath is needed by current AAA idmlite suite.
pip install --upgrade jsonpath-rw
+#!/bin/bash
# Make sure changes merged after patch creation are applied.
set -exu
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/test'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: '$GERRIT_REFSPEC'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{test-branch}'
refspec: 'refs/heads/{test-branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '$GERRIT_PROJECT'
branch: '{branch}'
refspec: '$GERRIT_REFSPEC'
- integration-distribution-branch:
branch: '{branch}'
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: 'integration/distribution'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
#########################
# Fetch stack list before fetching active builds to minimize race condition
# where we might be try to delete stacks while jobs are trying to start
-OS_STACKS=($(openstack --os-cloud rackspace stack list \
+OS_STACKS=($(openstack stack list \
-f json -c "Stack Name" -c "Stack Status" \
--property "stack_status=CREATE_COMPLETE" \
--property "stack_status=DELETE_FAILED" \
continue
else
echo "Deleting orphaned stack: $stack"
- openstack --os-cloud rackspace stack delete --yes "$stack"
+ openstack stack delete --yes "$stack"
fi
done
# Print the Stack outputs parameters so that we can identify which IPs belong
# to which VM types.
-openstack --os-cloud rackspace stack show -c outputs "$STACK_NAME"
+openstack stack show -c outputs "$STACK_NAME"
# shellcheck disable=SC2006
-ADDR=(`openstack --os-cloud rackspace stack show -f json -c outputs "$STACK_NAME" | \
+ADDR=(`openstack stack show -f json -c outputs "$STACK_NAME" | \
jq -r '.outputs[] | \
select(.output_key | match("^vm_[0-9]+_ips\$")) | \
.output_value | .[]'`)
STACK_SUCCESSFUL=false
# seq X refers to waiting for X minutes for OpenStack to return
# a status that is not CREATE_IN_PROGRESS before giving up.
-openstack --os-cloud rackspace limits show --absolute
-openstack --os-cloud rackspace limits show --rate
+openstack limits show --absolute
+openstack limits show --rate
echo "Trying up to $STACK_RETRIES times to create $STACK_NAME."
for try in $(seq $STACK_RETRIES); do
# shellcheck disable=SC1083
- openstack --os-cloud rackspace stack create --timeout "$OS_TIMEOUT" -t {stack-template} -e "$WORKSPACE/opendaylight-infra-environment.yaml" --parameter "job_name=$VM_NAME" --parameter "silo=$SILO" "$STACK_NAME"
- openstack --os-cloud rackspace stack list
+ openstack stack create --timeout "$OS_TIMEOUT" -t {stack-template} -e "$WORKSPACE/opendaylight-infra-environment.yaml" --parameter "job_name=$VM_NAME" --parameter "silo=$SILO" "$STACK_NAME"
+ openstack stack list
echo "$try: Waiting for $OS_TIMEOUT minutes to create $STACK_NAME."
for i in $(seq $OS_TIMEOUT); do
sleep 60
- OS_STATUS=$(openstack --os-cloud rackspace stack show -f json -c stack_status "$STACK_NAME" | jq -r '.stack_status')
+ OS_STATUS=$(openstack stack show -f json -c stack_status "$STACK_NAME" | jq -r '.stack_status')
echo "$i: $OS_STATUS"
case "$OS_STATUS" in
;;
CREATE_FAILED)
echo "ERROR: Failed to initialize infrastructure. Deleting stack and possibly retrying to create..."
- openstack --os-cloud rackspace stack list
- openstack --os-cloud rackspace stack delete --yes "$STACK_NAME"
- openstack --os-cloud rackspace stack show "$STACK_NAME"
+ openstack stack list
+ openstack stack delete --yes "$STACK_NAME"
+ openstack stack show "$STACK_NAME"
# after stack delete, poll for 10m to know when stack is fully removed
# the logic here is that when "stack show $STACK_NAME" does not contain $STACK_NAME
# we assume it's successfully deleted and we can break to retry
for j in $(seq 20); do
sleep 30;
- STACK_SHOW=$(openstack --os-cloud rackspace stack show "$STACK_NAME")
+ STACK_SHOW=$(openstack stack show "$STACK_NAME")
echo "$j: $STACK_SHOW"
if [[ $STACK_SHOW == *"DELETE_FAILED"* ]]; then
echo "stack delete failed. trying to stack abandon now"
- openstack --os-cloud rackspace stack abandon "$STACK_NAME"
- STACK_SHOW=$(openstack --os-cloud rackspace stack show "$STACK_NAME")
+ openstack stack abandon "$STACK_NAME"
+ STACK_SHOW=$(openstack stack show "$STACK_NAME")
echo "$STACK_SHOW"
fi
if [[ $STACK_SHOW != *"$STACK_NAME"* ]]; then
done
# capture stack info in console logs
-openstack --os-cloud rackspace stack show "$STACK_NAME"
+openstack stack show "$STACK_NAME"
if ! $STACK_SUCCESSFUL; then
exit 1
# Blank line before EOF is on purpose to ensure there is spacing.
IFS=$'\n'
-IMAGES=($(openstack --os-cloud odlpriv image list --public -f value -c Name))
+IMAGES=($(openstack image list --public -f value -c Name))
for i in "${IMAGES[@]}"; do
echo "* $i" >> "$WORKSPACE/docs/cloud-images.rst"
done
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
archive-artifacts: ''
branch: master
distribution_branch: '$GERRIT_BRANCH'
+ os-cloud: rackspace
# Distribution bundle URL
bundleurl: 'last'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: odlpriv
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
name: STACK_NAME
default: '$JOB_NAME-$BUILD_NUMBER'
description: "Used by Heat to generate a unique stack & vm name"
+ - string:
+ name: OS_CLOUD
+ default: '{os-cloud}'
+ description: |
+ The name of a cloud configuration in clouds.yaml.
+ https://docs.openstack.org/developer/python-openstackclient/
- parameter:
name: build-tag
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
- 'origin/$GERRIT_BRANCH'
skip-tag: true
choosing-strategy: 'gerrit'
+ submodule:
+ recursive: true
wrappers:
- opendaylight-infra-wrappers:
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
parameters:
- opendaylight-infra-parameters:
+ os-cloud: '{os-cloud}'
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'