diff options
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-x | jjb/apex/apex-build.sh | 11 | ||||
-rwxr-xr-x | jjb/apex/apex-deploy.sh | 9 | ||||
-rwxr-xr-x | jjb/apex/apex-download-artifact.sh | 5 | ||||
-rw-r--r-- | jjb/apex/apex-jjb-renderer.py | 4 | ||||
-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.sh | 4 | ||||
-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.hidden | 2 | ||||
-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.yaml | 126 | ||||
-rw-r--r-- | jjb/auto/auto.yml | 8 | ||||
-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-x | jjb/dovetail/dovetail-run.sh | 5 | ||||
-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-x | jjb/fuel/fuel-deploy.sh | 4 | ||||
-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-jjb | 0 | ||||
-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-x | jjb/openci/create-ane.sh | 26 | ||||
-rwxr-xr-x | jjb/openci/create-cde.sh | 27 | ||||
-rwxr-xr-x | jjb/openci/create-clme.sh | 27 | ||||
-rw-r--r-- | jjb/openci/openci-odl-daily-jobs.yaml | 99 | ||||
-rw-r--r-- | jjb/openci/openci-onap-daily-jobs.yaml | 99 | ||||
-rw-r--r-- | jjb/openci/openci-opnfv-daily-jobs.yaml | 149 | ||||
-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.sh | 9 | ||||
-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.yaml | 15 | ||||
-rw-r--r-- | jjb/releng/releng-ci-jobs.yml | 124 | ||||
-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.sh | 70 | ||||
-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-x | jjb/releng/verify-releng.sh | 21 | ||||
-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-x | jjb/xci/xci-run-functest.sh | 2 | ||||
-rwxr-xr-x | jjb/xci/xci-set-scenario.sh | 39 | ||||
-rwxr-xr-x | jjb/xci/xci-start-new-vm.sh | 4 | ||||
-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 |