summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--INFO31
-rw-r--r--docs/infra/jenkins/jjb-usage.rst6
-rw-r--r--jjb-sandbox/releng/releng-sandbox-jobs.yml61
-rwxr-xr-xjjb-sandbox/releng/verify-sandbox-jobs.sh21
-rwxr-xr-xjjb/apex/apex-deploy.sh10
-rw-r--r--jjb/apex/apex-snapshot-create.sh12
-rwxr-xr-xjjb/apex/apex-upload-artifact.sh11
-rw-r--r--jjb/apex/apex-verify-jobs.yaml22
-rw-r--r--jjb/apex/apex.yaml79
-rw-r--r--jjb/apex/apex.yaml.j239
-rw-r--r--jjb/apex/scenarios.yaml.hidden4
-rw-r--r--jjb/armband/armband-ci-jobs.yaml3
-rw-r--r--jjb/auto/auto.yaml5
-rw-r--r--jjb/compass4nfv/compass-ci-jobs.yaml12
-rw-r--r--jjb/doctor/doctor.yaml4
-rwxr-xr-xjjb/dovetail/dovetail-run.sh39
-rwxr-xr-xjjb/functest/functest-alpine.sh46
-rw-r--r--jjb/functest/functest-daily-jobs.yaml29
-rw-r--r--jjb/functest/functest-docker.yaml21
-rw-r--r--jjb/releng/compass4nfv-docker.yaml1
-rw-r--r--jjb/releng/opnfv-docker.yaml30
-rw-r--r--jjb/releng/opnfv-repo-archiver.sh2
-rw-r--r--jjb/releng/releng-ci-jobs.yaml4
-rw-r--r--jjb/xci/xci-verify-jobs.yaml2
-rw-r--r--jjb/yardstick/yardstick-daily-jobs.yaml2
-rw-r--r--tox.ini4
-rw-r--r--utils/build-server-ansible/vars/CentOS.yml1
-rw-r--r--utils/build-server-ansible/vars/Ubuntu.yml1
-rwxr-xr-xutils/fetch_os_creds.sh8
-rwxr-xr-xutils/gpg_import_key.sh14
-rw-r--r--utils/push-test-logs.sh10
31 files changed, 290 insertions, 244 deletions
diff --git a/INFO b/INFO
deleted file mode 100644
index d9051abdc..000000000
--- a/INFO
+++ /dev/null
@@ -1,31 +0,0 @@
-Project: Release Engineering (Releng)
-Project Creation Date: July 14, 2015
-Project Category: Integration & Testing
-Lifecycle State: Incubation
-Primary Contact: Fatih Degirmenci
-Project Lead: Fatih Degirmenci
-Jira Project Name: Release Engineering
-Jira Project Prefix: RELENG
-Mailing list tag: [releng]
-IRC: Server:freenode.net Channel:#opnfv-octopus
-Repository: releng
-Other Repositories: releng-xci, releng-testresults
-
-Committers:
-Fatih Degirmenci (Ericsson, fatih.degirmenci@ericsson.com)
-Aric Gardner (Linux Foundation, agardner@linuxfoundation.org)
-Tim Rozet (Red Hat, trozet@redhat.com)
-Morgan Richomme (Orange, morgan.richomme@orange.com)
-Jose Lausuch (Ericsson, jose.lausuch@ericsson.com)
-Ryota Mibu (NEC, r-mibu@cq.jp.nec.com)
-Mei Mei (Huawei, meimei@huawei.com)
-Trevor Bramwell (Linux Foundation, tbramwell@linuxfoundation.org)
-Serena Feng (ZTE, feng.xiaowei@zte.com.cn)
-Yolanda Robla Mota (Red Hat, yroblamo@redhat.com)
-Markos Chandras (SUSE, mchandras@suse.de)
-Luke Hinds (Red Hat, lhinds@redhat.com)
-
-Link to TSC approval of the project: http://ircbot.wl.linuxfoundation.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-07-14-14.00.html
-Link to TSC voting for removal of Victor Laza as committer: http://meetbot.opnfv.org/meetings/opnfv-meeting/2016/opnfv-meeting.2016-02-16-14.59.html
-Link to nomination and acceptance of Mei Mei as committer: http://lists.opnfv.org/pipermail/opnfv-tsc/2016-March/002228.html
-Links to nomination and accceptance of Trevor Bramwell as committer: http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011659.html and http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011714.html
diff --git a/docs/infra/jenkins/jjb-usage.rst b/docs/infra/jenkins/jjb-usage.rst
index 671278121..d467dbe8a 100644
--- a/docs/infra/jenkins/jjb-usage.rst
+++ b/docs/infra/jenkins/jjb-usage.rst
@@ -10,7 +10,7 @@ Creating/Configuring/Verifying Jenkins Jobs
Clone and setup the repo::
- git clone ssh://YOU@gerrit.opnfv.org:29418/releng
+ git clone --recursive ssh://YOU@gerrit.opnfv.org:29418/releng
cd releng
git review -s
@@ -29,13 +29,13 @@ Make changes::
Test with tox::
- tox -v -ejjb
+ tox -e jjb
.. note:: You can also test the jobs under a single jjb directory by
specifying the directory. For example to test only the releng jobs, you
could run:
- tox -v -e jjb -- jjb/releng
+ tox -e jjb -- jjb/global:jjb/global-jjb:jjb/releng
Submit the change to gerrit::
diff --git a/jjb-sandbox/releng/releng-sandbox-jobs.yml b/jjb-sandbox/releng/releng-sandbox-jobs.yml
deleted file mode 100644
index df8b1d56a..000000000
--- a/jjb-sandbox/releng/releng-sandbox-jobs.yml
+++ /dev/null
@@ -1,61 +0,0 @@
----
-- project:
- name: 'releng-sandbox-jobs'
- jobs:
- - 'releng-deploy-sandbox'
-
- project: 'releng'
- node: 'releng-sandbox'
-
-- job-template:
- name: 'releng-deploy-sandbox'
- node: '{node}'
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: 'master'
- scm:
- - git-scm-gerrit
-
- triggers:
- - gerrit:
- 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: 'redeploy'
- custom-url: '$BUILD_URL deploying to $JENKINS_URL'
- silent-start: true
- skip-vote:
- successful: true
- failed: true
- unstable: true
- notbuilt: true
- projects:
- - project-compare-type: 'ANT'
- project-pattern: 'releng'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/master'
- file-paths:
- - compare-type: ANT
- pattern: jjb-sandbox/**
-
- wrappers: ''
-
- builders:
- - shell:
- !include-raw-escape: verify-sandbox-jobs.sh
- # yamllint disable rule:line-length
- - shell: |
- #!/bin/bash
- jenkins-jobs update --delete-old -r jjb/releng-defaults.yaml:jjb/releng-macros.yaml:jjb/opnfv/installer-params.yml:jjb/opnfv/slave-params.yml:jjb-sandbox
- # yamllint enable
- publishers:
- - archive-artifacts:
- artifacts: 'job_output/*'
- - email-jenkins-admins-on-failure
diff --git a/jjb-sandbox/releng/verify-sandbox-jobs.sh b/jjb-sandbox/releng/verify-sandbox-jobs.sh
deleted file mode 100755
index 599016106..000000000
--- a/jjb-sandbox/releng/verify-sandbox-jobs.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-# SPDX-license-identifier: Apache-2.0
-##############################################################################
-# Copyright (c) 2016 Linux Foundation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-#test for non-ascii characters, these can pass the test and end up breaking things in production
-for x in $(find . -name *\.yml); do
-
- if LC_ALL=C grep -q '[^[:print:][:space:]]' "$x"; then
- echo "file "$x" contains non-ascii characters"
- exit 1
- fi
-
-done
-
-jenkins-jobs test -r jjb/releng-defaults.yaml:jjb/releng-macros.yaml:jjb/opnfv/installer-params.yml:jjb/opnfv/slave-params.yml:jjb-sandbox \
- -o job_output
diff --git a/jjb/apex/apex-deploy.sh b/jjb/apex/apex-deploy.sh
index dfaf2a8b5..f5c6ab108 100755
--- a/jjb/apex/apex-deploy.sh
+++ b/jjb/apex/apex-deploy.sh
@@ -156,16 +156,6 @@ fi
# start deployment
sudo ${DEPLOY_CMD} -d ${DEPLOY_FILE} -n ${NETWORK_FILE} --debug
-if [[ "$PROMOTE" == 'True' ]]; then
- echo "CSIT job: setting host route for floating ip routing"
- # csit route to allow docker container to reach floating ips
- UNDERCLOUD=$(sudo virsh domifaddr undercloud | grep -Eo "[0-9\.]+{3}[0-9]+")
- if sudo route | grep 192.168.37.128 > /dev/null; then
- sudo route del -net 192.168.37.128 netmask 255.255.255.128
- fi
- sudo route add -net 192.168.37.128 netmask 255.255.255.128 gw ${UNDERCLOUD}
-fi
-
echo
echo "--------------------------------------------------------"
echo "Done!"
diff --git a/jjb/apex/apex-snapshot-create.sh b/jjb/apex/apex-snapshot-create.sh
index 7e38d56b4..b73931470 100644
--- a/jjb/apex/apex-snapshot-create.sh
+++ b/jjb/apex/apex-snapshot-create.sh
@@ -91,10 +91,16 @@ echo "Snapshot saved as apex-${SNAP_TYPE}-snap-${DATE}.tar.gz"
# update opnfv properties file
if [ "$SNAP_TYPE" == 'csit' ]; then
- curl -O -L http://$GS_URL/snapshot.properties
- sed -i '/^OPNFV_SNAP_URL=/{h;s#=.*#='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#};${x;/^$/{s##OPNFV_SNAP_URL='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#;H};x}' snapshot.properties
snap_sha=$(sha512sum apex-csit-snap-${DATE}.tar.gz | cut -d' ' -f1)
- sed -i '/^OPNFV_SNAP_SHA512SUM=/{h;s/=.*/='${snap_sha}'/};${x;/^$/{s//OPNFV_SNAP_SHA512SUM='${snap_sha}'/;H};x}' snapshot.properties
+ if curl --fail -O -L http://$GS_URL/snapshot.properties; then
+ sed -i '/^OPNFV_SNAP_URL=/{h;s#=.*#='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#};${x;/^$/{s##OPNFV_SNAP_URL='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#;H};x}' snapshot.properties
+ sed -i '/^OPNFV_SNAP_SHA512SUM=/{h;s/=.*/='${snap_sha}'/};${x;/^$/{s//OPNFV_SNAP_SHA512SUM='${snap_sha}'/;H};x}' snapshot.properties
+ else
+ cat << EOF > snapshot.properties
+OPNFV_SNAP_URL=${GS_URL}/apex-csit-snap-${DATE}.tar.gz
+OPNFV_SNAP_SHA512SUM=${snap_sha}
+EOF
+ fi
echo "OPNFV_SNAP_URL=$GS_URL/apex-csit-snap-${DATE}.tar.gz"
echo "OPNFV_SNAP_SHA512SUM=$(sha512sum apex-csit-snap-${DATE}.tar.gz | cut -d' ' -f1)"
echo "Updated properties file: "
diff --git a/jjb/apex/apex-upload-artifact.sh b/jjb/apex/apex-upload-artifact.sh
index 8743368fb..5c777a824 100755
--- a/jjb/apex/apex-upload-artifact.sh
+++ b/jjb/apex/apex-upload-artifact.sh
@@ -24,7 +24,9 @@ importkey () {
git clone https://gerrit.opnfv.org/gerrit/releng $WORKSPACE/releng/ &> /dev/null
#this is where we import the siging key
if [ -f $WORKSPACE/releng/utils/gpg_import_key.sh ]; then
- source $WORKSPACE/releng/utils/gpg_import_key.sh
+ if ! $WORKSPACE/releng/utils/gpg_import_key.sh; then
+ echo "WARNING: Failed to run gpg key import"
+ fi
fi
}
@@ -75,13 +77,16 @@ uploadrpm () {
uploadsnap () {
# Uploads snapshot artifact and updated properties file
echo "Uploading snapshot artifacts"
+ # snapshot dir is the same node in the create job workspace
+ # only 1 promotion job can run at a time on a slave
+ snapshot_dir="${WORKSPACE}/../apex-create-snapshot"
if [ -z "$SNAP_TYPE" ]; then
echo "ERROR: SNAP_TYPE not provided...exiting"
exit 1
fi
- gsutil cp $WORKSPACE/apex-${SNAP_TYPE}-snap-`date +%Y-%m-%d`.tar.gz gs://$GS_URL/ > gsutil.iso.log
+ gsutil cp ${snapshot_dir}/apex-${SNAP_TYPE}-snap-`date +%Y-%m-%d`.tar.gz gs://$GS_URL/ > gsutil.iso.log
if [ "$SNAP_TYPE" == 'csit' ]; then
- gsutil cp $WORKSPACE/snapshot.properties gs://$GS_URL/snapshot.properties > gsutil.latest.log
+ gsutil cp ${snapshot_dir}/snapshot.properties gs://$GS_URL/snapshot.properties > gsutil.latest.log
fi
echo "Upload complete for Snapshot"
}
diff --git a/jjb/apex/apex-verify-jobs.yaml b/jjb/apex/apex-verify-jobs.yaml
index 8140d9ef5..0837a76e4 100644
--- a/jjb/apex/apex-verify-jobs.yaml
+++ b/jjb/apex/apex-verify-jobs.yaml
@@ -10,12 +10,12 @@
- master: &master
branch: '{stream}'
gs-pathname: ''
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
disabled: false
- fraser: &fraser
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
disabled: false
- danube: &danube
branch: 'stable/{stream}'
@@ -243,8 +243,8 @@
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- FUNCTEST_SUITE_NAME=healthcheck
- FUNCTEST_MODE=tier
+ FUNCTEST_SUITE_NAME=tempest_smoke_serial
+ FUNCTEST_MODE=testcase
node-parameters: false
kill-phase-on: FAILURE
abort-all-job: true
@@ -343,6 +343,14 @@
kill-phase-on: FAILURE
abort-all-job: true
git-revision: true
+ - shell: |
+ if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then
+ echo 'REPO=opnfv' > functest_repo
+ else
+ echo 'REPO=ollivier' > functest_repo
+ fi
+ - inject:
+ properties-file: functest_repo
- multijob:
name: functest-smoke
condition: ALWAYS
@@ -351,14 +359,16 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_MODE=tier
- FUNCTEST_TIER=healthcheck
+ FUNCTEST_SUITE_NAME=tempest_smoke_serial
+ FUNCTEST_MODE=testcase
+ REPO=$REPO
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
node-parameters: true
kill-phase-on: NEVER
+ enable-condition: "def m = '$DEPLOY_SCENARIO' != k8s-nosdn-nofeature-noha"
abort-all-job: true
git-revision: false
- multijob:
diff --git a/jjb/apex/apex.yaml b/jjb/apex/apex.yaml
index bb5b53d6d..65e558820 100644
--- a/jjb/apex/apex.yaml
+++ b/jjb/apex/apex.yaml
@@ -8,7 +8,7 @@
- 'apex-virtual-{stream}'
- 'apex-deploy-{platform}-{stream}'
- 'apex-daily-{stream}'
- - 'apex-csit-promote-daily-{stream}-{os_version}'
+ - 'apex-csit-promote-daily-{stream}-os-{os_version}'
- 'apex-fdio-promote-daily-{stream}'
- 'apex-{scenario}-baremetal-{scenario_stream}'
- 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
@@ -144,10 +144,18 @@
<<: *danube
- 'os-ovn-nofeature-noha':
<<: *danube
+ - 'os-nosdn-nofeature-noha':
+ <<: *master
+ - 'os-nosdn-nofeature-ha':
+ <<: *master
- 'os-odl-nofeature-noha':
<<: *master
- 'os-odl-nofeature-ha':
<<: *master
+ - 'os-nosdn-queens-noha':
+ <<: *master
+ - 'os-nosdn-queens-ha':
+ <<: *master
- 'os-odl-queens-noha':
<<: *master
- 'os-odl-queens-ha':
@@ -420,6 +428,14 @@
kill-phase-on: FAILURE
abort-all-job: true
git-revision: true
+ - shell: |
+ if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then
+ echo 'REPO=opnfv' > functest_repo
+ else
+ echo 'REPO=ollivier' > functest_repo
+ fi
+ - inject:
+ properties-file: functest_repo
- multijob:
name: functest-smoke
condition: ALWAYS
@@ -430,6 +446,7 @@
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
FUNCTEST_MODE=$FUNCTEST_MODE
FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
+ REPO=$REPO
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
@@ -623,8 +640,7 @@
predefined-parameters:
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
kill-phase-on: NEVER
- enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/
- && $BUILD_NUMBER % 2 == 1"
+ enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/"
abort-all-job: false
git-revision: false
- multijob:
@@ -637,8 +653,7 @@
predefined-parameters:
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
kill-phase-on: NEVER
- enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/
- && $BUILD_NUMBER % 2 == 0"
+ enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/"
abort-all-job: false
git-revision: false
- multijob:
@@ -737,13 +752,11 @@
- job-template:
name: 'apex-create-snapshot'
- # Job template for clean
- #
- # Required Variables:
- # stream: branch with - in place of / (eg. stable)
-
disabled: false
+ parameters:
+ - '{project}-defaults'
+
builders:
- shell:
!include-raw-escape: ./apex-snapshot-create.sh
@@ -752,13 +765,11 @@
- job-template:
name: 'apex-upload-snapshot'
- # Job template for clean
- #
- # Required Variables:
- # stream: branch with - in place of / (eg. stable)
-
disabled: false
+ parameters:
+ - '{project}-defaults'
+
builders:
- inject:
properties-content: ARTIFACT_TYPE=snapshot
@@ -766,7 +777,7 @@
# CSIT promote
- job-template:
- name: 'apex-csit-promote-daily-{stream}-{os_version}'
+ name: 'apex-csit-promote-daily-{stream}-os-{os_version}'
# Job template for promoting CSIT Snapshots
#
@@ -832,7 +843,7 @@
condition: SUCCESSFUL
projects:
- name: 'apex-create-snapshot'
- current-parameters: false
+ current-parameters: true
predefined-parameters: |
SNAP_TYPE=csit
node-parameters: true
@@ -844,7 +855,7 @@
condition: SUCCESSFUL
projects:
- name: 'apex-upload-snapshot'
- current-parameters: false
+ current-parameters: true
predefined-parameters: |
SNAP_TYPE=csit
node-parameters: true
@@ -1493,6 +1504,22 @@
name: Baremetal Deploy and Test Phase
condition: SUCCESSFUL
projects:
+ - name: 'apex-os-nosdn-nofeature-noha-baremetal-master'
+ node-parameters: false
+ current-parameters: false
+ predefined-parameters: |
+ OPNFV_CLEAN=yes
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
+ - name: 'apex-os-nosdn-nofeature-ha-baremetal-master'
+ node-parameters: false
+ current-parameters: false
+ predefined-parameters: |
+ OPNFV_CLEAN=yes
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
- name: 'apex-os-odl-nofeature-noha-baremetal-master'
node-parameters: false
current-parameters: false
@@ -1509,6 +1536,22 @@
kill-phase-on: NEVER
abort-all-job: true
git-revision: false
+ - name: 'apex-os-nosdn-queens-noha-baremetal-master'
+ node-parameters: false
+ current-parameters: false
+ predefined-parameters: |
+ OPNFV_CLEAN=yes
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
+ - name: 'apex-os-nosdn-queens-ha-baremetal-master'
+ node-parameters: false
+ current-parameters: false
+ predefined-parameters: |
+ OPNFV_CLEAN=yes
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
- name: 'apex-os-odl-queens-noha-baremetal-master'
node-parameters: false
current-parameters: false
diff --git a/jjb/apex/apex.yaml.j2 b/jjb/apex/apex.yaml.j2
index 3397f1ed2..f1208d27e 100644
--- a/jjb/apex/apex.yaml.j2
+++ b/jjb/apex/apex.yaml.j2
@@ -8,7 +8,7 @@
- 'apex-virtual-{stream}'
- 'apex-deploy-{platform}-{stream}'
- 'apex-daily-{stream}'
- - 'apex-csit-promote-daily-{stream}-{os_version}'
+ - 'apex-csit-promote-daily-{stream}-os-{os_version}'
- 'apex-fdio-promote-daily-{stream}'
- 'apex-{scenario}-baremetal-{scenario_stream}'
- 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
@@ -300,6 +300,14 @@
kill-phase-on: FAILURE
abort-all-job: true
git-revision: true
+ - shell: |
+ if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then
+ echo 'REPO=opnfv' > functest_repo
+ else
+ echo 'REPO=ollivier' > functest_repo
+ fi
+ - inject:
+ properties-file: functest_repo
- multijob:
name: functest-smoke
condition: ALWAYS
@@ -310,6 +318,7 @@
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
FUNCTEST_MODE=$FUNCTEST_MODE
FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
+ REPO=$REPO
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
@@ -503,8 +512,7 @@
predefined-parameters:
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
kill-phase-on: NEVER
- enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/
- && $BUILD_NUMBER % 2 == 1"
+ enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/"
abort-all-job: false
git-revision: false
- multijob:
@@ -517,8 +525,7 @@
predefined-parameters:
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
kill-phase-on: NEVER
- enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/
- && $BUILD_NUMBER % 2 == 0"
+ enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/"
abort-all-job: false
git-revision: false
- multijob:
@@ -617,13 +624,11 @@
- job-template:
name: 'apex-create-snapshot'
- # Job template for clean
- #
- # Required Variables:
- # stream: branch with - in place of / (eg. stable)
-
disabled: false
+ parameters:
+ - '{project}-defaults'
+
builders:
- shell:
!include-raw-escape: ./apex-snapshot-create.sh
@@ -632,13 +637,11 @@
- job-template:
name: 'apex-upload-snapshot'
- # Job template for clean
- #
- # Required Variables:
- # stream: branch with - in place of / (eg. stable)
-
disabled: false
+ parameters:
+ - '{project}-defaults'
+
builders:
- inject:
properties-content: ARTIFACT_TYPE=snapshot
@@ -646,7 +649,7 @@
# CSIT promote
- job-template:
- name: 'apex-csit-promote-daily-{stream}-{os_version}'
+ name: 'apex-csit-promote-daily-{stream}-os-{os_version}'
# Job template for promoting CSIT Snapshots
#
@@ -712,7 +715,7 @@
condition: SUCCESSFUL
projects:
- name: 'apex-create-snapshot'
- current-parameters: false
+ current-parameters: true
predefined-parameters: |
SNAP_TYPE=csit
node-parameters: true
@@ -724,7 +727,7 @@
condition: SUCCESSFUL
projects:
- name: 'apex-upload-snapshot'
- current-parameters: false
+ current-parameters: true
predefined-parameters: |
SNAP_TYPE=csit
node-parameters: true
diff --git a/jjb/apex/scenarios.yaml.hidden b/jjb/apex/scenarios.yaml.hidden
index 8375f6163..71a6c3dbe 100644
--- a/jjb/apex/scenarios.yaml.hidden
+++ b/jjb/apex/scenarios.yaml.hidden
@@ -1,6 +1,10 @@
master:
+ - 'os-nosdn-nofeature-noha'
+ - 'os-nosdn-nofeature-ha'
- 'os-odl-nofeature-noha'
- 'os-odl-nofeature-ha'
+ - 'os-nosdn-queens-noha'
+ - 'os-nosdn-queens-ha'
- 'os-odl-queens-noha'
- 'os-odl-queens-ha'
fraser:
diff --git a/jjb/armband/armband-ci-jobs.yaml b/jjb/armband/armband-ci-jobs.yaml
index fe2bbcc63..140f84b03 100644
--- a/jjb/armband/armband-ci-jobs.yaml
+++ b/jjb/armband/armband-ci-jobs.yaml
@@ -252,6 +252,9 @@
- string:
name: DEPLOY_SCENARIO
default: 'os-odl-nofeature-ha'
+ - string:
+ name: PROJECT
+ default: '{project}'
scm:
- git-scm
diff --git a/jjb/auto/auto.yaml b/jjb/auto/auto.yaml
index a454fc4e8..0cfe88f93 100644
--- a/jjb/auto/auto.yaml
+++ b/jjb/auto/auto.yaml
@@ -101,8 +101,9 @@
- trigger-builds:
- project: '{installer}-deploy-{pod}-daily-{stream}'
current-parameters: false
- predefined-parameters:
- DEPLOY_SCENARIO='os-nosdn-nofeature-ha'
+ predefined-parameters: |
+ DEPLOY_SCENARIO=os-nosdn-nofeature-ha
+ PROJECT=armband
same-node: true
block: true
diff --git a/jjb/compass4nfv/compass-ci-jobs.yaml b/jjb/compass4nfv/compass-ci-jobs.yaml
index 8eeaabfaa..298173e85 100644
--- a/jjb/compass4nfv/compass-ci-jobs.yaml
+++ b/jjb/compass4nfv/compass-ci-jobs.yaml
@@ -222,12 +222,6 @@
- condition-kind: regex-match
regex: os-(nosdn|odl_l3)-nofeature-ha
label: '{scenario}'
- - condition-kind: day-of-week
- day-selector: select-days
- days:
- MON: true
- TUES: true
- use-build-time: true
steps:
- trigger-builds:
- project: 'dovetail-compass-{pod}-default-{stream}'
@@ -247,12 +241,6 @@
- condition-kind: regex-match
regex: os-(nosdn|odl_l3)-nofeature-ha
label: '{scenario}'
- - condition-kind: day-of-week
- day-selector: select-days
- days:
- THURS: true
- FRI: true
- use-build-time: true
steps:
- trigger-builds:
- project: 'dovetail-compass-{pod}-proposed_tests-{stream}'
diff --git a/jjb/doctor/doctor.yaml b/jjb/doctor/doctor.yaml
index 3985356c1..1c12563a8 100644
--- a/jjb/doctor/doctor.yaml
+++ b/jjb/doctor/doctor.yaml
@@ -124,7 +124,9 @@
- 'doctor-parameter':
docker-tag: '{docker-tag}'
scenario: '{scenario}'
- - 'doctor-functest-parameter'
+ - 'doctor-functest-parameter':
+ gs-pathname: '{gs-pathname}'
+ inspector: '{inspector}'
scm:
- git-scm-gerrit
builders:
diff --git a/jjb/dovetail/dovetail-run.sh b/jjb/dovetail/dovetail-run.sh
index df681dd59..2a9c73c2f 100755
--- a/jjb/dovetail/dovetail-run.sh
+++ b/jjb/dovetail/dovetail-run.sh
@@ -60,6 +60,10 @@ releng_repo=${WORKSPACE}/releng
[ -d ${releng_repo} ] && sudo rm -rf ${releng_repo}
git clone https://gerrit.opnfv.org/gerrit/releng ${releng_repo} >/dev/null
+pharos_repo=${WORKSPACE}/pharos
+[ -d ${pharos_repo} ] && sudo rm -rf ${pharos_repo}
+git clone https://git.opnfv.org/pharos ${pharos_repo} >/dev/null
+
if [[ ${INSTALLER_TYPE} != 'joid' ]]; then
echo "SUT branch is $SUT_BRANCH"
echo "dovetail branch is $BRANCH"
@@ -93,10 +97,14 @@ if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == "fuel" ]]; then
fi
cat $OPENRC
+# These packages are used for parsing yaml files and decrypting ipmi user and password.
+sudo pip install shyaml
+sudo yum install -y rubygems || sudo apt-get install -y ruby
+sudo gem install hiera-eyaml
+
if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == "compass" ]]; then
compass_repo=${WORKSPACE}/compass4nfv/
git clone https://github.com/opnfv/compass4nfv.git ${compass_repo} >/dev/null
- sudo pip install shyaml
scenario_file=${compass_repo}/deploy/conf/hardware_environment/$NODE_NAME/os-nosdn-nofeature-ha.yml
ipmiIp=$(cat ${scenario_file} | shyaml get-value hosts.0.ipmiIp)
ipmiPass=$(cat ${scenario_file} | shyaml get-value hosts.0.ipmiPass)
@@ -120,11 +128,26 @@ if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_T
fuel_ctl_ssh_options="${ssh_options} -i ${SSH_KEY}"
ssh_user="ubuntu"
fuel_ctl_ip=$(ssh 2>/dev/null ${fuel_ctl_ssh_options} "${ssh_user}@${INSTALLER_IP}" \
- "sudo salt --out yaml 'ctl*' pillar.get _param:openstack_control_address | \
- awk '{print \$2; exit}'") &> /dev/null
+ "sudo salt 'cfg*' pillar.get _param:openstack_control_address --out text| \
+ cut -f2 -d' '")
+ ipmi_index=$(ssh 2>/dev/null ${fuel_ctl_ssh_options} "${ssh_user}@${INSTALLER_IP}" \
+ "sudo salt 'ctl*' network.ip_addrs cidr=${fuel_ctl_ip} --out text | grep ${fuel_ctl_ip} | cut -c 5")
+ organization="$(cut -d'-' -f1 <<< "${NODE_NAME}")"
+ pod_name="$(cut -d'-' -f2 <<< "${NODE_NAME}")"
+ pdf_file=${pharos_repo}/labs/${organization}/${pod_name}.yaml
+ ipmiIp=$(cat ${pdf_file} | shyaml get-value nodes.$[ipmi_index-1].remote_management.address)
+ ipmiIp="$(cut -d'/' -f1 <<< "${ipmiIp}")"
+ ipmiPass=$(cat ${pdf_file} | shyaml get-value nodes.$[ipmi_index-1].remote_management.pass)
+ ipmiUser=$(cat ${pdf_file} | shyaml get-value nodes.$[ipmi_index-1].remote_management.user)
+ [[ $ipmiUser == ENC* ]] && ipmiUser=$(eyaml decrypt -s ${ipmiUser//[[:blank:]]/})
+ [[ $ipmiPass == ENC* ]] && ipmiPass=$(eyaml decrypt -s ${ipmiPass//[[:blank:]]/})
+
cat << EOF >${DOVETAIL_CONFIG}/pod.yaml
nodes:
-- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /home/opnfv/userconfig/pre_config/id_rsa, role: controller, user: ${ssh_user}}
+- {ip: ${INSTALLER_IP}, name: node0, key_filename: /home/opnfv/userconfig/pre_config/id_rsa,
+ role: Jumpserver, user: ${ssh_user}}
+- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /home/opnfv/userconfig/pre_config/id_rsa,
+ role: controller, user: ${ssh_user}, ipmi_ip: ${ipmiIp}, ipmi_user: ${ipmiUser}, ipmi_password: ${ipmiPass}}
EOF
fi
@@ -169,10 +192,14 @@ fi
if [ -f ${DOVETAIL_CONFIG}/pod.yaml ]; then
sudo chmod 666 ${DOVETAIL_CONFIG}/pod.yaml
echo "Adapt process info for $INSTALLER_TYPE ..."
- attack_process='rabbitmq'
+ if [ "$INSTALLER_TYPE" == "apex" ]; then
+ attack_process='rabbitmq_server'
+ else
+ attack_process='rabbitmq'
+ fi
cat << EOF >> ${DOVETAIL_CONFIG}/pod.yaml
process_info:
-- {testcase_name: dovetail.ha.tc010, attack_process: ${attack_process}}
+- {testcase_name: dovetail.ha.rabbitmq, attack_process: ${attack_process}}
EOF
echo "file ${DOVETAIL_CONFIG}/pod.yaml:"
diff --git a/jjb/functest/functest-alpine.sh b/jjb/functest/functest-alpine.sh
index 1df9a554c..cf63bb5a4 100755
--- a/jjb/functest/functest-alpine.sh
+++ b/jjb/functest/functest-alpine.sh
@@ -4,15 +4,16 @@ set -e
set +u
set +o pipefail
+REPO=${REPO:-opnfv}
CI_LOOP=${CI_LOOP:-daily}
TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results
ENERGY_RECORDER_API_URL=http://energy.opnfv.fr/resources
check_os_deployment() {
- FUNCTEST_IMAGE=opnfv/functest-healthcheck:${DOCKER_TAG}
+ FUNCTEST_IMAGE=${REPO}/functest-healthcheck:${DOCKER_TAG}
echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..."
docker pull ${FUNCTEST_IMAGE}>/dev/null
- cmd="docker run --rm --privileged=true ${volumes} ${FUNCTEST_IMAGE} check_deployment"
+ cmd="docker run --rm ${volumes} ${FUNCTEST_IMAGE} check_deployment"
echo "Checking deployment, CMD: ${cmd}"
eval ${cmd}
ret_value=$?
@@ -34,10 +35,10 @@ run_tiers() {
echo 0 > ${ret_val_file}
for tier in ${tiers[@]}; do
- FUNCTEST_IMAGE=opnfv/functest-${tier}:${DOCKER_TAG}
+ FUNCTEST_IMAGE=${REPO}/functest-${tier}:${DOCKER_TAG}
echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..."
docker pull ${FUNCTEST_IMAGE}>/dev/null
- cmd="docker run --rm --privileged=true ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
+ cmd="docker run --rm ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
echo "Running Functest tier '${tier}'. CMD: ${cmd}"
eval ${cmd}
ret_value=$?
@@ -59,17 +60,17 @@ run_test() {
# Determine which Functest image should be used for the test case
case ${test_name} in
connection_check|api_check|snaps_health_check)
- FUNCTEST_IMAGE=opnfv/functest-healthcheck:${DOCKER_TAG} ;;
- vping_ssh|vping_userdata|tempest_smoke_serial|rally_sanity|refstack_defcore|odl|odl_netvirt|snaps_smoke)
- FUNCTEST_IMAGE=opnfv/functest-smoke:${DOCKER_TAG} ;;
+ FUNCTEST_IMAGE=${REPO}/functest-healthcheck:${DOCKER_TAG} ;;
+ vping_ssh|vping_userdata|cinder_test|tempest_smoke_serial|rally_sanity|refstack_defcore|patrole|odl|snaps_smoke|neutron_trunk)
+ FUNCTEST_IMAGE=${REPO}/functest-smoke:${DOCKER_TAG} ;;
tempest_full_parallel|rally_full)
- FUNCTEST_IMAGE=opnfv/functest-components:${DOCKER_TAG} ;;
- cloudify_ims|orchestra_openims|orchestra_clearwaterims|vyos_vrouter)
- FUNCTEST_IMAGE=opnfv/functest-vnf:${DOCKER_TAG} ;;
- promise|doctor-notification|bgpvpn|functest-odl-sfc|domino-multinode|barometercollectd|fds)
- FUNCTEST_IMAGE=opnfv/functest-features:${DOCKER_TAG} ;;
+ FUNCTEST_IMAGE=${REPO}/functest-components:${DOCKER_TAG} ;;
+ cloudify_ims|vyos_vrouter|juju_epc)
+ FUNCTEST_IMAGE=${REPO}/functest-vnf:${DOCKER_TAG} ;;
+ doctor-notification|bgpvpn|functest-odl-sfc|barometercollectd|fds)
+ FUNCTEST_IMAGE=${REPO}/functest-features:${DOCKER_TAG} ;;
parser-basics)
- FUNCTEST_IMAGE=opnfv/functest-parser:${DOCKER_TAG} ;;
+ FUNCTEST_IMAGE=${REPO}/functest-parser:${DOCKER_TAG} ;;
*)
echo "Unkown test case $test_name"
exit 1
@@ -77,7 +78,7 @@ run_test() {
esac
echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..."
docker pull ${FUNCTEST_IMAGE}>/dev/null
- cmd="docker run --rm --privileged=true ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
+ cmd="docker run --rm ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
echo "Running Functest test case '${test_name}'. CMD: ${cmd}"
eval ${cmd}
ret_value=$?
@@ -108,11 +109,6 @@ fi
rc_file_vol="-v ${rc_file}:${FUNCTEST_DIR}/conf/env_file"
-# Set iptables rule to allow forwarding return traffic for container
-if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FORWARD | awk 'NR==3' | grep RETURN 2> ${redirect}; then
- sudo iptables -I FORWARD -j RETURN
-fi
-
echo "Functest: Start Docker and prepare environment"
echo "Functest: Download images that will be used by test cases"
@@ -173,9 +169,17 @@ elif [ ${FUNCTEST_MODE} == 'tier' ]; then
run_tiers ${tiers}
else
if [ ${DEPLOY_TYPE} == 'baremetal' ] && [ "${HOST_ARCH}" != "aarch64" ]; then
- tiers=(healthcheck smoke features vnf parser)
+ if [[ ${BRANCH} == "stable/fraser" ]]; then
+ tiers=(healthcheck smoke features vnf parser)
+ else
+ tiers=(healthcheck smoke features vnf)
+ fi
else
- tiers=(healthcheck smoke features parser)
+ if [[ ${BRANCH} == "stable/fraser" ]]; then
+ tiers=(healthcheck smoke features parser)
+ else
+ tiers=(healthcheck smoke features)
+ fi
fi
run_tiers ${tiers}
fi
diff --git a/jjb/functest/functest-daily-jobs.yaml b/jjb/functest/functest-daily-jobs.yaml
index 4fc67e7f8..0300b99b2 100644
--- a/jjb/functest/functest-daily-jobs.yaml
+++ b/jjb/functest/functest-daily-jobs.yaml
@@ -237,7 +237,7 @@
- 'functest-{testsuite}-parameter'
- string:
name: DEPLOY_SCENARIO
- default: 'os-odl_l2-nofeature-ha'
+ default: 'os-nosdn-nofeature-noha'
- string:
name: CLEAN_DOCKER_IMAGES
default: 'false'
@@ -281,25 +281,27 @@
- 'connection_check'
- 'api_check'
- 'snaps_health_check'
- - 'vping_userdata'
- 'vping_ssh'
+ - 'vping_userdata'
+ - 'cinder_test'
- 'tempest_smoke_serial'
- 'rally_sanity'
+ - 'refstack_defcore'
+ - 'patrole'
- 'odl'
- - 'odl_netvirt'
- 'snaps_smoke'
- - 'refstack_defcore'
- - 'promise'
- - 'doctor'
+ - 'neutron_trunk'
+ - 'doctor-notification'
- 'bgpvpn'
- - 'parser'
- - 'security_scan'
+ - 'functest-odl-sfc'
+ - 'barometercollectd'
+ - 'fds'
- 'tempest_full_parallel'
- 'rally_full'
- 'cloudify_ims'
- - 'cloudify_vrouter'
- - 'orchestra_openims'
- - 'orchestra_clearwaterims'
+ - 'vyos_vrouter'
+ - 'juju_epc'
+ - 'parser'
default: 'connection_check'
- choice:
name: FUNCTEST_TIER
@@ -309,6 +311,7 @@
- 'features'
- 'components'
- 'vnf'
+ - 'parser'
default: 'healthcheck'
- string:
name: TESTCASE_OPTIONS
@@ -338,6 +341,10 @@
name: RC_FILE_PATH
default: ''
description: "Path to the OS credentials file if given"
+ - string:
+ name: REPO
+ default: "opnfv"
+ description: "Repository name for functest images"
########################
# trigger macros
########################
diff --git a/jjb/functest/functest-docker.yaml b/jjb/functest/functest-docker.yaml
index 50c7c3816..74738f280 100644
--- a/jjb/functest/functest-docker.yaml
+++ b/jjb/functest/functest-docker.yaml
@@ -25,6 +25,7 @@
# yamllint disable rule:key-duplicates
image:
- 'core'
+ - 'tempest'
- 'healthcheck'
- 'features'
- 'components'
@@ -32,6 +33,12 @@
- 'smoke'
- 'vnf'
+ exclude:
+ - stream: 'master'
+ image: 'parser'
+ - stream: 'fraser'
+ image: 'tempest'
+
# settings for jobs run in multijob phases
build-job-settings: &build-job-settings
current-parameters: false
@@ -107,6 +114,20 @@
- name: 'functest-core-docker-manifest-{stream}'
<<: *manifest-job-settings
- multijob:
+ name: 'build functest-tempest images'
+ execution-type: PARALLEL
+ projects:
+ - name: 'functest-tempest-docker-build-amd64-{stream}'
+ <<: *build-job-settings
+ - name: 'functest-tempest-docker-build-arm64-{stream}'
+ <<: *build-job-settings
+ - multijob:
+ name: 'publish functest-tempest manifests'
+ execution-type: PARALLEL
+ projects:
+ - name: 'functest-tempest-docker-manifest-{stream}'
+ <<: *manifest-job-settings
+ - multijob:
name: 'build all functest images'
condition: SUCCESSFUL
execution-type: PARALLEL
diff --git a/jjb/releng/compass4nfv-docker.yaml b/jjb/releng/compass4nfv-docker.yaml
index 7bfda552d..2a5453658 100644
--- a/jjb/releng/compass4nfv-docker.yaml
+++ b/jjb/releng/compass4nfv-docker.yaml
@@ -43,7 +43,6 @@
PUSH_IMAGE=$PUSH_IMAGE
COMMIT_ID=$COMMIT_ID
GERRIT_REFNAME=$GERRIT_REFNAME
- DOCKERFILE=$DOCKERFILE
kill-phase-on: FAILURE
abort-all-jobs: false
diff --git a/jjb/releng/opnfv-docker.yaml b/jjb/releng/opnfv-docker.yaml
index b7d1ce66f..c73bae371 100644
--- a/jjb/releng/opnfv-docker.yaml
+++ b/jjb/releng/opnfv-docker.yaml
@@ -165,6 +165,36 @@
<<: *master
<<: *other-receivers
# projects with jobs for euphrates
+ - 'barometer-collectd':
+ project: 'barometer'
+ dockerdir: 'docker/barometer-collectd'
+ <<: *fraser
+ <<: *other-receivers
+ - 'barometer-grafana':
+ project: 'barometer'
+ dockerdir: 'docker/barometer-grafana'
+ <<: *fraser
+ <<: *other-receivers
+ - 'barometer-influxdb':
+ project: 'barometer'
+ dockerdir: 'docker/barometer-influxdb'
+ <<: *fraser
+ <<: *other-receivers
+ - 'barometer-kafka':
+ project: 'barometer'
+ dockerdir: 'docker/barometer-kafka'
+ <<: *fraser
+ <<: *other-receivers
+ - 'barometer-ves':
+ project: 'barometer'
+ dockerdir: 'docker/barometer-ves'
+ <<: *fraser
+ <<: *other-receivers
+ - 'barometer-snmp':
+ project: 'barometer'
+ dockerdir: 'docker/barometer-snmp'
+ <<: *fraser
+ <<: *other-receivers
- 'bottlenecks':
project: 'bottlenecks'
<<: *euphrates
diff --git a/jjb/releng/opnfv-repo-archiver.sh b/jjb/releng/opnfv-repo-archiver.sh
index 6fa0aef50..b7ff3baa0 100644
--- a/jjb/releng/opnfv-repo-archiver.sh
+++ b/jjb/releng/opnfv-repo-archiver.sh
@@ -29,7 +29,7 @@ for PROJECT in "${PROJECT_LIST[@]}"; do
git clone "https://gerrit.opnfv.org/gerrit/$PROJECT.git" $CLONE_PATH/$PROJECT
else
pushd "$CLONE_PATH/$PROJECT" &>/dev/null
- git pull -f
+ git pull -f origin master
popd &> /dev/null
fi
diff --git a/jjb/releng/releng-ci-jobs.yaml b/jjb/releng/releng-ci-jobs.yaml
index f9a2bc232..790bd7eb4 100644
--- a/jjb/releng/releng-ci-jobs.yaml
+++ b/jjb/releng/releng-ci-jobs.yaml
@@ -11,5 +11,9 @@
jjb-version: '2.0.3'
lftools-version: '<1.0.0'
+ rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-releng/38594/'
+ rtd-token: '291c6a0109493b4457e566d06141212452c65784'
+
jobs:
- '{project-name}-ci-jobs'
+ - '{project-name}-rtd-jobs'
diff --git a/jjb/xci/xci-verify-jobs.yaml b/jjb/xci/xci-verify-jobs.yaml
index 2230cd56d..baff0c99e 100644
--- a/jjb/xci/xci-verify-jobs.yaml
+++ b/jjb/xci/xci-verify-jobs.yaml
@@ -20,7 +20,7 @@
unstable: false
notbuilt: false
- centos:
- disabled: false
+ disabled: true
successful: true
failed: true
unstable: true
diff --git a/jjb/yardstick/yardstick-daily-jobs.yaml b/jjb/yardstick/yardstick-daily-jobs.yaml
index 4df3f520d..c5a35086f 100644
--- a/jjb/yardstick/yardstick-daily-jobs.yaml
+++ b/jjb/yardstick/yardstick-daily-jobs.yaml
@@ -288,7 +288,7 @@
publishers:
- email:
- recipients: jean.gaoliang@huawei.com limingjiang@huawei.com ross.b.brattain@intel.com
+ recipients: jean.gaoliang@huawei.com limingjiang@huawei.com
- email-jenkins-admins-on-failure
########################
diff --git a/tox.ini b/tox.ini
index abdffc52d..d2f416884 100644
--- a/tox.ini
+++ b/tox.ini
@@ -15,9 +15,9 @@ setenv=
[testenv:jjb]
deps =
- jenkins-job-builder==1.6.1
+ jenkins-job-builder==2.0.3
commands=
- jenkins-jobs test -o job_output -r jjb/global:{posargs:"jjb/"}
+ jenkins-jobs test -o job_output -r {posargs:"jjb/"}
[testenv:docs]
deps = -r{toxinidir}/docs/requirements.txt
diff --git a/utils/build-server-ansible/vars/CentOS.yml b/utils/build-server-ansible/vars/CentOS.yml
index 528388f27..7a2c1d1d5 100644
--- a/utils/build-server-ansible/vars/CentOS.yml
+++ b/utils/build-server-ansible/vars/CentOS.yml
@@ -46,6 +46,7 @@
- sysstat
- xmlstarlet
- facter
+ - jq
- name: install the 'Development tools' package group
yum:
diff --git a/utils/build-server-ansible/vars/Ubuntu.yml b/utils/build-server-ansible/vars/Ubuntu.yml
index e91c48569..f50255868 100644
--- a/utils/build-server-ansible/vars/Ubuntu.yml
+++ b/utils/build-server-ansible/vars/Ubuntu.yml
@@ -59,6 +59,7 @@
- sysstat
- xmlstarlet
- facter
+ - jq
- name: Add Docker apt key.
apt_key:
diff --git a/utils/fetch_os_creds.sh b/utils/fetch_os_creds.sh
index 4bc585885..b40b75b75 100755
--- a/utils/fetch_os_creds.sh
+++ b/utils/fetch_os_creds.sh
@@ -164,7 +164,13 @@ elif [ "$installer_type" == "apex" ]; then
if [ -f /root/.ssh/id_rsa ]; then
chmod 600 /root/.ssh/id_rsa
fi
- sudo scp $ssh_options root@$installer_ip:/home/stack/overcloudrc.v3 $dest_path
+
+ if [ "${BRANCH}" == "stable/fraser" ]; then
+ rc_file=overcloudrc.v3
+ else
+ rc_file=overcloudrc
+ fi
+ sudo scp $ssh_options root@$installer_ip:/home/stack/${rc_file} $dest_path
elif [ "$installer_type" == "compass" ]; then
if [ "${BRANCH}" == "stable/danube" ]; then
diff --git a/utils/gpg_import_key.sh b/utils/gpg_import_key.sh
index f45e40919..94ffbaab5 100755
--- a/utils/gpg_import_key.sh
+++ b/utils/gpg_import_key.sh
@@ -51,10 +51,14 @@ else
if [ -z "$NODE_NAME" ];
then echo "Cannot find node name"
exit 0
- else echo "Importing key for '$NODE_NAME'";
- gsutil cp gs://opnfv-signing-keys/"$NODE_NAME"-subkey .
- gpg2 --import "$NODE_NAME"-subkey
- rm -f "$NODE_NAME"-subkey
- fi
+ elif gsutil ls gs://opnfv-signing-keys | grep $NODE_NAME; then
+ echo "Importing key for '$NODE_NAME'"
+ gsutil cp gs://opnfv-signing-keys/"$NODE_NAME"-subkey .
+ gpg2 --import "$NODE_NAME"-subkey
+ rm -f "$NODE_NAME"-subkey
+ else
+ echo "No keys found locally or remotely for host, skipping import"
+ exit 0
+ fi
fi
diff --git a/utils/push-test-logs.sh b/utils/push-test-logs.sh
index a87e399dd..9debb45b7 100644
--- a/utils/push-test-logs.sh
+++ b/utils/push-test-logs.sh
@@ -21,14 +21,14 @@ dir_result="${HOME}/opnfv/$project/results/${branch}"
# src: https://wiki.opnfv.org/display/INF/Hardware+Infrastructure
# + intel-pod12 (vsperf)
node_list=(\
-'lf-pod1' 'lf-pod2' 'intel-pod2' 'intel-pod12' \
+'lf-pod1' 'lf-pod2' \
'lf-virtual2' 'lf-virtual3' \
-'intel-pod5' 'intel-pod6' 'intel-pod7' 'intel-pod8' 'intel-pod18' \
+'intel-pod12' 'intel-pod18' \
'ericsson-pod1' 'ericsson-pod2' \
'ericsson-virtual1' 'ericsson-virtual2' 'ericsson-virtual3' \
-'ericsson-virtual4' 'ericsson-virtual5' 'ericsson-virtual12' \
-'arm-pod1' 'arm-pod5' 'arm-pod6' \
-'huawei-pod1' 'huawei-pod2' 'huawei-pod3' 'huawei-pod4' 'huawei-pod5' \
+'ericsson-virtual4' 'ericsson-virtual5' \
+'arm-pod5' 'arm-pod6' \
+'huawei-pod1' 'huawei-pod2' 'huawei-pod3' 'huawei-pod4' \
'huawei-pod6' 'huawei-pod7' 'huawei-pod12' \
'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4' \
'huawei-virtual5' 'huawei-virtual8' 'huawei-virtual9' \