summaryrefslogtreecommitdiffstats
path: root/jjb
diff options
context:
space:
mode:
Diffstat (limited to 'jjb')
-rw-r--r--jjb/3rd_party_ci/odl-netvirt.yaml (renamed from jjb/3rd_party_ci/odl-netvirt.yml)0
-rwxr-xr-xjjb/apex/apex-build.sh11
-rwxr-xr-xjjb/apex/apex-deploy.sh9
-rwxr-xr-xjjb/apex/apex-download-artifact.sh5
-rw-r--r--jjb/apex/apex-jjb-renderer.py4
-rw-r--r--jjb/apex/apex-project-jobs.yaml (renamed from jjb/apex/apex-project-jobs.yml)0
-rw-r--r--jjb/apex/apex-snapshot-create.sh4
-rw-r--r--jjb/apex/apex-verify-jobs.yaml (renamed from jjb/apex/apex-verify-jobs.yml)11
-rw-r--r--jjb/apex/apex.yaml (renamed from jjb/apex/apex.yml)89
-rw-r--r--jjb/apex/apex.yaml.j2 (renamed from jjb/apex/apex.yml.j2)61
-rw-r--r--jjb/apex/scenarios.yaml.hidden2
-rw-r--r--jjb/armband/armband-ci-jobs.yaml (renamed from jjb/armband/armband-ci-jobs.yml)2
-rw-r--r--jjb/armband/armband-verify-jobs.yaml (renamed from jjb/armband/armband-verify-jobs.yml)0
-rw-r--r--jjb/auto/auto.yaml126
-rw-r--r--jjb/auto/auto.yml8
-rw-r--r--jjb/availability/availability.yaml (renamed from jjb/availability/availability.yml)0
-rw-r--r--jjb/barometer/barometer.yaml (renamed from jjb/barometer/barometer.yml)0
-rw-r--r--jjb/bottlenecks/bottlenecks-ci-jobs.yaml (renamed from jjb/bottlenecks/bottlenecks-ci-jobs.yml)0
-rw-r--r--jjb/bottlenecks/bottlenecks-project-jobs.yaml (renamed from jjb/bottlenecks/bottlenecks-project-jobs.yml)0
-rw-r--r--jjb/calipso/calipso.yaml (renamed from jjb/calipso/calipso.yml)0
-rw-r--r--jjb/ci_gate_security/opnfv-ci-gate-security.yaml (renamed from jjb/ci_gate_security/opnfv-ci-gate-security.yml)2
-rw-r--r--jjb/clover/clover-project.yaml (renamed from jjb/clover/clover-project.yml)0
-rw-r--r--jjb/compass4nfv/compass-ci-jobs.yaml (renamed from jjb/compass4nfv/compass-ci-jobs.yml)0
-rw-r--r--jjb/compass4nfv/compass-dovetail-jobs.yaml (renamed from jjb/compass4nfv/compass-dovetail-jobs.yml)0
-rw-r--r--jjb/compass4nfv/compass-project-jobs.yaml (renamed from jjb/compass4nfv/compass-project-jobs.yml)0
-rw-r--r--jjb/compass4nfv/compass-verify-jobs.yaml (renamed from jjb/compass4nfv/compass-verify-jobs.yml)0
-rw-r--r--jjb/conductor/conductor.yaml (renamed from jjb/conductor/conductor.yml)0
-rw-r--r--jjb/container4nfv/container4nfv-arm64.yaml (renamed from jjb/container4nfv/container4nfv-arm64.yml)0
-rw-r--r--jjb/container4nfv/container4nfv-project.yaml (renamed from jjb/container4nfv/container4nfv-project.yml)0
-rw-r--r--jjb/container4nfv/yardstick-arm64.yaml (renamed from jjb/container4nfv/yardstick-arm64.yml)0
-rw-r--r--jjb/copper/copper.yaml (renamed from jjb/copper/copper.yml)0
-rw-r--r--jjb/cperf/cperf-ci-jobs.yaml (renamed from jjb/cperf/cperf-ci-jobs.yml)0
-rw-r--r--jjb/daisy4nfv/daisy-daily-jobs.yaml (renamed from jjb/daisy4nfv/daisy-daily-jobs.yml)4
-rw-r--r--jjb/daisy4nfv/daisy-project-jobs.yaml (renamed from jjb/daisy4nfv/daisy-project-jobs.yml)4
-rw-r--r--jjb/daisy4nfv/daisy4nfv-merge-jobs.yaml (renamed from jjb/daisy4nfv/daisy4nfv-merge-jobs.yml)4
-rw-r--r--jjb/daisy4nfv/daisy4nfv-verify-jobs.yaml (renamed from jjb/daisy4nfv/daisy4nfv-verify-jobs.yml)4
-rw-r--r--jjb/doctor/doctor.yaml (renamed from jjb/doctor/doctor.yml)4
-rw-r--r--jjb/domino/domino.yaml (renamed from jjb/domino/domino.yml)0
-rw-r--r--jjb/dovetail/dovetail-artifacts-upload.yaml (renamed from jjb/dovetail/dovetail-artifacts-upload.yml)0
-rw-r--r--jjb/dovetail/dovetail-ci-jobs.yaml (renamed from jjb/dovetail/dovetail-ci-jobs.yml)0
-rw-r--r--jjb/dovetail/dovetail-project-jobs.yaml (renamed from jjb/dovetail/dovetail-project-jobs.yml)0
-rwxr-xr-xjjb/dovetail/dovetail-run.sh5
-rw-r--r--jjb/dovetail/dovetail-weekly-jobs.yaml (renamed from jjb/dovetail/dovetail-weekly-jobs.yml)0
-rw-r--r--jjb/dpacc/dpacc.yaml (renamed from jjb/dpacc/dpacc.yml)0
-rw-r--r--jjb/escalator/escalator.yaml (renamed from jjb/escalator/escalator.yml)0
-rw-r--r--jjb/fuel/fuel-daily-jobs.yaml (renamed from jjb/fuel/fuel-daily-jobs.yml)16
-rwxr-xr-xjjb/fuel/fuel-deploy.sh4
-rw-r--r--jjb/fuel/fuel-project-jobs.yaml (renamed from jjb/fuel/fuel-project-jobs.yml)0
-rw-r--r--jjb/fuel/fuel-verify-jobs.yaml (renamed from jjb/fuel/fuel-verify-jobs.yml)0
-rw-r--r--jjb/fuel/fuel-weekly-jobs.yaml (renamed from jjb/fuel/fuel-weekly-jobs.yml)0
-rw-r--r--jjb/functest/functest-daily-jobs.yaml (renamed from jjb/functest/functest-daily-jobs.yml)29
-rw-r--r--jjb/functest/functest-docker.yaml (renamed from jjb/functest/functest-docker.yml)0
-rw-r--r--jjb/functest/functest-kubernetes-docker.yaml (renamed from jjb/functest/functest-kubernetes-docker.yml)0
-rw-r--r--jjb/functest/functest-kubernetes-project-jobs.yaml (renamed from jjb/functest/functest-kubernetes-project-jobs.yml)0
-rw-r--r--jjb/functest/functest-project-jobs.yaml (renamed from jjb/functest/functest-project-jobs.yml)0
-rw-r--r--jjb/functest/functest-weekly-jobs.yaml (renamed from jjb/functest/functest-weekly-jobs.yml)0
-rw-r--r--jjb/functest/xtesting-docker.yaml (renamed from jjb/functest/xtesting-docker.yml)0
-rw-r--r--jjb/functest/xtesting-project-jobs.yaml (renamed from jjb/functest/xtesting-project-jobs.yml)0
m---------jjb/global-jjb0
-rw-r--r--jjb/global/basic-jobs.yaml (renamed from jjb/global/basic-jobs.yml)0
-rw-r--r--jjb/global/installer-params.yaml (renamed from jjb/global/installer-params.yml)0
-rw-r--r--jjb/global/releng-defaults.yaml (renamed from jjb/global/releng-defaults.yml)0
-rw-r--r--jjb/global/releng-macros.yaml (renamed from jjb/global/releng-macros.yml)55
-rw-r--r--jjb/global/slave-params.yaml (renamed from jjb/global/slave-params.yml)11
-rw-r--r--jjb/ipv6/ipv6.yaml (renamed from jjb/ipv6/ipv6.yml)0
-rw-r--r--jjb/joid/joid-daily-jobs.yaml (renamed from jjb/joid/joid-daily-jobs.yml)0
-rw-r--r--jjb/joid/joid-verify-jobs.yaml (renamed from jjb/joid/joid-verify-jobs.yml)0
-rw-r--r--jjb/kvmfornfv/kvmfornfv.yaml (renamed from jjb/kvmfornfv/kvmfornfv.yml)0
-rw-r--r--jjb/models/models.yaml (renamed from jjb/models/models.yml)0
-rw-r--r--jjb/moon/moon.yaml (renamed from jjb/moon/moon.yml)0
-rw-r--r--jjb/netready/netready.yaml (renamed from jjb/netready/netready.yml)0
-rw-r--r--jjb/nfvbench/nfvbench.yaml (renamed from jjb/nfvbench/nfvbench.yml)0
-rw-r--r--jjb/onosfw/onosfw.yaml (renamed from jjb/onosfw/onosfw.yml)0
-rwxr-xr-xjjb/openci/create-ane.sh26
-rwxr-xr-xjjb/openci/create-cde.sh27
-rwxr-xr-xjjb/openci/create-clme.sh27
-rw-r--r--jjb/openci/openci-odl-daily-jobs.yaml99
-rw-r--r--jjb/openci/openci-onap-daily-jobs.yaml99
-rw-r--r--jjb/openci/openci-opnfv-daily-jobs.yaml149
-rw-r--r--jjb/opera/opera-daily-jobs.yaml (renamed from jjb/opera/opera-daily-jobs.yml)0
-rw-r--r--jjb/opera/opera-project-jobs.yaml (renamed from jjb/opera/opera-project-jobs.yml)0
-rw-r--r--jjb/opera/opera-verify-jobs.yaml (renamed from jjb/opera/opera-verify-jobs.yml)0
-rw-r--r--jjb/opnfvdocs/opnfvdocs.yaml (renamed from jjb/opnfvdocs/opnfvdocs.yml)0
-rw-r--r--jjb/orchestra/orchestra-daily-jobs.yaml (renamed from jjb/orchestra/orchestra-daily-jobs.yml)0
-rw-r--r--jjb/orchestra/orchestra-project-jobs.yaml (renamed from jjb/orchestra/orchestra-project-jobs.yml)0
-rw-r--r--jjb/ovn4nfv/ovn4nfv-daily-jobs.yaml (renamed from jjb/ovn4nfv/ovn4nfv-daily-jobs.yml)0
-rw-r--r--jjb/ovn4nfv/ovn4nfv-project-jobs.yaml (renamed from jjb/ovn4nfv/ovn4nfv-project-jobs.yml)0
-rw-r--r--jjb/ovsnfv/ovsnfv.yaml (renamed from jjb/ovsnfv/ovsnfv.yml)0
-rw-r--r--jjb/parser/parser.yaml (renamed from jjb/parser/parser.yml)0
-rw-r--r--jjb/pharos/check-jinja2.yaml (renamed from jjb/pharos/check-jinja2.yml)0
-rw-r--r--jjb/pharos/pharos.yaml (renamed from jjb/pharos/pharos.yml)0
-rw-r--r--jjb/promise/promise.yaml (renamed from jjb/promise/promise.yml)0
-rw-r--r--jjb/qtip/qtip-experimental-jobs.yaml (renamed from jjb/qtip/qtip-experimental-jobs.yml)0
-rw-r--r--jjb/qtip/qtip-validate-jobs.yaml (renamed from jjb/qtip/qtip-validate-jobs.yml)0
-rw-r--r--jjb/qtip/qtip-verify-jobs.yaml (renamed from jjb/qtip/qtip-verify-jobs.yml)0
-rw-r--r--jjb/releng/artifact-cleanup.yaml (renamed from jjb/releng/artifact-cleanup.yml)0
-rw-r--r--jjb/releng/compass4nfv-docker.yaml (renamed from jjb/releng/compass4nfv-docker.yml)89
-rw-r--r--jjb/releng/opnfv-docker-arm.yaml (renamed from jjb/releng/opnfv-docker-arm.yml)0
-rw-r--r--jjb/releng/opnfv-docker-custom.yaml (renamed from jjb/releng/opnfv-docker-custom.yml)0
-rw-r--r--jjb/releng/opnfv-docker.sh9
-rw-r--r--jjb/releng/opnfv-docker.yaml (renamed from jjb/releng/opnfv-docker.yml)0
-rw-r--r--jjb/releng/opnfv-lint.yaml (renamed from jjb/releng/opnfv-lint.yml)2
-rw-r--r--jjb/releng/opnfv-utils.yaml (renamed from jjb/releng/opnfv-utils.yml)0
-rw-r--r--jjb/releng/releng-ci-jobs.yaml15
-rw-r--r--jjb/releng/releng-ci-jobs.yml124
-rw-r--r--jjb/releng/releng-release-create-venv.sh (renamed from jjb/releng/releng-release-verify.sh)23
-rw-r--r--jjb/releng/releng-release-jobs.yaml (renamed from jjb/releng/releng-release-jobs.yml)32
-rw-r--r--jjb/releng/releng-release-tagging.sh70
-rw-r--r--jjb/releng/testresults-automate.yaml (renamed from jjb/releng/testresults-automate.yml)0
-rw-r--r--jjb/releng/testresults-verify.yaml (renamed from jjb/releng/testresults-verify.yml)0
-rwxr-xr-xjjb/releng/verify-releng.sh21
-rw-r--r--jjb/securedlab/check-jinja2.yaml (renamed from jjb/securedlab/check-jinja2.yml)0
-rw-r--r--jjb/sfc/sfc-project-jobs.yaml (renamed from jjb/sfc/sfc-project-jobs.yml)0
-rw-r--r--jjb/snaps/snaps-verify-jobs.yaml (renamed from jjb/snaps/snaps-verify-jobs.yml)0
-rw-r--r--jjb/stor4nfv/stor4nfv-project.yaml (renamed from jjb/stor4nfv/stor4nfv-project.yml)0
-rw-r--r--jjb/storperf/storperf-daily-jobs.yaml (renamed from jjb/storperf/storperf-daily-jobs.yml)0
-rw-r--r--jjb/storperf/storperf-verify-jobs.yaml (renamed from jjb/storperf/storperf-verify-jobs.yml)0
-rw-r--r--jjb/storperf/storperf.yaml (renamed from jjb/storperf/storperf.yml)0
-rw-r--r--jjb/ves/ves.yaml (renamed from jjb/ves/ves.yml)0
-rw-r--r--jjb/vnf_forwarding_graph/vnf_forwarding_graph.yaml (renamed from jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml)0
-rw-r--r--jjb/vswitchperf/vswitchperf.yaml (renamed from jjb/vswitchperf/vswitchperf.yml)0
-rw-r--r--jjb/xci/bifrost-cleanup-job.yaml (renamed from jjb/xci/bifrost-cleanup-job.yml)0
-rw-r--r--jjb/xci/bifrost-periodic-jobs.yaml (renamed from jjb/xci/bifrost-periodic-jobs.yml)0
-rw-r--r--jjb/xci/bifrost-verify-jobs.yaml (renamed from jjb/xci/bifrost-verify-jobs.yml)14
-rw-r--r--jjb/xci/osa-periodic-jobs.yaml (renamed from jjb/xci/osa-periodic-jobs.yml)0
-rw-r--r--jjb/xci/xci-daily-jobs.yaml (renamed from jjb/xci/xci-daily-jobs.yml)14
-rw-r--r--jjb/xci/xci-merge-jobs.yaml (renamed from jjb/xci/xci-merge-jobs.yml)14
-rwxr-xr-xjjb/xci/xci-run-functest.sh2
-rwxr-xr-xjjb/xci/xci-set-scenario.sh39
-rwxr-xr-xjjb/xci/xci-start-new-vm.sh4
-rw-r--r--jjb/xci/xci-verify-jobs.yaml (renamed from jjb/xci/xci-verify-jobs.yml)16
-rw-r--r--jjb/yardstick/yardstick-daily-jobs.yaml (renamed from jjb/yardstick/yardstick-daily-jobs.yml)0
-rw-r--r--jjb/yardstick/yardstick-project-jobs.yaml (renamed from jjb/yardstick/yardstick-project-jobs.yml)0
133 files changed, 1006 insertions, 383 deletions
diff --git a/jjb/3rd_party_ci/odl-netvirt.yml b/jjb/3rd_party_ci/odl-netvirt.yaml
index 863eb94dd..863eb94dd 100644
--- a/jjb/3rd_party_ci/odl-netvirt.yml
+++ b/jjb/3rd_party_ci/odl-netvirt.yaml
diff --git a/jjb/apex/apex-build.sh b/jjb/apex/apex-build.sh
index aabd20e30..09aa716be 100755
--- a/jjb/apex/apex-build.sh
+++ b/jjb/apex/apex-build.sh
@@ -12,21 +12,26 @@ echo
if echo $ARTIFACT_VERSION | grep "dev" 1> /dev/null; then
GERRIT_PATCHSET_NUMBER=$(echo $GERRIT_REFSPEC | grep -Eo '[0-9]+$')
export OPNFV_ARTIFACT_VERSION="dev${GERRIT_CHANGE_NUMBER}_${GERRIT_PATCHSET_NUMBER}"
- export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ if [ "$BRANCH" == 'master' ]; then
+ # build rpm
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms"
+ else
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ fi
elif echo $BUILD_TAG | grep "csit" 1> /dev/null; then
export OPNFV_ARTIFACT_VERSION=csit${BUILD_NUMBER}
export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
elif [ "$ARTIFACT_VERSION" == "daily" ]; then
export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d")
if [ "$BRANCH" == 'master' ]; then
- export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms"
else
export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --iso"
fi
else
export OPNFV_ARTIFACT_VERSION=${ARTIFACT_VERSION}
if [ "$BRANCH" == 'master' ]; then
- export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY"
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms"
else
export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --iso"
fi
diff --git a/jjb/apex/apex-deploy.sh b/jjb/apex/apex-deploy.sh
index 35c2b8544..dfaf2a8b5 100755
--- a/jjb/apex/apex-deploy.sh
+++ b/jjb/apex/apex-deploy.sh
@@ -118,11 +118,8 @@ if [[ "$JOB_NAME" =~ "virtual" ]]; then
if [[ "${DEPLOY_SCENARIO}" =~ fdio|ovs ]]; then
DEPLOY_CMD="${DEPLOY_CMD} --virtual-default-ram 12 --virtual-compute-ram 7"
fi
- if [[ "$JOB_NAME" == *csit* ]]; then
- DEPLOY_CMD="${DEPLOY_CMD} -e csit-environment.yaml"
- fi
if [[ "$PROMOTE" == "True" ]]; then
- DEPLOY_CMD="${DEPLOY_CMD} --virtual-computes 1"
+ DEPLOY_CMD="${DEPLOY_CMD} --virtual-computes 2 -e csit-environment.yaml"
fi
else
# settings for bare metal deployment
@@ -144,6 +141,8 @@ fi
if [ "$IPV6_FLAG" == "True" ]; then
NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings_v6.yaml"
+elif [[ "$PROMOTE" == "True" ]]; then
+ NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings_csit.yaml"
else
NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings.yaml"
fi
@@ -157,7 +156,7 @@ fi
# start deployment
sudo ${DEPLOY_CMD} -d ${DEPLOY_FILE} -n ${NETWORK_FILE} --debug
-if [[ "$JOB_NAME" == *csit* ]]; then
+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]+")
diff --git a/jjb/apex/apex-download-artifact.sh b/jjb/apex/apex-download-artifact.sh
index 3efe1cbc7..e1e51b3b6 100755
--- a/jjb/apex/apex-download-artifact.sh
+++ b/jjb/apex/apex-download-artifact.sh
@@ -45,10 +45,9 @@ else
RPM_INSTALL_PATH=$(echo "http://"$OPNFV_RPM_URL | sed 's/\/'"$(basename $OPNFV_RPM_URL)"'//')
RPM_LIST=$(basename $OPNFV_RPM_URL)
-
+ # find version of RPM
+ VERSION_EXTENSION=$(echo $(basename $RPM_LIST) | grep -Eo '[0-9]+\.[0-9]+-([0-9]{8}|[a-z]+-[0-9]\.[0-9]+)')
if [ "$BRANCH" != 'master' ]; then
- # find version of RPM
- VERSION_EXTENSION=$(echo $(basename $RPM_LIST) | grep -Eo '[0-9]+\.[0-9]+-([0-9]{8}|[a-z]+-[0-9]\.[0-9]+)')
# build RPM List which already includes base Apex RPM
RPM_LIST+=" opnfv-apex-undercloud-${VERSION_EXTENSION}.noarch.rpm"
RPM_LIST+=" python34-opnfv-apex-${VERSION_EXTENSION}.noarch.rpm"
diff --git a/jjb/apex/apex-jjb-renderer.py b/jjb/apex/apex-jjb-renderer.py
index b67784376..0da47b518 100644
--- a/jjb/apex/apex-jjb-renderer.py
+++ b/jjb/apex/apex-jjb-renderer.py
@@ -25,7 +25,7 @@ def render_jjb():
with open('scenarios.yaml.hidden') as _:
scenarios = yaml.safe_load(_)
- template = env.get_template('apex.yml.j2')
+ template = env.get_template('apex.yaml.j2')
print("Scenarios are: ")
pprint.pprint(scenarios)
@@ -42,7 +42,7 @@ def render_jjb():
output = template.render(scenarios=scenarios, gspathname=gspathname,
branch=branch, build_slave=build_slave)
- with open('./apex.yml', 'w') as fh:
+ with open('./apex.yaml', 'w') as fh:
fh.write(output)
if __name__ == "__main__":
diff --git a/jjb/apex/apex-project-jobs.yml b/jjb/apex/apex-project-jobs.yaml
index 700ff60e8..700ff60e8 100644
--- a/jjb/apex/apex-project-jobs.yml
+++ b/jjb/apex/apex-project-jobs.yaml
diff --git a/jjb/apex/apex-snapshot-create.sh b/jjb/apex/apex-snapshot-create.sh
index 342896c7d..7e38d56b4 100644
--- a/jjb/apex/apex-snapshot-create.sh
+++ b/jjb/apex/apex-snapshot-create.sh
@@ -78,9 +78,7 @@ for node in $nodes; do
done
# copy virsh net definitions
-for net in admin api external storage tenant; do
- sudo virsh net-dumpxml ${net} > ${net}.xml
-done
+sudo virsh net-dumpxml admin > admin.xml
sudo chown jenkins-ci:jenkins-ci *
diff --git a/jjb/apex/apex-verify-jobs.yml b/jjb/apex/apex-verify-jobs.yaml
index 7dbd6709b..fd6be6e81 100644
--- a/jjb/apex/apex-verify-jobs.yml
+++ 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,6 +243,8 @@
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ FUNCTEST_SUITE_NAME=tempest_smoke_serial
+ FUNCTEST_MODE=testcase
node-parameters: false
kill-phase-on: FAILURE
abort-all-job: true
@@ -309,6 +311,7 @@
blocking-jobs:
- 'apex-verify.*'
- 'apex-virtual.*'
+ - 'apex-.*-promote.*'
- throttle:
max-per-node: 1
max-total: 10
@@ -348,8 +351,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_MODE=tier
- FUNCTEST_TIER=healthcheck
+ FUNCTEST_SUITE_NAME=tempest_smoke_serial
+ FUNCTEST_MODE=testcase
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yaml
index 587a06377..bb5b53d6d 100644
--- a/jjb/apex/apex.yml
+++ b/jjb/apex/apex.yaml
@@ -8,7 +8,7 @@
- 'apex-virtual-{stream}'
- 'apex-deploy-{platform}-{stream}'
- 'apex-daily-{stream}'
- - 'apex-csit-promote-daily-{stream}'
+ - 'apex-csit-promote-daily-{stream}-{os_version}'
- 'apex-fdio-promote-daily-{stream}'
- 'apex-{scenario}-baremetal-{scenario_stream}'
- 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
@@ -25,7 +25,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'master'
disable_daily: false
disable_promote: false
@@ -35,7 +35,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'fraser'
disable_daily: false
disable_promote: true
@@ -144,9 +144,13 @@
<<: *danube
- 'os-ovn-nofeature-noha':
<<: *danube
- - 'os-odl-master_upstream-noha':
+ - 'os-odl-nofeature-noha':
<<: *master
- - 'os-odl-queens_upstream-noha':
+ - 'os-odl-nofeature-ha':
+ <<: *master
+ - 'os-odl-queens-noha':
+ <<: *master
+ - 'os-odl-queens-ha':
<<: *master
- 'os-nosdn-nofeature-noha':
<<: *euphrates
@@ -190,9 +194,12 @@
- 'virtual'
os_version:
- - 'pike'
- - 'queens'
- - 'master'
+ - 'pike':
+ os_scenario: 'pike'
+ - 'queens':
+ os_scenario: 'queens'
+ - 'master':
+ os_scenario: 'nofeature'
# Fetch Logs Job
@@ -361,6 +368,7 @@
parameters:
- '{project}-defaults'
- '{project}-virtual-{stream}-defaults'
+ - 'functest-suite-parameter'
- project-parameter:
project: '{project}'
branch: '{branch}'
@@ -382,7 +390,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-virtual-.*'
- 'apex-verify-gate-.*'
@@ -408,6 +415,7 @@
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ PROMOTE=$PROMOTE
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
@@ -420,7 +428,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=$FUNCTEST_MODE
+ FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
@@ -570,7 +579,6 @@
blocking-jobs:
- 'apex-verify.*'
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-testsuite-.+-baremetal-.+'
- throttle:
@@ -758,7 +766,7 @@
# CSIT promote
- job-template:
- name: 'apex-csit-promote-daily-{stream}'
+ name: 'apex-csit-promote-daily-{stream}-{os_version}'
# Job template for promoting CSIT Snapshots
#
@@ -778,6 +786,14 @@
branch: '{branch}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
+ - string:
+ name: ARTIFACT_VERSION
+ default: dev
+ description: "Used for overriding the ARTIFACT_VERSION"
+ - string:
+ name: PROMOTE
+ default: 'True'
+ description: "Used for overriding the PROMOTE"
properties:
- build-blocker:
@@ -785,7 +801,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-verify.*'
- - 'apex-deploy.*'
- 'apex-runner.*'
- 'apex-daily.*'
@@ -794,40 +809,24 @@
builders:
- multijob:
- name: deploy-virtual
+ name: apex-virtual-deploy-test
condition: SUCCESSFUL
projects:
- - name: 'apex-deploy-virtual-{stream}'
- current-parameters: false
+ - name: 'apex-virtual-{stream}'
+ current-parameters: true
predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
+ DEPLOY_SCENARIO=os-odl-{os_scenario}-noha
OPNFV_CLEAN=yes
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- PROMOTE=True
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- git-revision: false
- - multijob:
- name: functest-smoke
- condition: SUCCESSFUL
- projects:
- - name: 'functest-apex-virtual-suite-{stream}'
- current-parameters: false
- predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
FUNCTEST_SUITE_NAME=tempest_smoke_serial
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ FUNCTEST_MODE=testcase
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
- git-revision: false
+ git-revision: true
- multijob:
name: create snapshot
condition: SUCCESSFUL
@@ -1494,7 +1493,23 @@
name: Baremetal Deploy and Test Phase
condition: SUCCESSFUL
projects:
- - name: 'apex-os-odl-master_upstream-noha-baremetal-master'
+ - name: 'apex-os-odl-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-odl-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-queens-noha-baremetal-master'
node-parameters: false
current-parameters: false
predefined-parameters: |
@@ -1502,7 +1517,7 @@
kill-phase-on: NEVER
abort-all-job: true
git-revision: false
- - name: 'apex-os-odl-queens_upstream-noha-baremetal-master'
+ - name: 'apex-os-odl-queens-ha-baremetal-master'
node-parameters: false
current-parameters: false
predefined-parameters: |
diff --git a/jjb/apex/apex.yml.j2 b/jjb/apex/apex.yaml.j2
index 4620bbc7e..3397f1ed2 100644
--- a/jjb/apex/apex.yml.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}'
+ - 'apex-csit-promote-daily-{stream}-{os_version}'
- 'apex-fdio-promote-daily-{stream}'
- 'apex-{scenario}-baremetal-{scenario_stream}'
- 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
@@ -25,7 +25,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'master'
disable_daily: false
disable_promote: false
@@ -35,7 +35,7 @@
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
- verify-scenario: 'os-odl-nofeature-ha'
+ verify-scenario: 'os-nosdn-nofeature-ha'
scenario_stream: 'fraser'
disable_daily: false
disable_promote: true
@@ -74,9 +74,12 @@
- 'virtual'
os_version:
- - 'pike'
- - 'queens'
- - 'master'
+ - 'pike':
+ os_scenario: 'pike'
+ - 'queens':
+ os_scenario: 'queens'
+ - 'master':
+ os_scenario: 'nofeature'
# Fetch Logs Job
@@ -245,6 +248,7 @@
parameters:
- '{project}-defaults'
- '{project}-virtual-{stream}-defaults'
+ - 'functest-suite-parameter'
- project-parameter:
project: '{project}'
branch: '{branch}'
@@ -266,7 +270,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-virtual-.*'
- 'apex-verify-gate-.*'
@@ -292,6 +295,7 @@
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ PROMOTE=$PROMOTE
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
@@ -304,7 +308,8 @@
current-parameters: false
predefined-parameters: |
DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- FUNCTEST_SUITE_NAME=healthcheck
+ FUNCTEST_MODE=$FUNCTEST_MODE
+ FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
@@ -454,7 +459,6 @@
blocking-jobs:
- 'apex-verify.*'
- 'apex-runner.*'
- - 'apex-.*-promote.*'
- 'apex-run.*'
- 'apex-testsuite-.+-baremetal-.+'
- throttle:
@@ -642,7 +646,7 @@
# CSIT promote
- job-template:
- name: 'apex-csit-promote-daily-{stream}'
+ name: 'apex-csit-promote-daily-{stream}-{os_version}'
# Job template for promoting CSIT Snapshots
#
@@ -662,6 +666,14 @@
branch: '{branch}'
- apex-parameter:
gs-pathname: '{gs-pathname}'
+ - string:
+ name: ARTIFACT_VERSION
+ default: dev
+ description: "Used for overriding the ARTIFACT_VERSION"
+ - string:
+ name: PROMOTE
+ default: 'True'
+ description: "Used for overriding the PROMOTE"
properties:
- build-blocker:
@@ -669,7 +681,6 @@
block-level: 'NODE'
blocking-jobs:
- 'apex-verify.*'
- - 'apex-deploy.*'
- 'apex-runner.*'
- 'apex-daily.*'
@@ -678,40 +689,24 @@
builders:
- multijob:
- name: deploy-virtual
+ name: apex-virtual-deploy-test
condition: SUCCESSFUL
projects:
- - name: 'apex-deploy-virtual-{stream}'
- current-parameters: false
+ - name: 'apex-virtual-{stream}'
+ current-parameters: true
predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
+ DEPLOY_SCENARIO=os-odl-{os_scenario}-noha
OPNFV_CLEAN=yes
GERRIT_BRANCH=$GERRIT_BRANCH
GERRIT_REFSPEC=$GERRIT_REFSPEC
GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- PROMOTE=True
- node-parameters: true
- kill-phase-on: FAILURE
- abort-all-job: true
- git-revision: false
- - multijob:
- name: functest-smoke
- condition: SUCCESSFUL
- projects:
- - name: 'functest-apex-virtual-suite-{stream}'
- current-parameters: false
- predefined-parameters: |
- DEPLOY_SCENARIO=os-odl-{os_version}_upstream-noha
FUNCTEST_SUITE_NAME=tempest_smoke_serial
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ FUNCTEST_MODE=testcase
node-parameters: true
kill-phase-on: FAILURE
abort-all-job: true
- git-revision: false
+ git-revision: true
- multijob:
name: create snapshot
condition: SUCCESSFUL
diff --git a/jjb/apex/scenarios.yaml.hidden b/jjb/apex/scenarios.yaml.hidden
index 2650eafbb..8375f6163 100644
--- a/jjb/apex/scenarios.yaml.hidden
+++ b/jjb/apex/scenarios.yaml.hidden
@@ -1,6 +1,8 @@
master:
- 'os-odl-nofeature-noha'
+ - 'os-odl-nofeature-ha'
- 'os-odl-queens-noha'
+ - 'os-odl-queens-ha'
fraser:
- 'os-nosdn-nofeature-noha'
- 'os-nosdn-nofeature-ha'
diff --git a/jjb/armband/armband-ci-jobs.yml b/jjb/armband/armband-ci-jobs.yaml
index b8ffc16fa..fe2bbcc63 100644
--- a/jjb/armband/armband-ci-jobs.yml
+++ b/jjb/armband/armband-ci-jobs.yaml
@@ -127,7 +127,7 @@
same-node: true
block: true
- trigger-builds:
- - project: 'functest-{installer}-{pod}-arm-daily-{stream}'
+ - project: 'functest-{installer}-{pod}-daily-{stream}'
current-parameters: false
predefined-parameters:
DEPLOY_SCENARIO={scenario}
diff --git a/jjb/armband/armband-verify-jobs.yml b/jjb/armband/armband-verify-jobs.yaml
index 08cf3c084..08cf3c084 100644
--- a/jjb/armband/armband-verify-jobs.yml
+++ b/jjb/armband/armband-verify-jobs.yaml
diff --git a/jjb/auto/auto.yaml b/jjb/auto/auto.yaml
new file mode 100644
index 000000000..518f8ea87
--- /dev/null
+++ b/jjb/auto/auto.yaml
@@ -0,0 +1,126 @@
+---
+# jenkins job templates for Auto
+- project:
+ name: 'auto-ci-jobs'
+ project: 'auto'
+
+ # -------------------------------
+ # BRANCH ANCHORS
+ # -------------------------------
+ master: &master
+ stream: master
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+ fraser: &fraser
+ stream: fraser
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ disabled: false
+ # -------------------------------
+ # DEPLOY TYPE ANCHORS
+ # -------------------------------
+ baremetal: &baremetal
+ installer: 'fuel'
+ slave-label: 'auto-baremetal'
+ # -------------------------------
+ # POD, INSTALLER, AND BRANCH MAPPING
+ # -------------------------------
+ # CI POD's
+ # -------------------------------
+ # fraser
+ # -------------------------------
+ pod:
+ # yamllint disable rule:key-duplicates
+ - auto-baremetal:
+ <<: *baremetal
+ <<: *fraser
+ # -------------------------------
+ # master
+ # -------------------------------
+ - auto-baremetal:
+ <<: *baremetal
+ <<: *master
+ # yamllint enable rule:key-duplicates
+ # -------------------------------
+ # scenarios
+ # -------------------------------
+ scenario:
+ # HA scenarios
+ - 'os-nosdn-onap-ha':
+ auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger'
+
+ jobs:
+ - '{installer}-{scenario}-{pod}-auto-daily-{stream}'
+ - '{installer}-deploy-{pod}-daily-{stream}'
+ - '{project}-verify-basic'
+
+########################
+# job templates
+########################
+- job-template:
+ name: '{installer}-{scenario}-{pod}-auto-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ properties:
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 4
+ max-per-node: 1
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '{installer}-os-.*?-{pod}-auto-daily-.*'
+ block-level: 'NODE'
+
+ wrappers:
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+
+ triggers:
+ - '{auto-trigger-name}'
+
+ parameters:
+ - project-parameter:
+ project: 'armband'
+ branch: '{branch}'
+ - '{installer}-defaults':
+ gs-pathname: '{gs-pathname}'
+ - '{slave-label}-defaults':
+ installer: '{installer}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+
+ builders:
+ - trigger-builds:
+ - project: '{installer}-deploy-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters:
+ DEPLOY_SCENARIO='os-nosdn-nofeature-ha'
+ same-node: true
+ block: true
+
+########################
+# trigger macros
+########################
+# CI PODs
+# ----------------------------------------------------------------
+# Auto CI Baremetal Triggers running against master branch
+# ----------------------------------------------------------------
+- trigger:
+ name: 'fuel-os-nosdn-onap-ha-auto-baremetal-master-trigger'
+ triggers:
+ - timed: '0 1 * * *'
+# ---------------------------------------------------------------------
+# Auto CI Baremetal Triggers running against fraser branch
+# ---------------------------------------------------------------------
+- trigger:
+ name: 'fuel-os-nosdn-onap-ha-auto-baremetal-fraser-trigger'
+ triggers:
+ - timed: ''
diff --git a/jjb/auto/auto.yml b/jjb/auto/auto.yml
deleted file mode 100644
index c28dc5618..000000000
--- a/jjb/auto/auto.yml
+++ /dev/null
@@ -1,8 +0,0 @@
----
-- project:
- name: auto
-
- project: '{name}'
-
- jobs:
- - '{project}-verify-basic'
diff --git a/jjb/availability/availability.yml b/jjb/availability/availability.yaml
index 2d3473499..2d3473499 100644
--- a/jjb/availability/availability.yml
+++ b/jjb/availability/availability.yaml
diff --git a/jjb/barometer/barometer.yml b/jjb/barometer/barometer.yaml
index 92176207f..92176207f 100644
--- a/jjb/barometer/barometer.yml
+++ b/jjb/barometer/barometer.yaml
diff --git a/jjb/bottlenecks/bottlenecks-ci-jobs.yml b/jjb/bottlenecks/bottlenecks-ci-jobs.yaml
index 41b73a290..41b73a290 100644
--- a/jjb/bottlenecks/bottlenecks-ci-jobs.yml
+++ b/jjb/bottlenecks/bottlenecks-ci-jobs.yaml
diff --git a/jjb/bottlenecks/bottlenecks-project-jobs.yml b/jjb/bottlenecks/bottlenecks-project-jobs.yaml
index d4930d745..d4930d745 100644
--- a/jjb/bottlenecks/bottlenecks-project-jobs.yml
+++ b/jjb/bottlenecks/bottlenecks-project-jobs.yaml
diff --git a/jjb/calipso/calipso.yml b/jjb/calipso/calipso.yaml
index 6701e7ca2..6701e7ca2 100644
--- a/jjb/calipso/calipso.yml
+++ b/jjb/calipso/calipso.yaml
diff --git a/jjb/ci_gate_security/opnfv-ci-gate-security.yml b/jjb/ci_gate_security/opnfv-ci-gate-security.yaml
index cd3831310..2e500befb 100644
--- a/jjb/ci_gate_security/opnfv-ci-gate-security.yml
+++ b/jjb/ci_gate_security/opnfv-ci-gate-security.yaml
@@ -151,8 +151,6 @@
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
projects:
- project-compare-type: 'REG_EXP'
project-pattern: 'apex|armband|bamboo|barometer|bottlenecks|calipso|compass4nfv|conductor|copper|cperf|daisy|doctor|dovetail|dpacc|enfv|fds|fuel|functest|pharos|releng|sandbox|yardstick|infra|ipv6|kvmfornfv|models|moon|netready'
diff --git a/jjb/clover/clover-project.yml b/jjb/clover/clover-project.yaml
index 31eed8f14..31eed8f14 100644
--- a/jjb/clover/clover-project.yml
+++ b/jjb/clover/clover-project.yaml
diff --git a/jjb/compass4nfv/compass-ci-jobs.yml b/jjb/compass4nfv/compass-ci-jobs.yaml
index 8eeaabfaa..8eeaabfaa 100644
--- a/jjb/compass4nfv/compass-ci-jobs.yml
+++ b/jjb/compass4nfv/compass-ci-jobs.yaml
diff --git a/jjb/compass4nfv/compass-dovetail-jobs.yml b/jjb/compass4nfv/compass-dovetail-jobs.yaml
index c09086348..c09086348 100644
--- a/jjb/compass4nfv/compass-dovetail-jobs.yml
+++ b/jjb/compass4nfv/compass-dovetail-jobs.yaml
diff --git a/jjb/compass4nfv/compass-project-jobs.yml b/jjb/compass4nfv/compass-project-jobs.yaml
index dc935f024..dc935f024 100644
--- a/jjb/compass4nfv/compass-project-jobs.yml
+++ b/jjb/compass4nfv/compass-project-jobs.yaml
diff --git a/jjb/compass4nfv/compass-verify-jobs.yml b/jjb/compass4nfv/compass-verify-jobs.yaml
index c357ff641..c357ff641 100644
--- a/jjb/compass4nfv/compass-verify-jobs.yml
+++ b/jjb/compass4nfv/compass-verify-jobs.yaml
diff --git a/jjb/conductor/conductor.yml b/jjb/conductor/conductor.yaml
index 8a128da37..8a128da37 100644
--- a/jjb/conductor/conductor.yml
+++ b/jjb/conductor/conductor.yaml
diff --git a/jjb/container4nfv/container4nfv-arm64.yml b/jjb/container4nfv/container4nfv-arm64.yaml
index 5f5bc8627..5f5bc8627 100644
--- a/jjb/container4nfv/container4nfv-arm64.yml
+++ b/jjb/container4nfv/container4nfv-arm64.yaml
diff --git a/jjb/container4nfv/container4nfv-project.yml b/jjb/container4nfv/container4nfv-project.yaml
index 194a1a989..194a1a989 100644
--- a/jjb/container4nfv/container4nfv-project.yml
+++ b/jjb/container4nfv/container4nfv-project.yaml
diff --git a/jjb/container4nfv/yardstick-arm64.yml b/jjb/container4nfv/yardstick-arm64.yaml
index 6ed345ecc..6ed345ecc 100644
--- a/jjb/container4nfv/yardstick-arm64.yml
+++ b/jjb/container4nfv/yardstick-arm64.yaml
diff --git a/jjb/copper/copper.yml b/jjb/copper/copper.yaml
index 620aefd9c..620aefd9c 100644
--- a/jjb/copper/copper.yml
+++ b/jjb/copper/copper.yaml
diff --git a/jjb/cperf/cperf-ci-jobs.yml b/jjb/cperf/cperf-ci-jobs.yaml
index fdd3509d1..fdd3509d1 100644
--- a/jjb/cperf/cperf-ci-jobs.yml
+++ b/jjb/cperf/cperf-ci-jobs.yaml
diff --git a/jjb/daisy4nfv/daisy-daily-jobs.yml b/jjb/daisy4nfv/daisy-daily-jobs.yaml
index 1769bb4da..ba03bc3f2 100644
--- a/jjb/daisy4nfv/daisy-daily-jobs.yml
+++ b/jjb/daisy4nfv/daisy-daily-jobs.yaml
@@ -18,13 +18,13 @@
master: &master
stream: master
branch: '{stream}'
- disabled: false
+ disabled: true
gs-pathname: ''
fraser: &fraser
stream: fraser
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
# -------------------------------
# POD, INSTALLER, AND BRANCH MAPPING
diff --git a/jjb/daisy4nfv/daisy-project-jobs.yml b/jjb/daisy4nfv/daisy-project-jobs.yaml
index cb0dea196..ec5ba71f2 100644
--- a/jjb/daisy4nfv/daisy-project-jobs.yml
+++ b/jjb/daisy4nfv/daisy-project-jobs.yaml
@@ -20,11 +20,11 @@
- master:
branch: '{stream}'
gs-pathname: ''
- disabled: false
+ disabled: true
- fraser:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
phase:
- 'build':
diff --git a/jjb/daisy4nfv/daisy4nfv-merge-jobs.yml b/jjb/daisy4nfv/daisy4nfv-merge-jobs.yaml
index 3a0a59fc4..7e03fabaf 100644
--- a/jjb/daisy4nfv/daisy4nfv-merge-jobs.yml
+++ b/jjb/daisy4nfv/daisy4nfv-merge-jobs.yaml
@@ -18,11 +18,11 @@
- master:
branch: '{stream}'
gs-pathname: ''
- disabled: false
+ disabled: true
- fraser:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
#####################################
# patch merge phases
#####################################
diff --git a/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yaml
index 777b67795..033beeb6d 100644
--- a/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml
+++ b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yaml
@@ -15,11 +15,11 @@
- master:
branch: '{stream}'
gs-pathname: ''
- disabled: false
+ disabled: true
- fraser:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: false
+ disabled: true
#####################################
# patch verification phases
diff --git a/jjb/doctor/doctor.yml b/jjb/doctor/doctor.yaml
index 3985356c1..1c12563a8 100644
--- a/jjb/doctor/doctor.yml
+++ 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/domino/domino.yml b/jjb/domino/domino.yaml
index e91260463..e91260463 100644
--- a/jjb/domino/domino.yml
+++ b/jjb/domino/domino.yaml
diff --git a/jjb/dovetail/dovetail-artifacts-upload.yml b/jjb/dovetail/dovetail-artifacts-upload.yaml
index 9a11c6e26..9a11c6e26 100644
--- a/jjb/dovetail/dovetail-artifacts-upload.yml
+++ b/jjb/dovetail/dovetail-artifacts-upload.yaml
diff --git a/jjb/dovetail/dovetail-ci-jobs.yml b/jjb/dovetail/dovetail-ci-jobs.yaml
index a95617ae4..a95617ae4 100644
--- a/jjb/dovetail/dovetail-ci-jobs.yml
+++ b/jjb/dovetail/dovetail-ci-jobs.yaml
diff --git a/jjb/dovetail/dovetail-project-jobs.yml b/jjb/dovetail/dovetail-project-jobs.yaml
index 1accffcdb..1accffcdb 100644
--- a/jjb/dovetail/dovetail-project-jobs.yml
+++ b/jjb/dovetail/dovetail-project-jobs.yaml
diff --git a/jjb/dovetail/dovetail-run.sh b/jjb/dovetail/dovetail-run.sh
index 9616fb310..df681dd59 100755
--- a/jjb/dovetail/dovetail-run.sh
+++ b/jjb/dovetail/dovetail-run.sh
@@ -124,7 +124,7 @@ if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_T
awk '{print \$2; exit}'") &> /dev/null
cat << EOF >${DOVETAIL_CONFIG}/pod.yaml
nodes:
-- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /root/.ssh/id_rsa, role: controller, user: ${ssh_user}}
+- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /home/opnfv/userconfig/pre_config/id_rsa, role: controller, user: ${ssh_user}}
EOF
fi
@@ -154,7 +154,8 @@ if [[ ! -f ${DOVETAIL_CONFIG}/pod.yaml ]]; then
fi
cmd="sudo python ${releng_repo}/utils/create_pod_file.py -t ${INSTALLER_TYPE} \
- -i ${INSTALLER_IP} ${options} -f ${DOVETAIL_CONFIG}/pod.yaml"
+ -i ${INSTALLER_IP} ${options} -f ${DOVETAIL_CONFIG}/pod.yaml \
+ -s /home/opnfv/userconfig/pre_config/id_rsa"
echo ${cmd}
${cmd}
diff --git a/jjb/dovetail/dovetail-weekly-jobs.yml b/jjb/dovetail/dovetail-weekly-jobs.yaml
index 5a162bb7f..5a162bb7f 100644
--- a/jjb/dovetail/dovetail-weekly-jobs.yml
+++ b/jjb/dovetail/dovetail-weekly-jobs.yaml
diff --git a/jjb/dpacc/dpacc.yml b/jjb/dpacc/dpacc.yaml
index a9a091413..a9a091413 100644
--- a/jjb/dpacc/dpacc.yml
+++ b/jjb/dpacc/dpacc.yaml
diff --git a/jjb/escalator/escalator.yml b/jjb/escalator/escalator.yaml
index d203dc113..d203dc113 100644
--- a/jjb/escalator/escalator.yml
+++ b/jjb/escalator/escalator.yaml
diff --git a/jjb/fuel/fuel-daily-jobs.yml b/jjb/fuel/fuel-daily-jobs.yaml
index 7110daeaf..e636538ef 100644
--- a/jjb/fuel/fuel-daily-jobs.yml
+++ b/jjb/fuel/fuel-daily-jobs.yaml
@@ -86,6 +86,8 @@
auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
- 'os-ovn-nofeature-noha':
auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+ - 'os-odl-ovs-noha':
+ auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
- 'os-nosdn-kvm-noha':
auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
- 'os-nosdn-ovs-noha':
@@ -107,6 +109,8 @@
stream: danube
- scenario: os-ovn-nofeature-ha
stream: danube
+ - scenario: os-odl-ovs-noha
+ stream: fraser
jobs:
- 'fuel-{scenario}-{pod}-daily-{stream}'
@@ -428,6 +432,10 @@
triggers:
- timed: ''
- trigger:
+ name: 'fuel-os-odl-ovs-noha-baremetal-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-master-trigger'
triggers:
- timed: ''
@@ -581,6 +589,10 @@
triggers:
- timed: '5 23 * * *'
- trigger:
+ name: 'fuel-os-odl-ovs-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '5 2 * * *'
+- trigger:
name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger'
triggers:
- timed: '' # '35 6 * * *'
@@ -733,6 +745,10 @@
triggers:
- timed: ''
- trigger:
+ name: 'fuel-os-odl-ovs-noha-zte-pod1-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-master-trigger'
triggers:
- timed: ''
diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh
index 35bf3dc01..433061a96 100755
--- a/jjb/fuel/fuel-deploy.sh
+++ b/jjb/fuel/fuel-deploy.sh
@@ -55,8 +55,8 @@ if [ "${PROJECT}" = 'fuel' ]; then
fi
else
SUDO=
- # Armband currently supports arm, enea labs
- if [[ ! "${LAB_NAME}" =~ (arm|enea) ]]; then
+ # Armband currently supports arm, enea, unh labs
+ if [[ ! "${LAB_NAME}" =~ (arm|enea|unh) ]]; then
echo "Unsupported/unidentified lab ${LAB_NAME}. Cannot continue!"
exit 1
fi
diff --git a/jjb/fuel/fuel-project-jobs.yml b/jjb/fuel/fuel-project-jobs.yaml
index fc49f6348..fc49f6348 100644
--- a/jjb/fuel/fuel-project-jobs.yml
+++ b/jjb/fuel/fuel-project-jobs.yaml
diff --git a/jjb/fuel/fuel-verify-jobs.yml b/jjb/fuel/fuel-verify-jobs.yaml
index bef6a5094..bef6a5094 100644
--- a/jjb/fuel/fuel-verify-jobs.yml
+++ b/jjb/fuel/fuel-verify-jobs.yaml
diff --git a/jjb/fuel/fuel-weekly-jobs.yml b/jjb/fuel/fuel-weekly-jobs.yaml
index aca625d2b..aca625d2b 100644
--- a/jjb/fuel/fuel-weekly-jobs.yml
+++ b/jjb/fuel/fuel-weekly-jobs.yaml
diff --git a/jjb/functest/functest-daily-jobs.yml b/jjb/functest/functest-daily-jobs.yaml
index ae226b665..4fc67e7f8 100644
--- a/jjb/functest/functest-daily-jobs.yml
+++ b/jjb/functest/functest-daily-jobs.yaml
@@ -201,8 +201,6 @@
- 'suite':
job-timeout: 60
- 'daily':
- job-timeout: 360
- - 'arm-daily':
job-timeout: 480
jobs:
@@ -268,14 +266,6 @@
description: "Daily suite name to run"
- parameter:
- name: functest-arm-daily-parameter
- parameters:
- - string:
- name: FUNCTEST_MODE
- default: 'arm-daily'
- description: "Daily suite name (Aarch64) to run"
-
-- parameter:
name: functest-suite-parameter
parameters:
- choice:
@@ -368,14 +358,6 @@
- 'functest-exit'
- builder:
- name: functest-arm-daily-builder
- builders:
- - 'functest-cleanup'
- - 'functest-arm-daily'
- - 'functest-store-results'
- - 'functest-exit'
-
-- builder:
name: functest-suite-builder
builders:
- 'functest-cleanup'
@@ -409,17 +391,6 @@
# yamllint enable rule:indentation
- builder:
- name: functest-arm-daily
- builders:
- # yamllint disable rule:indentation
- - shell:
- !include-raw:
- - ./functest-env-presetup.sh
- - ../../utils/fetch_os_creds.sh
- - ./functest-alpine.sh
-
-# yamllint enable rule:indentation
-- builder:
name: functest-store-results
builders:
- shell:
diff --git a/jjb/functest/functest-docker.yml b/jjb/functest/functest-docker.yaml
index 50c7c3816..50c7c3816 100644
--- a/jjb/functest/functest-docker.yml
+++ b/jjb/functest/functest-docker.yaml
diff --git a/jjb/functest/functest-kubernetes-docker.yml b/jjb/functest/functest-kubernetes-docker.yaml
index 2085251c6..2085251c6 100644
--- a/jjb/functest/functest-kubernetes-docker.yml
+++ b/jjb/functest/functest-kubernetes-docker.yaml
diff --git a/jjb/functest/functest-kubernetes-project-jobs.yml b/jjb/functest/functest-kubernetes-project-jobs.yaml
index 7f8dd8d53..7f8dd8d53 100644
--- a/jjb/functest/functest-kubernetes-project-jobs.yml
+++ b/jjb/functest/functest-kubernetes-project-jobs.yaml
diff --git a/jjb/functest/functest-project-jobs.yml b/jjb/functest/functest-project-jobs.yaml
index 9a123053f..9a123053f 100644
--- a/jjb/functest/functest-project-jobs.yml
+++ b/jjb/functest/functest-project-jobs.yaml
diff --git a/jjb/functest/functest-weekly-jobs.yml b/jjb/functest/functest-weekly-jobs.yaml
index c88fa0050..c88fa0050 100644
--- a/jjb/functest/functest-weekly-jobs.yml
+++ b/jjb/functest/functest-weekly-jobs.yaml
diff --git a/jjb/functest/xtesting-docker.yml b/jjb/functest/xtesting-docker.yaml
index 251c3954e..251c3954e 100644
--- a/jjb/functest/xtesting-docker.yml
+++ b/jjb/functest/xtesting-docker.yaml
diff --git a/jjb/functest/xtesting-project-jobs.yml b/jjb/functest/xtesting-project-jobs.yaml
index e109387c6..e109387c6 100644
--- a/jjb/functest/xtesting-project-jobs.yml
+++ b/jjb/functest/xtesting-project-jobs.yaml
diff --git a/jjb/global-jjb b/jjb/global-jjb
-Subproject 779110b5cd63f3eabb63598a1be79d9b9ba8546
+Subproject 9b240453b91f3c4b0844ea1c593721a1c421caa
diff --git a/jjb/global/basic-jobs.yml b/jjb/global/basic-jobs.yaml
index a8b9cffbc..a8b9cffbc 100644
--- a/jjb/global/basic-jobs.yml
+++ b/jjb/global/basic-jobs.yaml
diff --git a/jjb/global/installer-params.yml b/jjb/global/installer-params.yaml
index f663c4556..f663c4556 100644
--- a/jjb/global/installer-params.yml
+++ b/jjb/global/installer-params.yaml
diff --git a/jjb/global/releng-defaults.yml b/jjb/global/releng-defaults.yaml
index 2e94767e8..2e94767e8 100644
--- a/jjb/global/releng-defaults.yml
+++ b/jjb/global/releng-defaults.yaml
diff --git a/jjb/global/releng-macros.yml b/jjb/global/releng-macros.yaml
index b7335fafa..b282cff4f 100644
--- a/jjb/global/releng-macros.yml
+++ b/jjb/global/releng-macros.yaml
@@ -107,6 +107,7 @@
- 'origin/$BRANCH'
timeout: 15
per-build-tag: false
+ skip-tag: true
shallow-clone: false
use-author: false
ignore-notify: false
@@ -120,6 +121,17 @@
choosing-strategy: 'gerrit'
refspec: '$GERRIT_REFSPEC'
<<: *git-scm-defaults
+
+- scm:
+ name: git-scm-gerrit-with-submodules
+ scm:
+ - git:
+ choosing-strategy: 'gerrit'
+ refspec: '$GERRIT_REFSPEC'
+ submodule:
+ recursive: true
+ timeout: 20
+ <<: *git-scm-defaults
- scm:
name: git-scm-with-submodules
scm:
@@ -129,6 +141,7 @@
refspec: ''
branches:
- 'refs/heads/{branch}'
+ per-build-tag: false
skip-tag: true
wipe-workspace: true
submodule:
@@ -139,6 +152,8 @@
name: git-scm-openstack
scm:
- git: &git-scm-openstack-defaults
+ per-build-tag: false
+ skip-tag: true
url: '$GIT_BASE'
branches:
- 'origin/$BRANCH'
@@ -971,21 +986,31 @@
name: 'report-provision-result'
publishers:
- postbuildscript:
- script-only-if-succeeded: true
builders:
- - shell: |
- echo "export PROVISION_RESULT=PASS" >> $WORKSPACE/installer_track.sh
- echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
- echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
- - shell:
- !include-raw: installer-report.sh
+ - role: BOTH
+ build-on:
+ - SUCCESS
+ build-steps:
+ - shell: |
+ echo "export PROVISION_RESULT=PASS" >> $WORKSPACE/installer_track.sh
+ echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
+ echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
+ - shell:
+ !include-raw: installer-report.sh
+ mark-unstable-if-failed: true
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: true
builders:
- - shell: |
- echo "export PROVISION_RESULT=FAIL" >> $WORKSPACE/installer_track.sh
- echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
- echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
- - shell:
- !include-raw: installer-report.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - UNSTABLE
+ build-steps:
+ - shell: |
+ echo "export PROVISION_RESULT=FAIL" >> $WORKSPACE/installer_track.sh
+ echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
+ echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
+ - shell:
+ !include-raw: installer-report.sh
+ mark-unstable-if-failed: true
diff --git a/jjb/global/slave-params.yml b/jjb/global/slave-params.yaml
index 9d8bed45f..0219be54b 100644
--- a/jjb/global/slave-params.yml
+++ b/jjb/global/slave-params.yaml
@@ -278,6 +278,17 @@
description: 'Base URI to the configuration directory'
- parameter:
+ name: 'auto-baremetal-defaults'
+ parameters:
+ - label:
+ name: SLAVE_LABEL
+ default: 'auto-baremetal'
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
+
+- parameter:
name: 'joid-baremetal-defaults'
parameters:
- label:
diff --git a/jjb/ipv6/ipv6.yml b/jjb/ipv6/ipv6.yaml
index 2946ec77b..2946ec77b 100644
--- a/jjb/ipv6/ipv6.yml
+++ b/jjb/ipv6/ipv6.yaml
diff --git a/jjb/joid/joid-daily-jobs.yml b/jjb/joid/joid-daily-jobs.yaml
index 2719c7292..2719c7292 100644
--- a/jjb/joid/joid-daily-jobs.yml
+++ b/jjb/joid/joid-daily-jobs.yaml
diff --git a/jjb/joid/joid-verify-jobs.yml b/jjb/joid/joid-verify-jobs.yaml
index 2d1c7c9f3..2d1c7c9f3 100644
--- a/jjb/joid/joid-verify-jobs.yml
+++ b/jjb/joid/joid-verify-jobs.yaml
diff --git a/jjb/kvmfornfv/kvmfornfv.yml b/jjb/kvmfornfv/kvmfornfv.yaml
index ad497e97d..ad497e97d 100644
--- a/jjb/kvmfornfv/kvmfornfv.yml
+++ b/jjb/kvmfornfv/kvmfornfv.yaml
diff --git a/jjb/models/models.yml b/jjb/models/models.yaml
index 40fcf68de..40fcf68de 100644
--- a/jjb/models/models.yml
+++ b/jjb/models/models.yaml
diff --git a/jjb/moon/moon.yml b/jjb/moon/moon.yaml
index 73b0fc731..73b0fc731 100644
--- a/jjb/moon/moon.yml
+++ b/jjb/moon/moon.yaml
diff --git a/jjb/netready/netready.yml b/jjb/netready/netready.yaml
index 798029373..798029373 100644
--- a/jjb/netready/netready.yml
+++ b/jjb/netready/netready.yaml
diff --git a/jjb/nfvbench/nfvbench.yml b/jjb/nfvbench/nfvbench.yaml
index 44e85d2c8..44e85d2c8 100644
--- a/jjb/nfvbench/nfvbench.yml
+++ b/jjb/nfvbench/nfvbench.yaml
diff --git a/jjb/onosfw/onosfw.yml b/jjb/onosfw/onosfw.yaml
index 58a50bd57..58a50bd57 100644
--- a/jjb/onosfw/onosfw.yml
+++ b/jjb/onosfw/onosfw.yaml
diff --git a/jjb/openci/create-ane.sh b/jjb/openci/create-ane.sh
new file mode 100755
index 000000000..8a4da8f52
--- /dev/null
+++ b/jjb/openci/create-ane.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 Ericsson AB 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
+##############################################################################
+set -o errexit
+set -o nounset
+set -o pipefail
+
+# This script creates ArtifactPublishedEvent
+# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is
+# constructed on a single line. This is something that needs to be fixed properly
+
+cat << EOF > $WORKSPACE/event.properties
+type=$PUBLISH_EVENT_TYPE
+origin=$PUBLISH_EVENT_ORIGIN
+eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'artifactLocation': '$ARTIFACT_LOCATION', 'confidenceLevel': { $CONFIDENCE_LEVEL } }"
+EOF
+echo "Constructed $PUBLISH_EVENT_TYPE"
+echo "--------------------------------------------"
+cat $WORKSPACE/event.properties
+echo "--------------------------------------------"
diff --git a/jjb/openci/create-cde.sh b/jjb/openci/create-cde.sh
new file mode 100755
index 000000000..410db50e6
--- /dev/null
+++ b/jjb/openci/create-cde.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 Ericsson AB 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
+##############################################################################
+set -o errexit
+set -o nounset
+set -o pipefail
+
+# This script creates CompositionDefinedEvent
+# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is
+# constructed on a single line. This is something that needs to be fixed properly
+
+cat << EOF > $WORKSPACE/event.properties
+type=$PUBLISH_EVENT_TYPE
+origin=$PUBLISH_EVENT_ORIGIN
+scenario=$DEPLOY_SCENARIO
+eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'compositionName': '$DEPLOY_SCENARIO', 'compositionMetadataUrl': '$SCENARIO_METADATA_LOCATION' }"
+EOF
+echo "Constructed $PUBLISH_EVENT_TYPE"
+echo "--------------------------------------------"
+cat $WORKSPACE/event.properties
+echo "--------------------------------------------"
diff --git a/jjb/openci/create-clme.sh b/jjb/openci/create-clme.sh
new file mode 100755
index 000000000..5e8ee10c9
--- /dev/null
+++ b/jjb/openci/create-clme.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 Ericsson AB 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
+##############################################################################
+set -o errexit
+set -o nounset
+set -o pipefail
+
+# This script creates ConfidenceLevelModifiedEvent
+# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is
+# constructed on a single line. This is something that needs to be fixed properly
+
+cat << EOF > $WORKSPACE/event.properties
+type=$PUBLISH_EVENT_TYPE
+origin=$PUBLISH_EVENT_ORIGIN
+scenario=$DEPLOY_SCENARIO
+eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'compositionName': '$DEPLOY_SCENARIO', 'compositionMetadataUrl': '$SCENARIO_METADATA_LOCATION', 'confidenceLevel': { $CONFIDENCE_LEVEL } }"
+EOF
+echo "Constructed $PUBLISH_EVENT_TYPE"
+echo "--------------------------------------------"
+cat $WORKSPACE/event.properties
+echo "--------------------------------------------"
diff --git a/jjb/openci/openci-odl-daily-jobs.yaml b/jjb/openci/openci-odl-daily-jobs.yaml
new file mode 100644
index 000000000..d80feadf6
--- /dev/null
+++ b/jjb/openci/openci-odl-daily-jobs.yaml
@@ -0,0 +1,99 @@
+---
+- project:
+ name: openci-odl
+
+ project: '{name}'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ jobs:
+ - 'openci-odl-autorelease-daily-{stream}'
+ - 'openci-odl-promote-daily-{stream}'
+
+# This job gets triggered manually for the demo purposes.
+#
+# In prototype, either what this job does needs to be integrated to
+# ODL autorelease job or triggered by the upstream autorelease job.
+- job-template:
+ name: 'openci-odl-autorelease-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: ArtifactPublishedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: ODL
+ description: 'Originating community'
+ - string:
+ name: ARTIFACT_LOCATION
+ default: https://url/to/artifact/on/odl/nexus/$BUILD_NUMBER
+ description: 'The location of the artifact on ODL Nexus'
+ - string:
+ name: CONFIDENCE_LEVEL
+ default: "'autorelease': 'SUCCESS'"
+ description: 'The confidence level the published artifact gained'
+ - 'opnfv-build-defaults'
+
+ builders:
+ - shell:
+ !include-raw-escape: ./create-ane.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ msg-content:
+ $eventBody
+
+# This job gets triggered by a ConfidenceLevelModifiedEvent published
+# by OPNFV jobs so ODL can promote the autorelease artifact even further.
+#
+# This job is created for the demo purposes and might not be there for
+# the prototype.
+- job-template:
+ name: 'openci-odl-promote-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: 'OPNFV'
+ - field: type
+ expected-value: 'ConfidenceLevelModifiedEvent'
+ - field: scenario
+ expected-value: 'os-odl-nofeature'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ echo " Promoted ODL Autorelease artifact as release candidate!"
diff --git a/jjb/openci/openci-onap-daily-jobs.yaml b/jjb/openci/openci-onap-daily-jobs.yaml
new file mode 100644
index 000000000..28c3e6948
--- /dev/null
+++ b/jjb/openci/openci-onap-daily-jobs.yaml
@@ -0,0 +1,99 @@
+---
+- project:
+ name: openci-onap
+
+ project: '{name}'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ jobs:
+ - 'openci-onap-autorelease-daily-{stream}'
+ - 'openci-onap-promote-daily-{stream}'
+
+# This job gets triggered manually for the demo purposes.
+#
+# In prototype, either what this job does needs to be integrated to
+# ONAP autorelease job or triggered by the upstream autorelease job.
+- job-template:
+ name: 'openci-onap-autorelease-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: ArtifactPublishedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: ONAP
+ description: 'Originating community'
+ - string:
+ name: ARTIFACT_LOCATION
+ default: https://url/to/artifact/on/onap/nexus/$BUILD_NUMBER
+ description: 'The location of the artifact on ONAP Nexus'
+ - string:
+ name: CONFIDENCE_LEVEL
+ default: "'autorelease': 'SUCCESS'"
+ description: 'The confidence level the published artifact gained'
+ - 'opnfv-build-defaults'
+
+ builders:
+ - shell:
+ !include-raw-escape: ./create-ane.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ msg-content:
+ $eventBody
+
+# This job gets triggered by a ConfidenceLevelModifiedEvent published
+# by OPNFV jobs so ONAP can promote the autorelease artifact even further.
+#
+# This job is created for the demo purposes and might not be there for
+# the prototype.
+- job-template:
+ name: 'openci-onap-promote-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: 'OPNFV'
+ - field: type
+ expected-value: 'ConfidenceLevelModifiedEvent'
+ - field: scenario
+ expected-value: 'k8-nosdn-onap'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ echo " Promoted ONAP Autorelease artifact as release candidate!"
diff --git a/jjb/openci/openci-opnfv-daily-jobs.yaml b/jjb/openci/openci-opnfv-daily-jobs.yaml
new file mode 100644
index 000000000..cb150148b
--- /dev/null
+++ b/jjb/openci/openci-opnfv-daily-jobs.yaml
@@ -0,0 +1,149 @@
+---
+- project:
+ name: openci-opnfv
+
+ project: '{name}'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ scenario:
+ - 'os-odl-nofeature-ha':
+ origin: ODL
+ - 'k8-nosdn-onap-ha':
+ origin: ONAP
+
+ jobs:
+ - 'openci-opnfv-{scenario}-compose-daily-{stream}'
+ - 'openci-opnfv-{scenario}-test-daily-{stream}'
+
+- job-template:
+ name: 'openci-opnfv-{scenario}-compose-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: CompositionDefinedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: OPNFV
+ description: 'Originating community'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+ description: 'The scenario that is composed'
+ - string:
+ name: SCENARIO_METADATA_LOCATION
+ default: https://url/to/scenario/metadata/on/opnfv/artifact/repo/$BUILD_NUMBER
+ description: 'The location of the scenario metadata'
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: '{origin}'
+ - field: type
+ expected-value: 'ArtifactPublishedEvent'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ - shell:
+ !include-raw-escape: ./create-cde.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ scenario=$scenario
+ msg-content:
+ $eventBody
+
+- job-template:
+ name: 'openci-opnfv-{scenario}-test-daily-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - string:
+ name: PUBLISH_EVENT_TYPE
+ default: ConfidenceLevelModifiedEvent
+ description: 'The type of the event this job publishes'
+ - string:
+ name: PUBLISH_EVENT_ORIGIN
+ default: OPNFV
+ description: 'Originating community'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+ description: 'The scenario that is composed'
+ - string:
+ name: SCENARIO_METADATA_LOCATION
+ default: https://url/to/scenario/metadata/on/opnfv/artifact/repo/$BUILD_NUMBER
+ description: 'The location of the scenario metadata'
+ - string:
+ name: CONFIDENCE_LEVEL
+ default: "'opnfvdaily': 'SUCCESS'"
+ description: 'The confidence level the published artifact gained'
+ - 'opnfv-build-defaults'
+
+ triggers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ selector: CI_TYPE = 'custom'
+ checks:
+ - field: origin
+ expected-value: 'OPNFV'
+ - field: type
+ expected-value: 'CompositionDefinedEvent'
+ - field: scenario
+ expected-value: '{scenario}'
+
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo
+ echo "Triggered by $type"
+ echo "----------------------------------"
+ echo $CI_MESSAGE
+ echo "----------------------------------"
+ - shell:
+ !include-raw-escape: ./create-clme.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
+
+ publishers:
+ - jms-messaging:
+ provider-name: openci.activemq
+ msg-type: Custom
+ msg-props: |
+ type=$type
+ origin=$origin
+ scenario=$scenario
+ msg-content:
+ $eventBody
diff --git a/jjb/opera/opera-daily-jobs.yml b/jjb/opera/opera-daily-jobs.yaml
index f0841a34b..f0841a34b 100644
--- a/jjb/opera/opera-daily-jobs.yml
+++ b/jjb/opera/opera-daily-jobs.yaml
diff --git a/jjb/opera/opera-project-jobs.yml b/jjb/opera/opera-project-jobs.yaml
index f866342a4..f866342a4 100644
--- a/jjb/opera/opera-project-jobs.yml
+++ b/jjb/opera/opera-project-jobs.yaml
diff --git a/jjb/opera/opera-verify-jobs.yml b/jjb/opera/opera-verify-jobs.yaml
index 97c9a43ec..97c9a43ec 100644
--- a/jjb/opera/opera-verify-jobs.yml
+++ b/jjb/opera/opera-verify-jobs.yaml
diff --git a/jjb/opnfvdocs/opnfvdocs.yml b/jjb/opnfvdocs/opnfvdocs.yaml
index 5f08f69a4..5f08f69a4 100644
--- a/jjb/opnfvdocs/opnfvdocs.yml
+++ b/jjb/opnfvdocs/opnfvdocs.yaml
diff --git a/jjb/orchestra/orchestra-daily-jobs.yml b/jjb/orchestra/orchestra-daily-jobs.yaml
index 7c2deaec4..7c2deaec4 100644
--- a/jjb/orchestra/orchestra-daily-jobs.yml
+++ b/jjb/orchestra/orchestra-daily-jobs.yaml
diff --git a/jjb/orchestra/orchestra-project-jobs.yml b/jjb/orchestra/orchestra-project-jobs.yaml
index 60732ce03..60732ce03 100644
--- a/jjb/orchestra/orchestra-project-jobs.yml
+++ b/jjb/orchestra/orchestra-project-jobs.yaml
diff --git a/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yaml
index ca4cfeede..ca4cfeede 100644
--- a/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml
+++ b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yaml
diff --git a/jjb/ovn4nfv/ovn4nfv-project-jobs.yml b/jjb/ovn4nfv/ovn4nfv-project-jobs.yaml
index 2ce4b6df9..2ce4b6df9 100644
--- a/jjb/ovn4nfv/ovn4nfv-project-jobs.yml
+++ b/jjb/ovn4nfv/ovn4nfv-project-jobs.yaml
diff --git a/jjb/ovsnfv/ovsnfv.yml b/jjb/ovsnfv/ovsnfv.yaml
index 87c6ca14f..87c6ca14f 100644
--- a/jjb/ovsnfv/ovsnfv.yml
+++ b/jjb/ovsnfv/ovsnfv.yaml
diff --git a/jjb/parser/parser.yml b/jjb/parser/parser.yaml
index 574138f6d..574138f6d 100644
--- a/jjb/parser/parser.yml
+++ b/jjb/parser/parser.yaml
diff --git a/jjb/pharos/check-jinja2.yml b/jjb/pharos/check-jinja2.yaml
index e3f0df78a..e3f0df78a 100644
--- a/jjb/pharos/check-jinja2.yml
+++ b/jjb/pharos/check-jinja2.yaml
diff --git a/jjb/pharos/pharos.yml b/jjb/pharos/pharos.yaml
index c1bb1ba0e..c1bb1ba0e 100644
--- a/jjb/pharos/pharos.yml
+++ b/jjb/pharos/pharos.yaml
diff --git a/jjb/promise/promise.yml b/jjb/promise/promise.yaml
index 6e6fb54a8..6e6fb54a8 100644
--- a/jjb/promise/promise.yml
+++ b/jjb/promise/promise.yaml
diff --git a/jjb/qtip/qtip-experimental-jobs.yml b/jjb/qtip/qtip-experimental-jobs.yaml
index 4e79c0553..4e79c0553 100644
--- a/jjb/qtip/qtip-experimental-jobs.yml
+++ b/jjb/qtip/qtip-experimental-jobs.yaml
diff --git a/jjb/qtip/qtip-validate-jobs.yml b/jjb/qtip/qtip-validate-jobs.yaml
index 0fc623c74..0fc623c74 100644
--- a/jjb/qtip/qtip-validate-jobs.yml
+++ b/jjb/qtip/qtip-validate-jobs.yaml
diff --git a/jjb/qtip/qtip-verify-jobs.yml b/jjb/qtip/qtip-verify-jobs.yaml
index 12cfa95b7..12cfa95b7 100644
--- a/jjb/qtip/qtip-verify-jobs.yml
+++ b/jjb/qtip/qtip-verify-jobs.yaml
diff --git a/jjb/releng/artifact-cleanup.yml b/jjb/releng/artifact-cleanup.yaml
index 2a250618c..2a250618c 100644
--- a/jjb/releng/artifact-cleanup.yml
+++ b/jjb/releng/artifact-cleanup.yaml
diff --git a/jjb/releng/compass4nfv-docker.yml b/jjb/releng/compass4nfv-docker.yaml
index 5fbb37ca2..7bfda552d 100644
--- a/jjb/releng/compass4nfv-docker.yml
+++ b/jjb/releng/compass4nfv-docker.yaml
@@ -19,6 +19,10 @@
arch_tag:
- 'amd64':
slave_label: 'opnfv-build-ubuntu'
+ docker_file: 'Dockerfile'
+ - 'arm64':
+ slave_label: 'opnfv-build-ubuntu-arm'
+ docker_file: 'Dockerfile-arm64'
# yamllint disable rule:key-duplicates
image:
@@ -43,10 +47,20 @@
kill-phase-on: FAILURE
abort-all-jobs: false
+ manifest-job-settings: &manifest-job-settings
+ current-parameters: false
+ git-revision: true
+ node-parameters: false
+ predefined-parameters:
+ GERRIT_REFNAME=$GERRIT_REFNAME
+ kill-phase-on: FAILURE
+ abort-all-jobs: false
+
# yamllint enable rule:key-duplicates
jobs:
- "compass-docker-{stream}"
- "compass-{image}-build-{arch_tag}-{stream}"
+ - "compass-{image}-manifest-{stream}"
########################
# job templates
@@ -63,6 +77,7 @@
project: '{project}'
branch: '{branch}'
slave_label: 'opnfv-build-ubuntu'
+ docker_file: 'Dockerfile'
arch_tag: 'amd64'
properties:
@@ -84,6 +99,14 @@
projects:
- name: 'compass-tasks-base-build-amd64-{stream}'
<<: *build-job-settings
+ - name: 'compass-tasks-base-build-arm64-{stream}'
+ <<: *build-job-settings
+ - multijob:
+ name: 'publish compass-tasks-base manifests'
+ execution-type: PARALLEL
+ projects:
+ - name: 'compass-tasks-base-manifest-{stream}'
+ <<: *manifest-job-settings
- multijob:
name: 'build all compass images'
condition: SUCCESSFUL
@@ -101,9 +124,38 @@
<<: *build-job-settings
- name: 'compass-tasks-osa-build-amd64-{stream}'
<<: *build-job-settings
+ - name: 'compass-cobbler-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-db-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-deck-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-tasks-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-tasks-k8s-build-arm64-{stream}'
+ <<: *build-job-settings
+ - name: 'compass-tasks-osa-build-arm64-{stream}'
+ <<: *build-job-settings
+ - multijob:
+ name: 'publish all manifests'
+ execution-type: PARALLEL
+ projects:
+ - name: 'compass-cobbler-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-db-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-deck-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-tasks-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-tasks-k8s-manifest-{stream}'
+ <<: *manifest-job-settings
+ - name: 'compass-tasks-osa-manifest-{stream}'
+ <<: *manifest-job-settings
publishers:
- 'compass-amd64-recipients'
+ - 'compass-arm64-recipients'
- job-template:
name: 'compass-{image}-build-{arch_tag}-{stream}'
@@ -113,6 +165,7 @@
project: '{project}'
branch: '{branch}'
slave_label: '{slave_label}'
+ docker_file: '{docker_file}'
arch_tag: '{arch_tag}'
- string:
name: DOCKER_REPO_NAME
@@ -128,6 +181,31 @@
- shell:
!include-raw-escape: ./opnfv-docker.sh
+- job-template:
+ name: 'compass-{image}-manifest-{stream}'
+ disabled: '{obj:disabled}'
+ parameters:
+ - compass-job-parameters:
+ project: '{project}'
+ branch: '{branch}'
+ slave_label: 'opnfv-build-ubuntu'
+ docker_file: 'Dockerfile'
+ arch_tag: 'amd64'
+ builders:
+ - shell: |
+ #!/bin/bash -ex
+ case "{stream}" in
+ "master")
+ tag="latest" ;;
+ *)
+ tag="{stream}" ;;
+ esac
+ sudo manifest-tool push from-args \
+ --platforms linux/amd64,linux/arm64 \
+ --template opnfv/compass-{image}:ARCH-$tag \
+ --target opnfv/compass-{image}:$tag
+ exit $?
+
# parameter macro
- parameter:
name: compass-job-parameters
@@ -157,11 +235,11 @@
description: "Docker tag to be built, e.g. refs/tags/5.0.0, refs/tags/opnfv-5.0.0, refs/tags/5.0.RC1"
- string:
name: DOCKERFILE
- default: "Dockerfile"
+ default: '{docker_file}'
description: "Dockerfile to use for creating the image."
- string:
name: ARCH_TAG
- default: ""
+ default: "{arch_tag}"
description: "If set, this value will be added to the docker image tag as a prefix"
- string:
name: PROJECT
@@ -178,3 +256,10 @@
huangxiangyui5@huawei.com
xueyifei@huawei.com
wutianwei1@huawei.com
+
+- publisher:
+ name: 'compass-arm64-recipients'
+ publishers:
+ - email:
+ recipients: >
+ yibo.cai@arm.com
diff --git a/jjb/releng/opnfv-docker-arm.yml b/jjb/releng/opnfv-docker-arm.yaml
index 9066b419e..9066b419e 100644
--- a/jjb/releng/opnfv-docker-arm.yml
+++ b/jjb/releng/opnfv-docker-arm.yaml
diff --git a/jjb/releng/opnfv-docker-custom.yml b/jjb/releng/opnfv-docker-custom.yaml
index e564ab5ef..e564ab5ef 100644
--- a/jjb/releng/opnfv-docker-custom.yml
+++ b/jjb/releng/opnfv-docker-custom.yaml
diff --git a/jjb/releng/opnfv-docker.sh b/jjb/releng/opnfv-docker.sh
index 5c8cafbe3..70baf16d9 100644
--- a/jjb/releng/opnfv-docker.sh
+++ b/jjb/releng/opnfv-docker.sh
@@ -78,7 +78,14 @@ echo "Current branch: $BRANCH"
BUILD_BRANCH=$BRANCH
GERRIT_REFNAME=${GERRIT_REFNAME:-''}
-RELEASE_VERSION=${GERRIT_REFNAME/refs\/tags//}
+RELEASE_VERSION=${GERRIT_REFNAME/refs\/tags\/}
+
+# If we're being triggered by a comment-added job, then extract the tag
+# from the comment and use that as the release version.
+# Expected comment format: retag opnfv-x.y.z
+if [[ "${GERRIT_EVENT_TYPE:-}" == "comment-added" ]]; then
+ RELEASE_VERSION=$(echo "$GERRIT_EVENT_COMMENT_TEXT" | grep 'retag' | awk '{print $2}')
+fi
if [[ "$BRANCH" == "master" ]]; then
DOCKER_TAG="latest"
diff --git a/jjb/releng/opnfv-docker.yml b/jjb/releng/opnfv-docker.yaml
index b7d1ce66f..b7d1ce66f 100644
--- a/jjb/releng/opnfv-docker.yml
+++ b/jjb/releng/opnfv-docker.yaml
diff --git a/jjb/releng/opnfv-lint.yml b/jjb/releng/opnfv-lint.yaml
index aac8c3160..6483e3262 100644
--- a/jjb/releng/opnfv-lint.yml
+++ b/jjb/releng/opnfv-lint.yaml
@@ -64,8 +64,6 @@
- draft-published-event
- comment-added-contains-event:
comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
projects:
- project-compare-type: 'REG_EXP'
project-pattern: 'releng|doctor|pharos'
diff --git a/jjb/releng/opnfv-utils.yml b/jjb/releng/opnfv-utils.yaml
index 19fb4b5af..19fb4b5af 100644
--- a/jjb/releng/opnfv-utils.yml
+++ b/jjb/releng/opnfv-utils.yaml
diff --git a/jjb/releng/releng-ci-jobs.yaml b/jjb/releng/releng-ci-jobs.yaml
new file mode 100644
index 000000000..f9a2bc232
--- /dev/null
+++ b/jjb/releng/releng-ci-jobs.yaml
@@ -0,0 +1,15 @@
+---
+- project:
+ name: releng-builder-jobs
+ project: 'releng'
+ project-name: 'releng'
+
+ build-timeout: 60
+ build-node: 'lf-build1'
+ gerrit-server-name: 'gerrit.opnfv.org'
+ jenkins-ssh-credential: 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
+ jjb-version: '2.0.3'
+ lftools-version: '<1.0.0'
+
+ jobs:
+ - '{project-name}-ci-jobs'
diff --git a/jjb/releng/releng-ci-jobs.yml b/jjb/releng/releng-ci-jobs.yml
deleted file mode 100644
index 6fb6804bc..000000000
--- a/jjb/releng/releng-ci-jobs.yml
+++ /dev/null
@@ -1,124 +0,0 @@
----
-- project:
- name: releng-builder-jobs
- jobs:
- - 'releng-verify-jjb'
- - 'releng-merge-jjb'
- - 'releng-comment-jjb'
-
- project: 'releng'
-
-- job-template:
- name: releng-verify-jjb
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: 'master'
-
- scm:
- - git-scm-gerrit
-
- triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- 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: 'releng'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/master'
- file-paths:
- - compare-type: ANT
- pattern: jjb/**
- - compare-type: ANT
- pattern: jjb-templates/**
- - compare-type: ANT
- pattern: utils/**
-
-
- builders:
- - shell:
- !include-raw: verify-releng.sh
-
- publishers:
- - archive-artifacts:
- artifacts: 'job_output/*'
- - email-jenkins-admins-on-failure
-
-- job-template:
- name: releng-comment-jjb
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: 'master'
-
- scm:
- - git-scm-gerrit
-
- triggers:
- - experimental:
- project: '{project}'
- branch: 'master'
- files: 'jjb/**'
-
- builders:
- - shell:
- !include-raw-escape: generate-job-list.sh
- - report-build-result-to-gerrit
-
-- job-template:
- name: 'releng-merge-jjb'
-
- # builder-merge job to run JJB update
- #
- # This job's purpose is to update all the JJB
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: 'master'
-
- properties:
- - throttle:
- max-per-node: 1
- max-total: 1
- option: 'project'
-
- scm:
- - git-scm
-
- triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- trigger-on:
- - change-merged-event
- - comment-added-contains-event:
- comment-contains-value: 'remerge'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: 'releng'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/master'
- file-paths:
- - compare-type: ANT
- pattern: jjb/**
- - compare-type: ANT
- pattern: utils/**
-
- builders:
- - shell: |
- source /opt/virtualenv/jenkins-job-builder/bin/activate
- jenkins-jobs update -r --delete-old jjb/
diff --git a/jjb/releng/releng-release-verify.sh b/jjb/releng/releng-release-create-venv.sh
index c1262e2c9..0d5635b59 100644
--- a/jjb/releng/releng-release-verify.sh
+++ b/jjb/releng/releng-release-create-venv.sh
@@ -7,21 +7,12 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
-set -xe
+set -e -o pipefail
+echo "---> Create virtualenv"
-# Activate virtualenv, supressing shellcheck warning
-# shellcheck source=/dev/null
-. $WORKSPACE/venv/bin/activate
+sudo pip install virtualenv
+virtualenv $WORKSPACE/venv
+# shellcheck source=$WORKSPACE/venv/bin/activate disable=SC1091
+source $WORKSPACE/venv/bin/activate
+pip install --upgrade pip
pip install -r releases/scripts/requirements.txt
-
-STREAM=${STREAM:-'nostream'}
-RELEASE_FILES=$(git diff HEAD^1 --name-only -- "releases/$STREAM")
-
-# TODO: The create_branch.py should be refactored so it can be used here
-# to verify the commit exists that is being added, along with
-# jjb/<project>
-for release_file in $RELEASE_FILES; do
- python releases/scripts/verify_schema.py \
- -s releases/schema.yaml \
- -y $release_file
-done
diff --git a/jjb/releng/releng-release-jobs.yml b/jjb/releng/releng-release-jobs.yaml
index e31320b81..0c059ee9b 100644
--- a/jjb/releng/releng-release-jobs.yml
+++ b/jjb/releng/releng-release-jobs.yaml
@@ -10,6 +10,8 @@
- project:
name: releng-release-jobs
+ build-node: 'opnfv-build'
+
stream:
- fraser
@@ -23,6 +25,7 @@
name: 'releng-release-{stream}-verify'
parameters:
+ - '{build-node}-defaults'
- stream-parameter:
stream: '{stream}'
- project-parameter:
@@ -59,9 +62,9 @@
pattern: 'releases/scripts/verify_schema.py'
builders:
- - create-virtualenv
- - shell:
- !include-raw-escape: releng-release-verify.sh
+ - shell: !include-raw-escape:
+ - releng-release-create-venv.sh
+ - releng-release-tagging.sh
publishers:
- email-jenkins-admins-on-failure
@@ -82,6 +85,12 @@
- project-parameter:
project: '{project}'
branch: 'master'
+ # Override GIT_BASE so we can send patches back to Gerrit and
+ # modify repos
+ - string:
+ name: GIT_BASE
+ default: ssh://$USER@gerrit.opnfv.org:29418/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
scm:
- git-scm-gerrit
@@ -93,9 +102,10 @@
files: 'releases/{stream}/*'
builders:
- - create-virtualenv
- - shell:
- !include-raw-escape: releng-release-create-branch.sh
+ - shell: !include-raw-escape:
+ - releng-release-create-venv.sh
+ - releng-release-tagging.sh
+ # - releng-release-create-branch.sh
publishers:
- email-jenkins-admins-on-failure
@@ -107,13 +117,3 @@
name: STREAM
default: '{stream}'
description: "OPNFV Stable Stream"
-
-- builder:
- name: create-virtualenv
- builders:
- - shell: |
- #!/bin/bash
- sudo pip install virtualenv
- virtualenv $WORKSPACE/venv
- . $WORKSPACE/venv/bin/activate
- pip install --upgrade pip
diff --git a/jjb/releng/releng-release-tagging.sh b/jjb/releng/releng-release-tagging.sh
new file mode 100644
index 000000000..10c0cc8c9
--- /dev/null
+++ b/jjb/releng/releng-release-tagging.sh
@@ -0,0 +1,70 @@
+#!/bin/bash
+# SPDX-License-Identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 The 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
+##############################################################################
+set -e -o pipefail
+
+GIT_URL=${GIT_URL:-https://gerrit.opnfv.org/gerrit}
+STREAM=${STREAM:-'nostream'}
+RELEASE_FILES=$(git diff HEAD^1 --name-only -- "releases/$STREAM")
+
+echo "--> Verifying $RELEASE_FILES."
+for release_file in $RELEASE_FILES; do
+ # Verify the release file schema
+ python releases/scripts/verify_schema.py \
+ -s releases/schema.yaml \
+ -y $release_file
+
+ # Verify tag for each repo exist and are attached to commits on stable-branch
+ while read -r repo tag ref
+ do
+ echo "--> Cloning $repo"
+ if [ ! -d $repo ]; then
+ git clone $GIT_URL/$repo.git $repo
+ fi
+ pushd $repo &> /dev/null
+
+ echo "--> Checking for tag: $tag"
+ if ! (git tag -l | grep $tag &> /dev/null); then
+ echo "$tag does not exist"
+ TAG_EXISTS=false
+ else
+ git cat-file tag $tag
+ TAG_EXISTS=true
+ fi
+
+ echo "--> Checking if $ref is on stable/$STREAM"
+ if ! (git branch -a --contains $ref | grep "stable/$STREAM"); then
+ echo "--> ERROR: $ref for $repo is not on stable/$STREAM!"
+ # If the tag exists but is on the wrong ref, there's nothing
+ # we can do. But if the tag neither exists nor is on the
+ # correct branch we need to fail the verification.
+ if [ $TAG_EXISTS = false ]; then
+ exit 1
+ fi
+ else
+ if [[ $TAG_EXISTS = false && "$JOB_NAME" =~ "merge" ]]; then
+ # If the tag doesn't exist and we're in a merge job,
+ # everything has been verified up to this point and we
+ # are ready to create the tag.
+ git config --global user.name "jenkins-ci"
+ git config --global user.email "jenkins-opnfv-ci@opnfv.org"
+ echo "--> Creating $tag tag for $repo at $ref"
+ git tag -am "$tag" $tag $ref
+ echo "--> Pushing tag"
+ echo "[noop] git push origin $tag"
+ else
+ # For non-merge jobs just output the ref info.
+ git show -s --format="%h %s %d" $ref
+ fi
+ fi
+
+ popd &> /dev/null
+ echo "--> Done verifing $repo"
+ done < <(python releases/scripts/repos.py -f $release_file)
+done
diff --git a/jjb/releng/testresults-automate.yml b/jjb/releng/testresults-automate.yaml
index 01fbe0c6d..01fbe0c6d 100644
--- a/jjb/releng/testresults-automate.yml
+++ b/jjb/releng/testresults-automate.yaml
diff --git a/jjb/releng/testresults-verify.yml b/jjb/releng/testresults-verify.yaml
index 958833c0f..958833c0f 100644
--- a/jjb/releng/testresults-verify.yml
+++ b/jjb/releng/testresults-verify.yaml
diff --git a/jjb/releng/verify-releng.sh b/jjb/releng/verify-releng.sh
deleted file mode 100755
index a6eaa0f50..000000000
--- a/jjb/releng/verify-releng.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 -or -name *\.yaml -or -name *\.sh); do
-
- if LC_ALL=C grep -q '[^[:print:][:space:]]' "$x"; then
- echo "file "$x" contains non-ascii characters"
- exit 1
- fi
-
-done
-
-source /opt/virtualenv/jenkins-job-builder/bin/activate
-jenkins-jobs test -o job_output -r jjb/
diff --git a/jjb/securedlab/check-jinja2.yml b/jjb/securedlab/check-jinja2.yaml
index f7a7941dc..f7a7941dc 100644
--- a/jjb/securedlab/check-jinja2.yml
+++ b/jjb/securedlab/check-jinja2.yaml
diff --git a/jjb/sfc/sfc-project-jobs.yml b/jjb/sfc/sfc-project-jobs.yaml
index fea792467..fea792467 100644
--- a/jjb/sfc/sfc-project-jobs.yml
+++ b/jjb/sfc/sfc-project-jobs.yaml
diff --git a/jjb/snaps/snaps-verify-jobs.yml b/jjb/snaps/snaps-verify-jobs.yaml
index 10514c3b6..10514c3b6 100644
--- a/jjb/snaps/snaps-verify-jobs.yml
+++ b/jjb/snaps/snaps-verify-jobs.yaml
diff --git a/jjb/stor4nfv/stor4nfv-project.yml b/jjb/stor4nfv/stor4nfv-project.yaml
index 6e796cfd4..6e796cfd4 100644
--- a/jjb/stor4nfv/stor4nfv-project.yml
+++ b/jjb/stor4nfv/stor4nfv-project.yaml
diff --git a/jjb/storperf/storperf-daily-jobs.yml b/jjb/storperf/storperf-daily-jobs.yaml
index fe6aebb11..fe6aebb11 100644
--- a/jjb/storperf/storperf-daily-jobs.yml
+++ b/jjb/storperf/storperf-daily-jobs.yaml
diff --git a/jjb/storperf/storperf-verify-jobs.yml b/jjb/storperf/storperf-verify-jobs.yaml
index 4d6b1740a..4d6b1740a 100644
--- a/jjb/storperf/storperf-verify-jobs.yml
+++ b/jjb/storperf/storperf-verify-jobs.yaml
diff --git a/jjb/storperf/storperf.yml b/jjb/storperf/storperf.yaml
index fe5784777..fe5784777 100644
--- a/jjb/storperf/storperf.yml
+++ b/jjb/storperf/storperf.yaml
diff --git a/jjb/ves/ves.yml b/jjb/ves/ves.yaml
index f8c5da2b4..f8c5da2b4 100644
--- a/jjb/ves/ves.yml
+++ b/jjb/ves/ves.yaml
diff --git a/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml b/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yaml
index b11c20f62..b11c20f62 100644
--- a/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml
+++ b/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yaml
diff --git a/jjb/vswitchperf/vswitchperf.yml b/jjb/vswitchperf/vswitchperf.yaml
index ba0742f3b..ba0742f3b 100644
--- a/jjb/vswitchperf/vswitchperf.yml
+++ b/jjb/vswitchperf/vswitchperf.yaml
diff --git a/jjb/xci/bifrost-cleanup-job.yml b/jjb/xci/bifrost-cleanup-job.yaml
index d51776173..d51776173 100644
--- a/jjb/xci/bifrost-cleanup-job.yml
+++ b/jjb/xci/bifrost-cleanup-job.yaml
diff --git a/jjb/xci/bifrost-periodic-jobs.yml b/jjb/xci/bifrost-periodic-jobs.yaml
index fbe2e205a..fbe2e205a 100644
--- a/jjb/xci/bifrost-periodic-jobs.yml
+++ b/jjb/xci/bifrost-periodic-jobs.yaml
diff --git a/jjb/xci/bifrost-verify-jobs.yml b/jjb/xci/bifrost-verify-jobs.yaml
index 920ecdc7d..4ca783524 100644
--- a/jjb/xci/bifrost-verify-jobs.yml
+++ b/jjb/xci/bifrost-verify-jobs.yaml
@@ -163,11 +163,17 @@
# yamllint enable rule:line-length
- email-jenkins-admins-on-failure
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
# -------------------------------
# trigger macros
diff --git a/jjb/xci/osa-periodic-jobs.yml b/jjb/xci/osa-periodic-jobs.yaml
index 6c2d165a4..6c2d165a4 100644
--- a/jjb/xci/osa-periodic-jobs.yml
+++ b/jjb/xci/osa-periodic-jobs.yaml
diff --git a/jjb/xci/xci-daily-jobs.yml b/jjb/xci/xci-daily-jobs.yaml
index 11db4e168..c1132ab85 100644
--- a/jjb/xci/xci-daily-jobs.yml
+++ b/jjb/xci/xci-daily-jobs.yaml
@@ -155,11 +155,17 @@
# yamllint enable rule:line-length
- email-jenkins-admins-on-failure
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
- job-template:
name: 'xci-{phase}-{pod}-{distro}-daily-{stream}'
diff --git a/jjb/xci/xci-merge-jobs.yml b/jjb/xci/xci-merge-jobs.yaml
index 2d112c7e5..cb438ad5d 100644
--- a/jjb/xci/xci-merge-jobs.yml
+++ b/jjb/xci/xci-merge-jobs.yaml
@@ -316,11 +316,17 @@
publishers:
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
- job-template:
name: 'xci-merge-{distro}-{phase}-virtual-{stream}'
diff --git a/jjb/xci/xci-run-functest.sh b/jjb/xci/xci-run-functest.sh
index 6d43c9789..f46abe043 100755
--- a/jjb/xci/xci-run-functest.sh
+++ b/jjb/xci/xci-run-functest.sh
@@ -47,7 +47,7 @@ fi
export XCI_PATH=/home/devuser/releng-xci
export XCI_VENV=${XCI_PATH}/venv
-ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm "source $XCI_VENV/bin/activate; while read var; do declare -x \"\${var}\" 2>/dev/null; done < ${XCI_PATH}/.cache/xci.env && cd releng-xci/xci && ansible-playbook -i installer/osa/files/$XCI_FLAVOR/inventory playbooks/prepare-functest.yml"
+ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm "source $XCI_VENV/bin/activate; while read var; do declare -x \"\${var}\" 2>/dev/null; done < ${XCI_PATH}/.cache/xci.env && cd releng-xci/xci && ansible-playbook -i playbooks/dynamic_inventory.py playbooks/prepare-functest.yml"
echo "Running functest"
ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm_opnfv "/root/run-functest.sh"
# Record exit code
diff --git a/jjb/xci/xci-set-scenario.sh b/jjb/xci/xci-set-scenario.sh
index c28093d27..7bc45f1c2 100755
--- a/jjb/xci/xci-set-scenario.sh
+++ b/jjb/xci/xci-set-scenario.sh
@@ -38,7 +38,7 @@ set -o pipefail
# skip-verify
# skip-deployment
# force-verify
-function override_generic_scenario() {
+function override_scenario() {
echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
# ensure the metadata we record is consistent for all types of patches including skipped ones
@@ -81,26 +81,21 @@ function override_generic_scenario() {
fi
}
-# This function determines the impacted generic scenario by processing the
-# change and using diff to see what changed. If changed files belong to a scenario
-# its name gets recorded for deploying and testing the right scenario.
+# This function determines the default scenario for changes coming to releng-xci
+# by processing the Gerrit change and using diff to see what changed.
+#
+# The stuff in releng-xci is for the installer and other common things so the
+# determination is based on those.
#
-# Pattern to be searched in Changeset
-# releng-xci/scenarios/<scenario>/<impacted files>: <scenario>
-# releng-xci/xci/installer/osa/<impacted files>: os-nosdn-nofeature
-# releng-xci/xci/installer/kubespray/<impacted files>: k8-nosdn-nofeature
-# the rest: os-nosdn-nofeature
-function determine_generic_scenario() {
+# Pattern
+# releng-xci/installer/<installer_type>/<impacted files>: <scenario>
+function determine_default_scenario() {
echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
# get the changeset
cd $WORKSPACE
- SCENARIOS=$(git diff HEAD^..HEAD --name-only -- 'xci/scenarios' | cut -d "/" -f 3 | uniq)
# We need to set default scenario for changes that mess with installers
INSTALLERS=$(git diff HEAD^..HEAD --name-only -- 'xci/installer' | cut -d "/" -f 3 | uniq)
- for CHANGED_SCENARIO in $SCENARIOS; do
- DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]=$CHANGED_SCENARIO
- done
for CHANGED_INSTALLER in $INSTALLERS; do
case $CHANGED_INSTALLER in
kubespray)
@@ -113,24 +108,25 @@ function determine_generic_scenario() {
esac
done
# For all other changes, we only need to set a default scenario if it's not set already
- if git diff HEAD^..HEAD --name-only | grep -q -v 'xci/installer\|xci/scenario'; then
+ if git diff HEAD^..HEAD --name-only | grep -q -v 'xci/installer'; then
[[ ${#DEPLOY_SCENARIO[@]} -eq 0 ]] && DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='os-nosdn-nofeature'
fi
# extract releng-xci sha
XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
- # extract scenario sha which is same as releng-xci sha for generic scenarios
+ # TODO: we need to fix this so we actually extract the scenario sha by cloning releng-xci-scenarios
+ # for the determined scenario. it is crucial for promotion...
SCENARIO_SHA=$XCI_SHA
}
-# This function determines the impacted external scenario by processing the Gerrit
+# This function determines the impacted scenario by processing the Gerrit
# change and using diff to see what changed. If changed files belong to a scenario
# its name gets recorded for deploying and testing the right scenario.
#
# Pattern
# <project-repo>/scenarios/<scenario>/<impacted files>: <scenario>
-function determine_external_scenario() {
+function determine_scenario() {
echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
# remove the clone that is done via jenkins and place releng-xci there so the
@@ -169,11 +165,10 @@ WORK_DIRECTORY=/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO
/bin/rm -rf $WORK_DIRECTORY && mkdir -p $WORK_DIRECTORY
if [[ $GERRIT_PROJECT == "releng-xci" ]]; then
- override_generic_scenario
- determine_generic_scenario
-else
- determine_external_scenario
+ determine_default_scenario
fi
+override_scenario
+determine_scenario
# ensure single scenario is impacted
if [[ $(IFS=$'\n' echo ${DEPLOY_SCENARIO[@]} | wc -w) != 1 ]]; then
diff --git a/jjb/xci/xci-start-new-vm.sh b/jjb/xci/xci-start-new-vm.sh
index 174932813..79b6a785a 100755
--- a/jjb/xci/xci-start-new-vm.sh
+++ b/jjb/xci/xci-start-new-vm.sh
@@ -67,7 +67,7 @@ export CI_LOOP=$CI_LOOP
export BUILD_TAG=$BUILD_TAG
export NODE_NAME=$NODE_NAME
-if [[ ! -z ${WORKSPACE+x} && $GERRIT_PROJECT != "releng-xci" ]]; then
+if [[ $GERRIT_PROJECT != "releng-xci" ]]; then
export XCI_ANSIBLE_PARAMS="-e @/home/devuser/releng-xci/scenario_overrides.yml"
fi
@@ -75,7 +75,7 @@ cd xci
./xci-deploy.sh | ts
EOF
-if [[ ! -z ${WORKSPACE+x} && $GERRIT_PROJECT != "releng-xci" ]]; then
+if [[ $GERRIT_PROJECT != "releng-xci" ]]; then
cat > scenario_overrides.yml <<-EOF
---
xci_scenarios_overrides:
diff --git a/jjb/xci/xci-verify-jobs.yml b/jjb/xci/xci-verify-jobs.yaml
index 3b7df62f4..2230cd56d 100644
--- a/jjb/xci/xci-verify-jobs.yml
+++ b/jjb/xci/xci-verify-jobs.yaml
@@ -113,8 +113,6 @@
- compare-type: ANT
pattern: 'docs/**'
- compare-type: ANT
- pattern: 'prototypes/**'
- - compare-type: ANT
pattern: 'upstream/**'
- project-compare-type: 'REG_EXP'
project-pattern: 'sfc|sdnvpn|releng-xci-scenarios'
@@ -207,11 +205,17 @@
publishers:
- postbuildscript:
- script-only-if-succeeded: false
- script-only-if-failed: false
builders:
- - shell:
- !include-raw: ./xci-cleanup.sh
+ - role: BOTH
+ build-on:
+ - ABORTED
+ - FAILURE
+ - NOT_BUILT
+ - SUCCESS
+ - UNSTABLE
+ build-steps:
+ - shell: !include-raw: ./xci-cleanup.sh
+ mark-unstable-if-failed: true
- job-template:
diff --git a/jjb/yardstick/yardstick-daily-jobs.yml b/jjb/yardstick/yardstick-daily-jobs.yaml
index 4df3f520d..4df3f520d 100644
--- a/jjb/yardstick/yardstick-daily-jobs.yml
+++ b/jjb/yardstick/yardstick-daily-jobs.yaml
diff --git a/jjb/yardstick/yardstick-project-jobs.yml b/jjb/yardstick/yardstick-project-jobs.yaml
index 56e825e19..56e825e19 100644
--- a/jjb/yardstick/yardstick-project-jobs.yml
+++ b/jjb/yardstick/yardstick-project-jobs.yaml