From 80be2bbf6021d83002cbb96e116262f0f12e6ebd Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C3=A9dric=20Ollivier?= Date: Mon, 8 Feb 2021 08:58:59 +0100 Subject: [PATCH] Clean obsolete jjbs MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit They should have been cleant when closing the projects. Change-Id: Id00da883e6ea14631f2098e40978bcf793d5636b Signed-off-by: Cédric Ollivier --- jjb/armband/armband-ci-jobs.yaml | 128 ------- jjb/armband/armband-rtd-jobs.yaml | 20 -- jjb/armband/armband-verify-jobs.yaml | 100 ------ jjb/calipso/calipso-rtd-jobs.yaml | 13 - jjb/calipso/calipso.yaml | 65 ---- jjb/clover/clover-project.yaml | 168 --------- jjb/clover/clover-rtd-jobs.yaml | 18 - jjb/clover/clover-views.yaml | 6 - jjb/container4nfv/arm64/deploy-cni.sh | 17 - jjb/container4nfv/arm64/yardstick-arm64.sh | 93 ----- jjb/container4nfv/container4nfv-arm64.yaml | 35 -- jjb/container4nfv/container4nfv-project.yaml | 169 --------- jjb/container4nfv/container4nfv-rtd-jobs.yaml | 21 -- jjb/container4nfv/container4nfv-views.yaml | 7 - jjb/doctor/doctor-env-presetup.sh | 69 ---- jjb/doctor/doctor-rtd-jobs.yaml | 21 -- jjb/doctor/doctor.yaml | 260 -------------- jjb/edgecloud/edgecloud-rtd-jobs.yaml | 24 -- jjb/edgecloud/edgecloud-views.yaml | 6 - jjb/fds/fds-rtd-jobs.yaml | 12 - jjb/fds/fds-views.yaml | 6 - jjb/openci/create-ape.sh | 47 --- jjb/openci/create-cde.sh | 47 --- jjb/openci/create-clme.sh | 48 --- jjb/openci/openci-odl-daily-jobs.yaml | 81 ----- jjb/openci/openci-onap-daily-jobs.yaml | 81 ----- jjb/openci/openci-opnfv-daily-jobs.yaml | 135 ------- jjb/openci/openci-views.yaml | 6 - jjb/opnfvtsc/opnfvtsc-rtd-jobs.yaml | 13 - jjb/opnfvtsc/opnfvtsc-views.yaml | 6 - jjb/stor4nfv/stor4nfv-project.yaml | 8 - jjb/stor4nfv/stor4nfv-rtd-jobs.yaml | 24 -- jjb/stor4nfv/stor4nfv-views.yaml | 6 - jjb/xci/bifrost-cleanup-job.yaml | 146 -------- jjb/xci/bifrost-periodic-jobs.yaml | 154 -------- jjb/xci/bifrost-provision.sh | 109 ------ jjb/xci/bifrost-verify-jobs.yaml | 225 ------------ jjb/xci/bifrost-verify.sh | 54 --- jjb/xci/osa-periodic-jobs.yaml | 263 -------------- jjb/xci/xci-cleanup.sh | 28 -- jjb/xci/xci-daily-jobs.yaml | 356 ------------------- jjb/xci/xci-deploy.sh | 75 ---- jjb/xci/xci-merge-jobs.yaml | 492 -------------------------- jjb/xci/xci-promote.sh | 51 --- jjb/xci/xci-rtd-jobs.yaml | 13 - jjb/xci/xci-run-functest.sh | 77 ---- jjb/xci/xci-set-scenario.sh | 265 -------------- jjb/xci/xci-start-deployment.sh | 45 --- jjb/xci/xci-start-new-vm.sh | 93 ----- jjb/xci/xci-verify-jobs.yaml | 327 ----------------- jjb/xci/xci-views.yaml | 6 - 51 files changed, 4539 deletions(-) delete mode 100644 jjb/armband/armband-ci-jobs.yaml delete mode 100644 jjb/armband/armband-rtd-jobs.yaml delete mode 100644 jjb/armband/armband-verify-jobs.yaml delete mode 100644 jjb/calipso/calipso-rtd-jobs.yaml delete mode 100644 jjb/calipso/calipso.yaml delete mode 100644 jjb/clover/clover-project.yaml delete mode 100644 jjb/clover/clover-rtd-jobs.yaml delete mode 100644 jjb/clover/clover-views.yaml delete mode 100755 jjb/container4nfv/arm64/deploy-cni.sh delete mode 100755 jjb/container4nfv/arm64/yardstick-arm64.sh delete mode 100644 jjb/container4nfv/container4nfv-arm64.yaml delete mode 100644 jjb/container4nfv/container4nfv-project.yaml delete mode 100644 jjb/container4nfv/container4nfv-rtd-jobs.yaml delete mode 100644 jjb/container4nfv/container4nfv-views.yaml delete mode 100755 jjb/doctor/doctor-env-presetup.sh delete mode 100644 jjb/doctor/doctor-rtd-jobs.yaml delete mode 100644 jjb/doctor/doctor.yaml delete mode 100644 jjb/edgecloud/edgecloud-rtd-jobs.yaml delete mode 100644 jjb/edgecloud/edgecloud-views.yaml delete mode 100644 jjb/fds/fds-rtd-jobs.yaml delete mode 100644 jjb/fds/fds-views.yaml delete mode 100755 jjb/openci/create-ape.sh delete mode 100755 jjb/openci/create-cde.sh delete mode 100755 jjb/openci/create-clme.sh delete mode 100644 jjb/openci/openci-odl-daily-jobs.yaml delete mode 100644 jjb/openci/openci-onap-daily-jobs.yaml delete mode 100644 jjb/openci/openci-opnfv-daily-jobs.yaml delete mode 100644 jjb/openci/openci-views.yaml delete mode 100644 jjb/opnfvtsc/opnfvtsc-rtd-jobs.yaml delete mode 100644 jjb/opnfvtsc/opnfvtsc-views.yaml delete mode 100644 jjb/stor4nfv/stor4nfv-project.yaml delete mode 100644 jjb/stor4nfv/stor4nfv-rtd-jobs.yaml delete mode 100644 jjb/stor4nfv/stor4nfv-views.yaml delete mode 100644 jjb/xci/bifrost-cleanup-job.yaml delete mode 100644 jjb/xci/bifrost-periodic-jobs.yaml delete mode 100755 jjb/xci/bifrost-provision.sh delete mode 100644 jjb/xci/bifrost-verify-jobs.yaml delete mode 100755 jjb/xci/bifrost-verify.sh delete mode 100644 jjb/xci/osa-periodic-jobs.yaml delete mode 100755 jjb/xci/xci-cleanup.sh delete mode 100644 jjb/xci/xci-daily-jobs.yaml delete mode 100755 jjb/xci/xci-deploy.sh delete mode 100644 jjb/xci/xci-merge-jobs.yaml delete mode 100755 jjb/xci/xci-promote.sh delete mode 100644 jjb/xci/xci-rtd-jobs.yaml delete mode 100755 jjb/xci/xci-run-functest.sh delete mode 100755 jjb/xci/xci-set-scenario.sh delete mode 100755 jjb/xci/xci-start-deployment.sh delete mode 100755 jjb/xci/xci-start-new-vm.sh delete mode 100644 jjb/xci/xci-verify-jobs.yaml delete mode 100644 jjb/xci/xci-views.yaml diff --git a/jjb/armband/armband-ci-jobs.yaml b/jjb/armband/armband-ci-jobs.yaml deleted file mode 100644 index 4f2dc5eb3..000000000 --- a/jjb/armband/armband-ci-jobs.yaml +++ /dev/null @@ -1,128 +0,0 @@ ---- -# jenkins job templates for Armband -- project: - name: 'armband-ci' - project: 'armband' - installer: 'fuel' - - # ------------------------------- - # BRANCH ANCHORS - # ------------------------------- - master: &master - stream: master - branch: '{stream}' - gs-pathname: '' - disabled: true - functest_docker_tag: hunter - hunter: &hunter - stream: hunter - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: true - functest_docker_tag: '{stream}' - # ------------------------------- - # POD, INSTALLER, AND BRANCH MAPPING - # ------------------------------- - # CI POD's - # ------------------------------- - pod: - # ------------------------------- - # hunter - # ------------------------------- - - armband-baremetal: - deploy-type: 'baremetal' - slave-label: 'armband-{deploy-type}' - <<: *hunter - # ------------------------------- - # master - # ------------------------------- - - armband-baremetal: - deploy-type: 'baremetal' - slave-label: 'armband-{deploy-type}' - <<: *master - # ------------------------------- - # scenarios - # ------------------------------- - scenario: - # HA scenarios - - 'os-nosdn-nofeature-ha': - auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger' - - 'os-odl-nofeature-ha': - auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger' - - 'os-ovn-nofeature-ha': - auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger' - - 'os-nosdn-ovs-ha': - auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger' - - # NOHA scenarios - - 'os-nosdn-nofeature-noha': - auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger' - - 'os-nosdn-fdio-noha': - auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger' - - jobs: - - 'fuel-{scenario}-{pod}-daily-{stream}' - - 'fuel-deploy-{pod}-daily-{stream}' - -######################## -# job templates: Armband uses Fuel's job templates, no need to duplicate -######################## - -######################## -# trigger macros -######################## -# CI PODs -# ---------------------------------------------------------------- -# Enea Armband CI Baremetal Triggers running against master branch -# ---------------------------------------------------------------- -- trigger: - name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-master-trigger' - triggers: - - timed: '0 1 * * 7' -- trigger: - name: 'fuel-os-odl-nofeature-ha-armband-baremetal-master-trigger' - triggers: - - timed: '0 1 * * 4,6' -- trigger: - name: 'fuel-os-ovn-nofeature-ha-armband-baremetal-master-trigger' - triggers: - - timed: '0 1 * * 2' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-armband-baremetal-master-trigger' - triggers: - - timed: '0 1 * * 1' -- trigger: - name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-fdio-noha-armband-baremetal-master-trigger' - triggers: - - timed: '0 1 * * 3,5' -# --------------------------------------------------------------------- -# Enea Armband CI Baremetal Triggers running against hunter branch -# --------------------------------------------------------------------- -- trigger: - name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-hunter-trigger' - triggers: - - timed: '10 1 * * 1' -- trigger: - name: 'fuel-os-odl-nofeature-ha-armband-baremetal-hunter-trigger' - triggers: - - timed: '10 1 * * 7' -- trigger: - name: 'fuel-os-ovn-nofeature-ha-armband-baremetal-hunter-trigger' - triggers: - - timed: '10 1 * * 2' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-armband-baremetal-hunter-trigger' - triggers: - - timed: '10 1 * * 4,6' -- trigger: - name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-hunter-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-fdio-noha-armband-baremetal-hunter-trigger' - triggers: - - timed: '10 1 * * 3,5' diff --git a/jjb/armband/armband-rtd-jobs.yaml b/jjb/armband/armband-rtd-jobs.yaml deleted file mode 100644 index 70d2f1171..000000000 --- a/jjb/armband/armband-rtd-jobs.yaml +++ /dev/null @@ -1,20 +0,0 @@ ---- -- project: - name: armband-rtd - project: armband - project-name: armband - - project-pattern: 'armband' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-armband/47349/' - rtd-token: 'b8f7de9a1f2baf063ccc6afb52dbc8e6308b6ab5' - - stream: - - master: - branch: '{stream}' - disabled: false - - gambia: - branch: 'stable/{stream}' - disabled: true - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/armband/armband-verify-jobs.yaml b/jjb/armband/armband-verify-jobs.yaml deleted file mode 100644 index d7a646ad0..000000000 --- a/jjb/armband/armband-verify-jobs.yaml +++ /dev/null @@ -1,100 +0,0 @@ ---- -- project: - name: 'armband-verify-jobs' - - project: 'armband' - - ##################################### - # branch definitions - ##################################### - stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - gambia: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: true - ##################################### - # jobs - ##################################### - jobs: - - 'armband-verify-{stream}' - -##################################### -# job templates -##################################### -- job-template: - name: 'armband-verify-{stream}' - - disabled: true - - concurrent: true - - properties: - - logrotate-default - - throttle: - enabled: true - max-total: 2 - option: 'project' - - scm: - - git-scm-gerrit - - wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true - - 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'ci/**' - - compare-type: ANT - pattern: 'patches/**' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**' - readable-message: true - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-arm-defaults' - - builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'armband-verify-builder-macro' - -##################################### -# builder macros -##################################### -- builder: - name: 'armband-verify-builder-macro' - builders: - - shell: | - #!/bin/bash - make fuel-patches-import diff --git a/jjb/calipso/calipso-rtd-jobs.yaml b/jjb/calipso/calipso-rtd-jobs.yaml deleted file mode 100644 index e6b61d768..000000000 --- a/jjb/calipso/calipso-rtd-jobs.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -- project: - name: calipso-rtd - project: calipso - project-name: calipso - - gerrit-skip-vote: true - project-pattern: 'calipso' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-calipso/47356/' - rtd-token: '9b88e25a769998fc316b25efe15eca2b7c1474f4' - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/calipso/calipso.yaml b/jjb/calipso/calipso.yaml deleted file mode 100644 index 7ecabdf29..000000000 --- a/jjb/calipso/calipso.yaml +++ /dev/null @@ -1,65 +0,0 @@ ---- -- project: - name: calipso - - project: '{name}' - - jobs: - - 'calipso-verify-{stream}' - - stream: - - master: - branch: '{stream}' - disabled: false - - fraser: &fraser - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false - -- job-template: - name: 'calipso-verify-{stream}' - - disabled: '{obj:disabled}' - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-centos-defaults' - - 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - - builders: - - verify-unit-tests - -- builder: - name: verify-unit-tests - builders: - - shell: | - #!/bin/bash - set -o errexit - set -o nounset - set -o pipefail - cd $WORKSPACE - PYTHONPATH=$PWD api/test/verify.sh diff --git a/jjb/clover/clover-project.yaml b/jjb/clover/clover-project.yaml deleted file mode 100644 index 769b1e736..000000000 --- a/jjb/clover/clover-project.yaml +++ /dev/null @@ -1,168 +0,0 @@ ---- -################################################### -# All the jobs except verify have been removed! -# They will only be enabled on request by projects! -################################################### -- project: - name: clover - - project: '{name}' - - jobs: - - 'clover-verify-{stream}' - - 'clover-daily-upload-{stream}' - - 'clover-daily-deploy-{stream}' - - stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - -- job-template: - name: 'clover-verify-{stream}' - - disabled: '{obj:disabled}' - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - # yamllint disable rule:line-length - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from Global Jenkins\ - \ configuration in case if the stuff is done on none-LF HW." - # yamllint enable rule:line-length - - 'opnfv-build-ubuntu-defaults' - - 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**|.gitignore' - - builders: - - shell: | - cd $WORKSPACE/ci - ./verify.sh - -- job-template: - name: 'clover-daily-upload-{stream}' - - disabled: true - - concurrent: false - - scm: - - git-scm - - triggers: - - timed: '0 8 * * *' - - wrappers: - - fix-workspace-permissions - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' - - 'clover-defaults': - gs-pathname: '{gs-pathname}' - - builders: - - shell: | - cd $WORKSPACE/ci - ./upload.sh - -- job-template: - name: 'clover-daily-deploy-{stream}' - - project-type: freestyle - - disabled: true - - concurrent: false - - properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'clover-daily-deploy-.*?' - - 'container4nfv-daily-deploy-.*?' - blocking-level: 'NODE' - - wrappers: - - timeout: - timeout: 180 - abort: true - - fix-workspace-permissions - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - # yamllint disable rule:line-length - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from Global Jenkins\ - \ configuration in case if the stuff is done on none-LF HW." - # yamllint enable rule:line-length - - node: - name: SLAVE_NAME - description: 'Slave name on Jenkins' - allowed-slaves: - - huawei-virtual6 - default-slaves: - - huawei-virtual6 - - scm: - - git-scm - - triggers: - - timed: '0 9 * * *' - - builders: - - shell: | - cd $WORKSPACE/ci - ./deploy.sh - -################### -# parameter macros -################### -- parameter: - name: 'clover-defaults' - parameters: - - string: - name: GS_URL - default: artifacts.opnfv.org/$PROJECT{gs-pathname} - description: "URL to Google Storage." diff --git a/jjb/clover/clover-rtd-jobs.yaml b/jjb/clover/clover-rtd-jobs.yaml deleted file mode 100644 index 970272ea8..000000000 --- a/jjb/clover/clover-rtd-jobs.yaml +++ /dev/null @@ -1,18 +0,0 @@ ---- -- project: - name: clover-rtd - project: clover - project-name: clover - - gerrit-skip-vote: true - project-pattern: 'clover' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-clover/47357/' - rtd-token: '8b47c0a3c1cfe7de885bf217628b58dd91f14f2e' - - stream: - - master: - branch: '{stream}' - disabled: false - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/clover/clover-views.yaml b/jjb/clover/clover-views.yaml deleted file mode 100644 index 15a05e60a..000000000 --- a/jjb/clover/clover-views.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- project: - name: clover-view - views: - - project-view - project-name: clover diff --git a/jjb/container4nfv/arm64/deploy-cni.sh b/jjb/container4nfv/arm64/deploy-cni.sh deleted file mode 100755 index 9afb98048..000000000 --- a/jjb/container4nfv/arm64/deploy-cni.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -e - -cd container4nfv/src/arm/cni-deploy - -DEPLOY_SCENARIO={scenario} - -virtualenv .venv -source .venv/bin/activate -pip install ansible==2.6.1 - -ansible-playbook -i inventory/inventory.cfg deploy.yml --tags flannel,multus - -if [ "$DEPLOY_SCENARIO" == "k8-sriov-nofeature-noha" ]; then - ansible-playbook -i inventory/inventory.cfg deploy.yml --tags sriov -elif [ "$DEPLOY_SCENARIO" == "k8-vpp-nofeature-noha" ]; then - ansible-playbook -i inventory/inventory.cfg deploy.yml --tags vhost-vpp -fi diff --git a/jjb/container4nfv/arm64/yardstick-arm64.sh b/jjb/container4nfv/arm64/yardstick-arm64.sh deleted file mode 100755 index 26c6fdcfe..000000000 --- a/jjb/container4nfv/arm64/yardstick-arm64.sh +++ /dev/null @@ -1,93 +0,0 @@ -#!/bin/bash -set -e - -sshpass -p root ssh root@10.1.0.50 \ - "mkdir -p /etc/yardstick; rm -rf /etc/yardstick/admin.conf" - - -sshpass -p root ssh root@10.1.0.50 \ - kubectl config set-cluster yardstick --server=127.0.0.1:8080 --insecure-skip-tls-verify=true --kubeconfig=/etc/yardstick/admin.conf -sshpass -p root ssh root@10.1.0.50 \ - kubectl config set-context yardstick --cluster=yardstick --kubeconfig=/etc/yardstick/admin.conf -sshpass -p root ssh root@10.1.0.50 \ - kubectl config use-context yardstick --kubeconfig=/etc/yardstick/admin.conf - - - -if [ ! -n "$redirect" ]; then - redirect="/dev/stdout" -fi - -if [ ! -n "$DOCKER_TAG" ]; then - DOCKER_TAG='latest' -fi - -if [ ! -n "$NODE_NAME" ]; then - NODE_NAME='arm-virutal03' -fi - -if [ ! -n "$DEPLOY_SCENARIO" ]; then - DEPLOY_SCENARIO='k8-nosdn-lb-noha_daily' -fi - -if [ ! -n "$YARDSTICK_DB_BACKEND" ]; then - YARDSTICK_DB_BACKEND='-i 104.197.68.199:8086' -fi - -# Pull the image with correct tag -DOCKER_REPO='opnfv/yardstick' -if [ "$(uname -m)" = 'aarch64' ]; then - DOCKER_REPO="${DOCKER_REPO}_$(uname -m)" -fi -echo "Yardstick: Pulling image ${DOCKER_REPO}:${DOCKER_TAG}" -sshpass -p root ssh root@10.1.0.50 \ - docker pull ${DOCKER_REPO}:$DOCKER_TAG >$redirect - -if [ ! -n "$BRANCH" ]; then - BRANCH=master -fi - -opts="--name=yardstick --privileged=true --net=host -d -it " -envs="-e YARDSTICK_BRANCH=${BRANCH} -e BRANCH=${BRANCH} \ - -e NODE_NAME=${NODE_NAME} \ - -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO}" -rc_file_vol="-v /etc/yardstick/admin.conf:/etc/yardstick/admin.conf" -cacert_file_vol="" -map_log_dir="" -sshkey="" -YARDSTICK_SCENARIO_SUITE_NAME="opnfv_k8-nosdn-lb-noha_daily.yaml" - -# map log directory -branch=${BRANCH##*/} -#branch="master" -dir_result="${HOME}/opnfv/yardstick/results/${branch}" -mkdir -p ${dir_result} -sudo rm -rf ${dir_result}/* -map_log_dir="-v ${dir_result}:/tmp/yardstick" - -# Run docker -cmd="docker rm -f yardstick || true" -sshpass -p root ssh root@10.1.0.50 \ - ${cmd} - -cmd="sudo docker run ${opts} ${envs} ${rc_file_vol} ${cacert_file_vol} ${map_log_dir} ${sshkey} ${DOCKER_REPO}:${DOCKER_TAG} /bin/bash" -echo "Yardstick: Running docker cmd: ${cmd}" -sshpass -p root ssh root@10.1.0.50 \ - ${cmd} - - -cmd='sudo docker exec yardstick sed -i.bak "/# execute tests/i\sed -i.bak \"s/openretriever\\\/yardstick/openretriever\\\/yardstick_aarch64/g\" \ - $\{YARDSTICK_REPO_DIR\}/tests/opnfv/test_cases/opnfv_yardstick_tc080.yaml" /usr/local/bin/exec_tests.sh' -sshpass -p root ssh root@10.1.0.50 \ - ${cmd} - -echo "Yardstick: run tests: ${YARDSTICK_SCENARIO_SUITE_NAME}" -cmd="sudo docker exec yardstick exec_tests.sh ${YARDSTICK_DB_BACKEND} ${YARDSTICK_SCENARIO_SUITE_NAME}" -sshpass -p root ssh root@10.1.0.50 \ - ${cmd} - -cmd="docker rm -f yardstick" -sshpass -p root ssh root@10.1.0.50 \ - ${cmd} - -echo "Yardstick: done!" diff --git a/jjb/container4nfv/container4nfv-arm64.yaml b/jjb/container4nfv/container4nfv-arm64.yaml deleted file mode 100644 index b72c09547..000000000 --- a/jjb/container4nfv/container4nfv-arm64.yaml +++ /dev/null @@ -1,35 +0,0 @@ ---- - -- job-template: - name: 'container4nfv-{scenario}-{pod}-daily-{stream}' - disabled: '{obj:disabled}' - node: '{slave-label}' - - scm: - - git: - url: https://gerrit.opnfv.org/gerrit/container4nfv - branches: - - master - basedir: container4nfv - wipe-workspace: true - - builders: - - shell: !include-raw: arm64/deploy-cni.sh - - -- trigger: - name: 'trigger-deploy-virtual-master' - triggers: - - timed: '0 12 * * *' -- trigger: - name: 'trigger-deploy-virtual-hunter' - triggers: - - timed: '0 18 * * *' -- trigger: - name: 'trigger-deploy-baremetal-master' - triggers: - - timed: '0 12 * * *' -- trigger: - name: 'trigger-deploy-baremetal-hunter' - triggers: - - timed: '0 18 * * *' diff --git a/jjb/container4nfv/container4nfv-project.yaml b/jjb/container4nfv/container4nfv-project.yaml deleted file mode 100644 index ca286bff7..000000000 --- a/jjb/container4nfv/container4nfv-project.yaml +++ /dev/null @@ -1,169 +0,0 @@ ---- -################################################### -# All the jobs except verify have been removed! -# They will only be enabled on request by projects! -################################################### -- project: - name: container4nfv - - project: '{name}' - - jobs: - - 'container4nfv-verify-{stream}' - - 'container4nfv-daily-upload-{stream}' - - 'container4nfv-daily-deploy-{stream}' - - stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - hunter: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false - -- job-template: - name: 'container4nfv-verify-{stream}' - - disabled: '{obj:disabled}' - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - # yamllint disable rule:line-length - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from Global Jenkins\ - \ configuration in case if the stuff is done on none-LF HW." - # yamllint enable rule:line-length - - 'opnfv-build-ubuntu-defaults' - - 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**|.gitignore' - - builders: - - shell: | - cd $WORKSPACE/ci - ./build.sh - -- job-template: - name: 'container4nfv-daily-upload-{stream}' - - disabled: '{obj:disabled}' - - concurrent: false - - scm: - - git-scm - - wrappers: - - fix-workspace-permissions - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' - - 'container4nfv-defaults': - gs-pathname: '{gs-pathname}' - - builders: - - shell: | - cd $WORKSPACE/ci - ./upload.sh - -- job-template: - name: 'container4nfv-daily-deploy-{stream}' - - project-type: freestyle - - disabled: '{obj:disabled}' - - concurrent: false - - properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'clover-daily-deploy-.*?' - - 'container4nfv-daily-deploy-.*?' - blocking-level: 'NODE' - - wrappers: - - timeout: - timeout: 240 - abort: true - - fix-workspace-permissions - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - # yamllint disable rule:line-length - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from Global Jenkins\ - \ configuration in case if the stuff is done on none-LF HW." - # yamllint enable rule:line-length - - node: - name: SLAVE_NAME - description: 'Slave name on Jenkins' - allowed-slaves: - - huawei-virtual6 - default-slaves: - - huawei-virtual6 - - scm: - - git-scm - - triggers: - - timed: '@midnight' - - builders: - - shell: | - cd $WORKSPACE/ci - ./deploy.sh - -################### -# parameter macros -################### -- parameter: - name: 'container4nfv-defaults' - parameters: - - string: - name: GS_URL - default: artifacts.opnfv.org/$PROJECT{gs-pathname} - description: "URL to Google Storage." diff --git a/jjb/container4nfv/container4nfv-rtd-jobs.yaml b/jjb/container4nfv/container4nfv-rtd-jobs.yaml deleted file mode 100644 index 70512a985..000000000 --- a/jjb/container4nfv/container4nfv-rtd-jobs.yaml +++ /dev/null @@ -1,21 +0,0 @@ ---- -- project: - name: container4nfv-rtd - project: container4nfv - project-name: container4nfv - - gerrit-skip-vote: true - project-pattern: 'container4nfv' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-container4nfv/47359/' - rtd-token: '82f917a788d006dc15df14ecd3c991115490bf8a' - - stream: - - master: - branch: '{stream}' - disabled: false - - hunter: - branch: 'stable/{stream}' - disabled: false - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/container4nfv/container4nfv-views.yaml b/jjb/container4nfv/container4nfv-views.yaml deleted file mode 100644 index f57e7f0da..000000000 --- a/jjb/container4nfv/container4nfv-views.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- project: - name: container4nfv-view - views: - - common-view - view-name: container4nfv - view-regex: (^container.*|^yardstick-arm64.*) diff --git a/jjb/doctor/doctor-env-presetup.sh b/jjb/doctor/doctor-env-presetup.sh deleted file mode 100755 index ebbf32c01..000000000 --- a/jjb/doctor/doctor-env-presetup.sh +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/env bash -set -o errexit -set -o pipefail - -# set vars from env if not provided by user as options -installer_key_file=${installer_key_file:-$HOME/installer_key_file} -opnfv_installer=${opnfv_installer:-$HOME/opnfv-installer.sh} - -# Fetch INSTALLER_IP for APEX deployments -if [[ ${INSTALLER_TYPE} == 'apex' ]]; then - - echo "Gathering IP information for Apex installer VM" - ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" - if sudo virsh list | grep undercloud; then - echo "Installer VM detected" - undercloud_mac=$(sudo virsh domiflist undercloud | grep default | \ - grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+") - export INSTALLER_IP=$(/usr/sbin/arp -e | grep ${undercloud_mac} | awk {'print $1'}) - echo "Installer ip is ${INSTALLER_IP}" - else - echo "No available installer VM exists and no credentials provided...exiting" - exit 1 - fi - - sudo cp /root/.ssh/id_rsa ${installer_key_file} - sudo chown `whoami`:`whoami` ${installer_key_file} - -elif [[ ${INSTALLER_TYPE} == 'daisy' ]]; then - echo "Gathering IP information for Daisy installer VM" - if sudo virsh list | grep daisy; then - echo "Installer VM detected" - - bridge_name=$(sudo virsh domiflist daisy | grep vnet | awk '{print $3}') - echo "Bridge is $bridge_name" - - installer_mac=$(sudo virsh domiflist daisy | grep vnet | \ - grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+") - export INSTALLER_IP=$(/usr/sbin/arp -e -i $bridge_name | grep ${installer_mac} | head -n 1 | awk {'print $1'}) - - echo "Installer ip is ${INSTALLER_IP}" - else - echo "No available installer VM exists...exiting" - exit 1 - fi - -elif [[ ${INSTALLER_TYPE} == 'fuel' ]]; then - if [[ ! "${BRANCH}" =~ "danube" ]]; then - export SSH_KEY=${SSH_KEY:-/var/lib/opnfv/mcp.rsa} - sudo cp ${SSH_KEY} ${installer_key_file} - sudo chown `whoami`:`whoami` ${installer_key_file} - fi -fi - - -# Checking if destination path is valid -if [ -d $opnfv_installer ]; then - error "Please provide the full destination path for the installer ip file including the filename" -else - # Check if we can create the file (e.g. path is correct) - touch $opnfv_installer || error "Cannot create the file specified. Check that the path is correct and run the script again." -fi - - -# Write the installer info to the file -echo export INSTALLER_TYPE=${INSTALLER_TYPE} > $opnfv_installer -echo export INSTALLER_IP=${INSTALLER_IP} >> $opnfv_installer -if [ -e ${installer_key_file} ]; then - echo export SSH_KEY=${installer_key_file} >> $opnfv_installer -fi diff --git a/jjb/doctor/doctor-rtd-jobs.yaml b/jjb/doctor/doctor-rtd-jobs.yaml deleted file mode 100644 index 52a311389..000000000 --- a/jjb/doctor/doctor-rtd-jobs.yaml +++ /dev/null @@ -1,21 +0,0 @@ ---- -- project: - name: doctor-rtd - project: doctor - project-name: doctor - - gerrit-skip-vote: true - project-pattern: 'doctor' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-doctor/47362/' - rtd-token: 'bf8640556a3ba3151e4e5602facc5ed982dd88c8' - - stream: - - master: - branch: '{stream}' - disabled: false - - jerma: &jerma - branch: 'stable/{stream}' - disabled: false - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/doctor/doctor.yaml b/jjb/doctor/doctor.yaml deleted file mode 100644 index bdeecdb17..000000000 --- a/jjb/doctor/doctor.yaml +++ /dev/null @@ -1,260 +0,0 @@ ---- -- project: - name: doctor - - project: '{name}' - project-name: '{name}' - project-pattern: '{project}' - - stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - jerma: &jerma - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false - - installer: - - 'fuel': - scenario: 'os-nosdn-nofeature-noha' - - arch: - - 'x86_64' - - 'aarch64' - - inspector: - - 'sample' - - 'congress' - - jobs: - - 'doctor-verify-{stream}' - - 'doctor-verify-fault_management-{installer}-{inspector}-{arch}-{stream}' - - 'doctor-verify-maintenance-{installer}-{inspector}-{arch}-{stream}' - - 'doctor-verify-all-{installer}-{inspector}-{arch}-{stream}' - -- job-template: - name: 'doctor-verify-{stream}' - disabled: '{obj:disabled}' - project-type: 'multijob' - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'doctor-slave-parameter' - scm: - - git-scm-gerrit - triggers: - - 'doctor-verify': - project: '{project}' - branch: '{branch}' - files: 'doctor_tests/**' - - builders: - - shell: | - #!/bin/bash - # we do nothing here as the main stuff will be done - # in phase jobs - echo "Triggering phase jobs!" - - multijob: - name: 'doctor-verify-fuel' - execution-type: PARALLEL - projects: - - name: 'doctor-verify-fault_management-fuel-sample-x86_64-{stream}' - predefined-parameters: | - PROJECT=$PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - kill-phase-on: FAILURE - git-revision: true - - name: 'doctor-verify-maintenance-fuel-sample-x86_64-{stream}' - predefined-parameters: | - PROJECT=$PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - kill-phase-on: FAILURE - git-revision: true - -- job-template: - name: 'doctor-verify-fault_management-{installer}-{inspector}-{arch}-{stream}' - disabled: '{obj:disabled}' - node: 'zte-virtual4' - wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 30 - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - 'doctor-slave-parameter' - - 'doctor-parameter': - inspector: '{inspector}' - scenario: '{scenario}' - test_case: 'fault_management' - admin_tool_type: 'fenix' - app_manager_type: 'vnfm' - scm: - - git-scm-gerrit - builders: - - 'doctor-verify-installer-inspector-builders-macro' - publishers: - - 'doctor-verify-publishers-macro' - -- job-template: - name: 'doctor-verify-maintenance-{installer}-{inspector}-{arch}-{stream}' - disabled: '{obj:disabled}' - node: 'nokia-pod1' - wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 40 - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - 'doctor-slave-parameter' - - 'doctor-parameter': - inspector: '{inspector}' - scenario: '{scenario}' - test_case: 'maintenance' - admin_tool_type: 'fenix' - app_manager_type: 'vnfm' - scm: - - git-scm-gerrit - builders: - - 'doctor-verify-installer-inspector-builders-macro' - publishers: - - 'doctor-verify-publishers-macro' - -- job-template: - name: 'doctor-verify-all-{installer}-{inspector}-{arch}-{stream}' - disabled: '{obj:disabled}' - node: 'doctor-{installer}-{arch}' - wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 50 - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - 'doctor-slave-parameter' - - 'doctor-parameter': - inspector: '{inspector}' - scenario: '{scenario}' - test_case: 'all' - admin_tool_type: 'fenix' - app_manager_type: 'vnfm' - scm: - - git-scm-gerrit - builders: - - 'doctor-verify-installer-inspector-builders-macro' - publishers: - - 'doctor-verify-publishers-macro' - - -# ------------------------------- -# parameter macros -# ------------------------------- -- parameter: - name: 'doctor-parameter' - parameters: - - string: - name: INSPECTOR_TYPE - default: '{inspector}' - description: 'inspector component' - - string: - name: TEST_CASE - default: '{test_case}' - description: 'test case: all, fault_management or maintenance' - - string: - name: DEPLOY_SCENARIO - default: '{scenario}' - description: 'Scenario to deploy and test' - - string: - name: ADMIN_TOOL_TYPE - default: '{admin_tool_type}' - description: 'admin_tool_type: sample, fenix' - - string: - name: APP_MANAGER_TYPE - default: '{app_manager_type}' - description: 'app_manager_type: sample, vnfm' - -# ------------------------------- -# builder macros -# ------------------------------- - -- builder: - name: 'doctor-verify-installer-inspector-builders-macro' - builders: - # yamllint disable rule:indentation - - shell: !include-raw: - - ./doctor-env-presetup.sh - - ../../utils/fetch_os_creds.sh - - shell: | - #!/bin/bash - - # prepare the env for test - . $HOME/opnfv-openrc.sh - if [ -f $HOME/os_cacert ]; then - export OS_CACERT=$HOME/os_cacert - fi - . $HOME/opnfv-installer.sh - - # run tox to trigger the test - # As Jenkins user, it has no permission to send ICMP package - sudo -E tox -e py36 - - -# ------------------------------- -# publisher macros -# ------------------------------- -- publisher: - name: 'doctor-verify-publishers-macro' - publishers: - - archive: - artifacts: 'doctor_tests/*.log' - - email-jenkins-admins-on-failure - - workspace-cleanup - -##################################### -# trigger macros -##################################### -- trigger: - name: 'doctor-verify' - 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: '{files}' - skip-vote: - successful: true - failed: true - unstable: true - notbuilt: true diff --git a/jjb/edgecloud/edgecloud-rtd-jobs.yaml b/jjb/edgecloud/edgecloud-rtd-jobs.yaml deleted file mode 100644 index 41b013716..000000000 --- a/jjb/edgecloud/edgecloud-rtd-jobs.yaml +++ /dev/null @@ -1,24 +0,0 @@ ---- -- project: - name: edgecloud-rtd - project: edgecloud - project-name: edgecloud - - project-pattern: 'edgecloud' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-edgecloud/52895/' - rtd-token: '47989bec8e8da44ab2f33491cd6031f0411d319b' - - stream: - - master: - branch: '{stream}' - disabled: false - - hunter: &hunter - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false - - gambia: - branch: 'stable/{stream}' - disabled: false - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/edgecloud/edgecloud-views.yaml b/jjb/edgecloud/edgecloud-views.yaml deleted file mode 100644 index 2e865ddd0..000000000 --- a/jjb/edgecloud/edgecloud-views.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- project: - name: edgecloud-rtd-view - views: - - project-view - project-name: edgecloud diff --git a/jjb/fds/fds-rtd-jobs.yaml b/jjb/fds/fds-rtd-jobs.yaml deleted file mode 100644 index 9bf47b956..000000000 --- a/jjb/fds/fds-rtd-jobs.yaml +++ /dev/null @@ -1,12 +0,0 @@ ---- -- project: - name: fds-rtd - project: fds - project-name: fds - - project-pattern: 'fds' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-fds/47367/' - rtd-token: '756989c50a7c8f3350c4943f3d39a73762a4cd85' - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/fds/fds-views.yaml b/jjb/fds/fds-views.yaml deleted file mode 100644 index d06b1af0b..000000000 --- a/jjb/fds/fds-views.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- project: - name: fds-view - views: - - project-view - project-name: fds diff --git a/jjb/openci/create-ape.sh b/jjb/openci/create-ape.sh deleted file mode 100755 index 7c9b46cc6..000000000 --- a/jjb/openci/create-ape.sh +++ /dev/null @@ -1,47 +0,0 @@ -#!/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 - -# workaround for https://github.com/pypa/virtualenv/issues/1029 -export PS1=${PS1:-} - -# This script creates ArtifactPublishedEvent - -git clone https://gitlab.openci.io/openci/prototypes.git -cd prototypes/federated-cicd -virtualenv openci_publish -cd openci_publish -source bin/activate -python setup.py install - -# generate event body -cat < ./json_body.txt -{ - "type": "$PUBLISH_EVENT_TYPE", - "id": "$(uuidgen)", - "time": "$(date -u +%Y-%m-%d_%H:%M:%SUTC)", - "buildUrl": "$BUILD_URL", - "branch": "master", - "origin": "$PUBLISH_EVENT_ORIGIN", - "artifactLocation": "$ARTIFACT_LOCATION", - "confidenceLevel": "$CONFIDENCE_LEVEL" -} -EOF - -echo "Constructed $PUBLISH_EVENT_TYPE" -echo "--------------------------------------------" -cat ./json_body.txt -echo "--------------------------------------------" - -python openci_publish -H 129.192.69.55 -U ${ACTIVEMQ_USER} -p ${ACTIVEMQ_PASSWORD} -n openci.prototype -B ./json_body.txt - -deactivate diff --git a/jjb/openci/create-cde.sh b/jjb/openci/create-cde.sh deleted file mode 100755 index 9780119ce..000000000 --- a/jjb/openci/create-cde.sh +++ /dev/null @@ -1,47 +0,0 @@ -#!/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 - -export PS1=${PS1:-} - -# This script creates CompositionDefinedEvent - -git clone https://gitlab.openci.io/openci/prototypes.git -cd prototypes/federated-cicd -virtualenv openci_publish -cd openci_publish -source bin/activate -python setup.py install - -# generate event body -cat < ./json_body.txt -{ - "type": "$PUBLISH_EVENT_TYPE", - "id": "$(uuidgen)", - "time": "$(date -u +%Y-%m-%d_%H:%M:%SUTC)", - "buildUrl": "$BUILD_URL", - "branch": "master", - "origin": "$PUBLISH_EVENT_ORIGIN", - "scenario": "$DEPLOY_SCENARIO", - "compositionName": "$DEPLOY_SCENARIO", - "compositionMetadataUrl": "$SCENARIO_METADATA_LOCATION" -} -EOF - -echo "Constructed $PUBLISH_EVENT_TYPE" -echo "--------------------------------------------" -cat ./json_body.txt -echo "--------------------------------------------" - -python openci_publish -H 129.192.69.55 -U ${ACTIVEMQ_USER} -p ${ACTIVEMQ_PASSWORD} -n openci.prototype -B ./json_body.txt - -deactivate diff --git a/jjb/openci/create-clme.sh b/jjb/openci/create-clme.sh deleted file mode 100755 index 2ece019b0..000000000 --- a/jjb/openci/create-clme.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/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 - -export PS1=${PS1:-} - -# This script creates ConfidenceLevelModifiedEvent - -git clone https://gitlab.openci.io/openci/prototypes.git -cd prototypes/federated-cicd -virtualenv openci_publish -cd openci_publish -source bin/activate -python setup.py install - -# generate event body -cat < ./json_body.txt -{ - "type": "$PUBLISH_EVENT_TYPE", - "id": "$(uuidgen)", - "time": "$(date -u +%Y-%m-%d_%H:%M:%SUTC)", - "buildUrl": "$BUILD_URL", - "branch": "master", - "origin": "$PUBLISH_EVENT_ORIGIN", - "scenario": "$DEPLOY_SCENARIO", - "compositionName": "$DEPLOY_SCENARIO", - "compositionMetadataUrl": "$SCENARIO_METADATA_LOCATION", - "confidenceLevel": "$CONFIDENCE_LEVEL" -} -EOF - -echo "Constructed $PUBLISH_EVENT_TYPE" -echo "--------------------------------------------" -cat ./json_body.txt -echo "--------------------------------------------" - -python openci_publish -H 129.192.69.55 -U ${ACTIVEMQ_USER} -p ${ACTIVEMQ_PASSWORD} -n openci.prototype -B ./json_body.txt - -deactivate diff --git a/jjb/openci/openci-odl-daily-jobs.yaml b/jjb/openci/openci-odl-daily-jobs.yaml deleted file mode 100644 index bdaca5742..000000000 --- a/jjb/openci/openci-odl-daily-jobs.yaml +++ /dev/null @@ -1,81 +0,0 @@ ---- -- 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-ape.sh - -# 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: | - JMSType = 'ConfidenceLevelModifiedEvent' and JMSOrigin = 'OPNFV' and JMSScenario = 'os-odl-nofeature-ha' - - 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 deleted file mode 100644 index 88589d8ac..000000000 --- a/jjb/openci/openci-onap-daily-jobs.yaml +++ /dev/null @@ -1,81 +0,0 @@ ---- -- 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-ape.sh - -# 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: | - JMSType = 'ConfidenceLevelModifiedEvent' and JMSOrigin = 'OPNFV' and JMSScenario = 'k8-nosdn-onap-ha' - - 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 deleted file mode 100644 index 020171bc2..000000000 --- a/jjb/openci/openci-opnfv-daily-jobs.yaml +++ /dev/null @@ -1,135 +0,0 @@ ---- -- 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' - - label: - name: SLAVE_LABEL - default: 'xci-virtual' - all-nodes: false - node-eligibility: 'ignore-offline' - - wrappers: - - credentials-binding: - - username-password-separated: - credential-id: openci-connect-activemq - username: ACTIVEMQ_USER - password: ACTIVEMQ_PASSWORD - - workspace-cleanup - - triggers: - - jms-messaging: - provider-name: openci.activemq - selector: JMSType = 'ArtifactPublishedEvent' and JMSOrigin = '{origin}' - - builders: - - shell: | - #!/bin/bash - - echo - echo "Triggered by $type" - echo "----------------------------------" - echo $CI_MESSAGE - echo "----------------------------------" - - shell: - !include-raw-escape: ./create-cde.sh - -- 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' - - label: - name: SLAVE_LABEL - default: 'xci-virtual' - all-nodes: false - node-eligibility: 'ignore-offline' - - wrappers: - - credentials-binding: - - username-password-separated: - credential-id: openci-connect-activemq - username: ACTIVEMQ_USER - password: ACTIVEMQ_PASSWORD - - workspace-cleanup - - triggers: - - jms-messaging: - provider-name: openci.activemq - selector: JMSType = 'CompositionDefinedEvent' and JMSOrigin = 'OPNFV' and JMSScenario = '{scenario}' - - builders: - - shell: | - #!/bin/bash - - echo - echo "Triggered by $type" - echo "----------------------------------" - echo $CI_MESSAGE - echo "----------------------------------" - - shell: - !include-raw-escape: ./create-clme.sh diff --git a/jjb/openci/openci-views.yaml b/jjb/openci/openci-views.yaml deleted file mode 100644 index 08cff7c28..000000000 --- a/jjb/openci/openci-views.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- project: - name: openci-view - views: - - project-view - project-name: openci diff --git a/jjb/opnfvtsc/opnfvtsc-rtd-jobs.yaml b/jjb/opnfvtsc/opnfvtsc-rtd-jobs.yaml deleted file mode 100644 index b1923f458..000000000 --- a/jjb/opnfvtsc/opnfvtsc-rtd-jobs.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -- project: - name: opnfvtsc-rtd - project: opnfvtsc - project-name: opnfvtsc - - gerrit-skip-vote: true - project-pattern: 'opnfvtsc' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-opnfvtsc/47400/' - rtd-token: 'b8cbc26c46f1b1bd98adbf8c4488787a58d68fdd' - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/opnfvtsc/opnfvtsc-views.yaml b/jjb/opnfvtsc/opnfvtsc-views.yaml deleted file mode 100644 index 7c2929557..000000000 --- a/jjb/opnfvtsc/opnfvtsc-views.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- project: - name: opnfvtsc-view - views: - - project-view - project-name: opnfvtsc diff --git a/jjb/stor4nfv/stor4nfv-project.yaml b/jjb/stor4nfv/stor4nfv-project.yaml deleted file mode 100644 index 6e796cfd4..000000000 --- a/jjb/stor4nfv/stor4nfv-project.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -- project: - name: stor4nfv - - project: '{name}' - - jobs: - - '{project}-verify-basic' diff --git a/jjb/stor4nfv/stor4nfv-rtd-jobs.yaml b/jjb/stor4nfv/stor4nfv-rtd-jobs.yaml deleted file mode 100644 index 0383c77c7..000000000 --- a/jjb/stor4nfv/stor4nfv-rtd-jobs.yaml +++ /dev/null @@ -1,24 +0,0 @@ ---- -- project: - name: stor4nfv-rtd - project: stor4nfv - project-name: stor4nfv - - project-pattern: 'stor4nfv' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-stor4nfv/47394/' - rtd-token: '9c189b44cf08de75dc06253558cc86ed93982cbb' - - stream: - - master: - branch: '{stream}' - disabled: false - - hunter: &hunter - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false - - gambia: - branch: 'stable/{stream}' - disabled: false - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/stor4nfv/stor4nfv-views.yaml b/jjb/stor4nfv/stor4nfv-views.yaml deleted file mode 100644 index 74ddd2eea..000000000 --- a/jjb/stor4nfv/stor4nfv-views.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- project: - name: stor4nfv-view - views: - - project-view - project-name: stor4nfv diff --git a/jjb/xci/bifrost-cleanup-job.yaml b/jjb/xci/bifrost-cleanup-job.yaml deleted file mode 100644 index d51776173..000000000 --- a/jjb/xci/bifrost-cleanup-job.yaml +++ /dev/null @@ -1,146 +0,0 @@ ---- -- project: - name: 'openstack-bifrost-cleanup' - # ------------------------------- - # branches - # ------------------------------- - stream: - - master: - branch: '{stream}' - - # ------------------------------- - # projects - # ------------------------------- - project: - - 'openstack': - project-repo: 'https://git.openstack.org/openstack/bifrost' - clone-location: '/opt/bifrost' - - 'opnfv': - project-repo: 'https://gerrit.opnfv.org/gerrit/releng-xci' - clone-location: '/opt/releng-xci' - - # ------------------------------- - # jobs - # ------------------------------- - jobs: - - '{project}-bifrost-cleanup-{stream}' - -- job-template: - name: '{project}-bifrost-cleanup-{stream}' - - disabled: true - concurrent: false - - node: bifrost-verify-virtual - - # Make sure no verify job is running on any of the slaves since that would - # produce build logs after we wipe the destination directory. - properties: - - build-blocker: - blocking-jobs: - - '{project}-bifrost-verify-*' - - parameters: - - string: - name: PROJECT - default: '{project}' - - builders: - - shell: | - #!/bin/bash - - set -eu - - # DO NOT change this unless you know what you are doing. - BIFROST_GS_URL="gs://artifacts.opnfv.org/cross-community-ci/openstack/bifrost/$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/" - - # This should never happen... even 'recheck' uses the last jobs' - # gerrit information. Better exit with error so we can investigate - [[ ! -n $GERRIT_NAME ]] || [[ ! -n $GERRIT_CHANGE_NUMBER ]] && exit 1 - - echo "Removing build artifacts for $GERRIT_NAME/$GERRIT_CHANGE_NUMBER" - - if ! [[ "$BIFROST_GS_URL" =~ "/cross-community-ci/openstack/bifrost/" ]]; then - echo "Oops! BIFROST_GS_URL=$BIFROST_GS_URL does not seem like a valid" - echo "bifrost location on the Google storage server. Please double-check" - echo "that it's set properly or fix this line if necessary." - echo "gsutil will not be executed until this is fixed!" - exit 1 - fi - try_to_rm=1 - while [[ $try_to_rm -lt 6 ]]; do - gsutil -m rm -r $BIFROST_GS_URL && _exitcode=$? && break - _exitcode=$? - echo "gsutil rm failed! Trying again... (attempt #$try_to_rm)" - let try_to_rm += 1 - # Give it some time... - sleep 10 - done - exit $_exitcode - - triggers: - - '{project}-gerrit-trigger-cleanup': - branch: '{branch}' - - publishers: - # yamllint disable rule:line-length - - email: - recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com zhang.jun3g@zte.com.cn - # yamllint enable rule:line-length - - email-jenkins-admins-on-failure -# ------------------------------- -# trigger macros -# ------------------------------- -- trigger: - name: 'openstack-gerrit-trigger-cleanup' - triggers: - - gerrit: - server-name: 'review.openstack.org' - escape-quotes: true - trigger-on: - # We only run this when the change is merged or - # abandoned since we don't need the logs anymore - - change-merged-event - - change-abandoned-event - # This is an OPNFV maintenance job. We don't want to provide - # feedback on Gerrit - silent: true - silent-start: true - projects: - - project-compare-type: 'PLAIN' - project-pattern: 'openstack/bifrost' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'doc/**' - - compare-type: ANT - pattern: 'releasenotes/**' - readable-message: true - -- trigger: - name: 'opnfv-gerrit-trigger-cleanup' - triggers: - - gerrit: - server-name: 'gerrit.opnfv.org' - trigger-on: - # We only run this when the change is merged or - # abandoned since we don't need the logs anymore - - change-merged-event - - change-abandoned-event - # This is an OPNFV maintenance job. We don't want to provide - # feedback on Gerrit - silent: true - silent-start: true - projects: - - project-compare-type: 'ANT' - project-pattern: 'releng-xci' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'bifrost/**' - readable-message: true diff --git a/jjb/xci/bifrost-periodic-jobs.yaml b/jjb/xci/bifrost-periodic-jobs.yaml deleted file mode 100644 index 4c61be193..000000000 --- a/jjb/xci/bifrost-periodic-jobs.yaml +++ /dev/null @@ -1,154 +0,0 @@ ---- -- project: - project: 'releng-xci' - - name: 'bifrost-periodic' - # ------------------------------- - # Branch Anchors - # ------------------------------- - # the versions stated here default to branches which then later - # on used for checking out the branches, pulling in head of the branch. - master: &master - stream: master - openstack-bifrost-version: '{stream}' - opnfv-releng-version: 'master' - gs-pathname: '' - ocata: &ocata - stream: ocata - openstack-bifrost-version: 'stable/{stream}' - opnfv-releng-version: 'master' - gs-pathname: '/{stream}' - # ------------------------------- - # XCI PODs - # ------------------------------- - pod: - - virtual: - <<: *master - - virtual: - <<: *ocata - # ------------------------------- - # XCI PODs - # ------------------------------- - # ------------------------------- - # Supported Distros - # ------------------------------- - distro: - - 'xenial': - disabled: false - slave-label: xci-xenial-virtual - dib-os-release: 'xenial' - dib-os-element: 'ubuntu-minimal' - # yamllint disable rule:line-length - dib-os-packages: 'vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony,iptables' - # yamllint enable rule:line-length - extra-dib-elements: 'openssh-server' - - 'centos7': - disabled: true - slave-label: xci-centos7-virtual - dib-os-release: '7' - dib-os-element: 'centos7' - dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl' - extra-dib-elements: 'openssh-server' - - 'suse': - disabled: true - slave-label: xci-suse-virtual - dib-os-release: '42.3' - dib-os-element: 'opensuse-minimal' - dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl' - extra-dib-elements: 'openssh-server' - - # ------------------------------- - # jobs - # ------------------------------- - jobs: - - 'bifrost-provision-{pod}-{distro}-periodic-{stream}' - -# ------------------------------- -# job templates -# ------------------------------- -- job-template: - name: 'bifrost-provision-{pod}-{distro}-periodic-{stream}' - - disabled: '{obj:disabled}' - - concurrent: false - - properties: - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '^xci-os.*' - - '^xci-deploy.*' - - '^xci-functest.*' - - '^bifrost-.*periodic.*' - - '^osa-.*periodic.*' - blocking-level: 'NODE' - - logrotate-default - - parameters: - - project-parameter: - project: '{project}' - branch: '{opnfv-releng-version}' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - - string: - name: XCI_FLAVOR - default: 'ha' - - string: - name: OPENSTACK_BIFROST_VERSION - default: '{openstack-bifrost-version}' - - string: - name: OPNFV_RELENG_VERSION - default: '{opnfv-releng-version}' - - string: - name: DISTRO - default: '{distro}' - - string: - name: DIB_OS_RELEASE - default: '{dib-os-release}' - - string: - name: DIB_OS_ELEMENT - default: '{dib-os-element}' - - string: - name: DIB_OS_PACKAGES - default: '{dib-os-packages}' - - string: - name: EXTRA_DIB_ELEMENTS - default: '{extra-dib-elements}' - - string: - name: CLEAN_DIB_IMAGES - default: 'true' - - label: - name: SLAVE_LABEL - default: '{slave-label}' - all-nodes: false - node-eligibility: 'ignore-offline' - - string: - name: CI_LOOP - default: 'periodic' - - wrappers: - - fix-workspace-permissions - - scm: - - git-scm - - # trigger is disabled until we know which jobs we will have - # and adjust stuff accordingly - triggers: - - timed: '' # '@midnight' - - builders: - - description-setter: - description: "Built on $NODE_NAME - Flavor: $XCI_FLAVOR" - - 'bifrost-provision-builder' - -# -------------------------- -# builder macros -# -------------------------- -- builder: - name: bifrost-provision-builder - builders: - - shell: - !include-raw: ./bifrost-provision.sh diff --git a/jjb/xci/bifrost-provision.sh b/jjb/xci/bifrost-provision.sh deleted file mode 100755 index 4d646a676..000000000 --- a/jjb/xci/bifrost-provision.sh +++ /dev/null @@ -1,109 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2016 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 - -trap cleanup_and_upload EXIT - -function fix_ownership() { - if [ -z "${JOB_URL+x}" ]; then - echo "Not running as part of Jenkins. Handle the logs manually." - else - # Make sure cache exists - [[ ! -d ${HOME}/.cache ]] && mkdir ${HOME}/.cache - - sudo chown -R jenkins:jenkins $WORKSPACE - sudo chown -R jenkins:jenkins ${HOME}/.cache - fi -} - -function cleanup_and_upload() { - original_exit=$? - fix_ownership - exit $original_exit -} - -# check distro to see if we support it -if [[ ! "$DISTRO" =~ (xenial|centos7|suse) ]]; then - echo "Distro $DISTRO is not supported!" - exit 1 -fi - -# remove previously cloned repos -sudo /bin/rm -rf /opt/bifrost /opt/openstack-ansible /opt/releng-xci /opt/functest - -# Fix up permissions -fix_ownership - -# ensure the versions to checkout are set -export OPENSTACK_BIFROST_VERSION=${OPENSTACK_BIFROST_VERSION:-master} -export OPNFV_RELENG_VERSION=${OPNFV_RELENG_VERSION:-master} - -# log some info -echo -e "\n" -echo "***********************************************************************" -echo "* *" -echo "* Provision OpenStack Nodes *" -echo "* *" -echo " bifrost version: $OPENSTACK_BIFROST_VERSION" -echo " releng version: $OPNFV_RELENG_VERSION" -echo "* *" -echo "***********************************************************************" -echo -e "\n" - -# clone the repos and checkout the versions -sudo git clone --quiet https://git.openstack.org/openstack/bifrost /opt/bifrost -cd /opt/bifrost && sudo git checkout --quiet $OPENSTACK_BIFROST_VERSION -echo "xci: using bifrost commit" -git show --oneline -s --pretty=format:'%h - %s (%cr) <%an>' - -sudo git clone --quiet https://gerrit.opnfv.org/gerrit/releng-xci /opt/releng-xci -cd /opt/releng-xci && sudo git checkout --quiet $OPNFV_RELENG_VERSION -echo "xci: using releng commit" -git show --oneline -s --pretty=format:'%h - %s (%cr) <%an>' - -# source flavor vars -source "$WORKSPACE/xci/config/${XCI_FLAVOR}-vars" - -# combine opnfv and upstream scripts/playbooks -sudo /bin/cp -rf /opt/releng-xci/bifrost/* /opt/bifrost/ - -# cleanup remnants of previous deployment -cd /opt/bifrost -sudo -E ./scripts/destroy-env.sh - -# provision VMs for the flavor -cd /opt/bifrost -./scripts/bifrost-provision.sh - -# list the provisioned VMs -cd /opt/bifrost -source env-vars -ironic node-list -sudo -H -E virsh list - -echo "OpenStack nodes are provisioned!" -# here we have to do something in order to capture what was the working sha1 -# hardcoding stuff for the timebeing - -cd /opt/bifrost -BIFROST_GIT_SHA1=$(git rev-parse HEAD) - -# log some info -echo -e "\n" -echo "***********************************************************************" -echo "* BIFROST SHA1 TO PIN *" -echo "* *" -echo " $BIFROST_GIT_SHA1" -echo "* *" -echo "***********************************************************************" - -echo -e "\n" diff --git a/jjb/xci/bifrost-verify-jobs.yaml b/jjb/xci/bifrost-verify-jobs.yaml deleted file mode 100644 index f895cf672..000000000 --- a/jjb/xci/bifrost-verify-jobs.yaml +++ /dev/null @@ -1,225 +0,0 @@ ---- -- project: - name: 'openstack-bifrost-verify' - # ------------------------------- - # branches - # ------------------------------- - stream: - - master: - branch: '{stream}' - # ------------------------------- - # distros - # ------------------------------- - distro: - - 'xenial': - disabled: true - dib-os-release: 'xenial' - dib-os-element: 'ubuntu-minimal' - dib-os-packages: 'vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl' - extra-dib-elements: 'openssh-server' - - 'centos7': - disabled: true - dib-os-release: '7' - dib-os-element: 'centos-minimal' - dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl' - extra-dib-elements: 'openssh-server' - - 'opensuse423': - disabled: true - dib-os-release: '42.3' - dib-os-element: 'opensuse-minimal' - dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl' - extra-dib-elements: 'openssh-server' - # ------------------------------- - # type - # ------------------------------- - type: - - virtual - # ------------------------------- - # jobs - # ------------------------------- - jobs: - - 'openstack-bifrost-verify-{distro}-{type}-{stream}' - -# ------------------------------- -# VM defaults -# ------------------------------- -- defaults: - name: verify_vm_defaults - test-vm-num-nodes: '3' - test-vm-node-names: 'opnfv controller00 compute00' - vm-domain-type: 'kvm' - vm-cpu: '2' - vm-disk: '30' - vm-memory-size: '4096' - vm-disk-cache: 'unsafe' - -# ------------------------------- -# job templates -# ------------------------------- -- job-template: - name: 'openstack-bifrost-verify-{distro}-{type}-{stream}' - - disabled: '{obj:disabled}' - - defaults: verify_vm_defaults - - concurrent: false - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'xci-verify-{distro}-.*' - - 'xci-.*-{distro}-merge-.*' - - '.*-bifrost-verify.*-{type}' - - throttle: - max-per-node: 2 - max-total: 10 - categories: - - xci-verify-virtual - option: category - - blocking-level: 'NODE' - - parameters: - - string: - name: PROJECT_REPO - default: 'https://git.openstack.org/openstack/bifrost' - - string: - name: DISTRO - default: '{distro}' - - string: - name: DIB_OS_RELEASE - default: '{dib-os-release}' - - string: - name: DIB_OS_ELEMENT - default: '{dib-os-element}' - - string: - name: EXTRA_DIB_ELEMENTS - default: '{extra-dib-elements}' - - string: - name: DIB_OS_PACKAGES - default: '{dib-os-packages}' - - string: - name: TEST_VM_NUM_NODES - default: '{test-vm-num-nodes}' - - string: - name: TEST_VM_NODE_NAMES - default: '{test-vm-node-names}' - - string: - name: VM_DOMAIN_TYPE - default: '{vm-domain-type}' - - string: - name: VM_CPU - default: '{vm-cpu}' - - string: - name: VM_DISK - default: '{vm-disk}' - - string: - name: VM_MEMORY_SIZE - default: '{vm-memory-size}' - - string: - name: VM_DISK_CACHE - default: '{vm-disk-cache}' - - string: - name: CLEAN_DIB_IMAGES - default: 'true' - - label: - name: SLAVE_LABEL - default: 'xci-virtual' - all-nodes: false - node-eligibility: 'ignore-offline' - - string: - name: CI_LOOP - default: 'verify' - - scm: - - git: - url: '$PROJECT_REPO' - refspec: '$GERRIT_REFSPEC' - branches: - - 'origin/$BRANCH' - skip-tag: true - choosing-strategy: 'gerrit' - timeout: 10 - wipe-workspace: true - - triggers: - - 'openstack-gerrit-trigger': - branch: '{branch}' - - builders: - - bifrost-set-name - - bifrost-build - - wrappers: - - fix-workspace-permissions - - build-timeout: - timeout: 180 - - publishers: - # yamllint disable rule:line-length - - email: - recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com - # yamllint enable rule:line-length - - email-jenkins-admins-on-failure - - postbuildscript: - builders: - - 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 -# ------------------------------- -- trigger: - name: 'openstack-gerrit-trigger' - triggers: - - gerrit: - server-name: 'review.openstack.org' - escape-quotes: true - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' - - comment-added-contains-event: - comment-contains-value: 'recheck' - silent-start: true - custom-url: '* $JOB_NAME $BUILD_URL' - projects: - - project-compare-type: 'PLAIN' - project-pattern: 'openstack/bifrost' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'doc/**' - - compare-type: ANT - pattern: 'releasenotes/**' - readable-message: true - -# -------------------------- -# builder macros -# -------------------------- -- builder: - name: bifrost-set-name - builders: - - description-setter: - description: "Built on $NODE_NAME" - -- builder: - name: bifrost-build - builders: - - shell: - !include-raw: ./bifrost-verify.sh diff --git a/jjb/xci/bifrost-verify.sh b/jjb/xci/bifrost-verify.sh deleted file mode 100755 index c810212e3..000000000 --- a/jjb/xci/bifrost-verify.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2016 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 - -git clone https://gerrit.opnfv.org/gerrit/releng-xci $WORKSPACE/releng-xci - -cd $WORKSPACE -git fetch $PROJECT_REPO $GERRIT_REFSPEC && sudo git checkout FETCH_HEAD - -# combine opnfv and upstream scripts/playbooks -/bin/cp -rf $WORKSPACE/releng-xci/xci/infra/bifrost/* $WORKSPACE/ - -cd $WORKSPACE/releng-xci -cat > bifrost_test.sh< xci_test.sh< /dev/null 2>&1 || true - sudo virsh undefine $vm > /dev/null 2>&1 || true - sudo killall -r vbmc > /dev/null 2>&1 || true - sudo rm -rf /root/.vbmc > /dev/null 2>&1 || true - done - echo "---------------------------------------------------------------------------------" - - # select the right PDF/IDF - export PDF=$WORKSPACE/xci/var/${NODE_NAME}-pdf.yml - export IDF=$WORKSPACE/xci/var/${NODE_NAME}-idf.yml - if [[ "$NODE_NAME" =~ "virtual" ]]; then - export PDF=$WORKSPACE/xci/var/pdf.yml - export IDF=$WORKSPACE/xci/var/idf.yml - fi - - cd $WORKSPACE/xci && ./xci-deploy.sh -p $PDF -i $IDF - - echo "Prepare OPNFV VM for Tests" - echo "---------------------------------------------------------------------------------" - export XCI_PATH=$WORKSPACE - export XCI_VENV=${XCI_PATH}/venv - source $XCI_VENV/bin/activate - while read var; do - declare -x "\${var}" 2>/dev/null - echo $var - done < ${XCI_PATH}/.cache/xci.env && cd ${XCI_PATH}/xci && \ - ansible-playbook -i playbooks/dynamic_inventory.py playbooks/prepare-tests.yml - ssh root@192.168.122.2 "/root/prepare-tests.sh" - echo "---------------------------------------------------------------------------------" - -- builder: - name: 'xci-daily-functest-macro' - builders: - - shell: | - #!/bin/bash - set -o pipefail - - ssh root@192.168.122.2 "/root/run-functest.sh" - functest_exit=$? - - case ${DEPLOY_SCENARIO[0]} in - os-*) - FUNCTEST_LOG=/root/functest-results/functest.log - ;; - k8-*) - FUNCTEST_LOG=/root/functest-results/functest-kubernetes.log - ;; - *) - echo "Unable to determine the installer. Exiting!" - exit $functest_exit - ;; - esac - - echo "Functest log" - echo "---------------------------------------------------------------------------------" - ssh root@192.168.122.2 "cat $FUNCTEST_LOG" - echo "---------------------------------------------------------------------------------" - exit ${functest_exit} -- builder: - name: 'xci-daily-yardstick-macro' - builders: - - shell: | - #!/bin/bash - set -o errexit - set -o pipefail - - ssh root@192.168.122.2 "/root/run-yardstick.sh" diff --git a/jjb/xci/xci-deploy.sh b/jjb/xci/xci-deploy.sh deleted file mode 100755 index 71cf96d8d..000000000 --- a/jjb/xci/xci-deploy.sh +++ /dev/null @@ -1,75 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2016 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 - -cd $WORKSPACE/xci - -# for daily jobs, we want to use working versions -# for periodic jobs, we will use whatever is set in the job, probably master -if [[ "$CI_LOOP" == "daily" ]]; then - # source pinned-vars to get releng version - source ./config/pinned-versions - - # checkout the version - git checkout -q $OPNFV_RELENG_VERSION - echo "Info: Using $OPNFV_RELENG_VERSION" -elif [[ "$CI_LOOP" == "periodic" ]]; then - echo "Info: Using $OPNFV_RELENG_VERSION" -fi - -# this is just an example to give the idea about what we need to do -# so ignore this part for the timebeing as we need to adjust xci-deploy.sh -# to take this into account while deploying anyways -# clone openstack-ansible -# stable/ocata already use pinned versions so this is only valid for master -if [[ "$CI_LOOP" == "periodic" && "$OPENSTACK_OSA_VERSION" == "master" ]]; then - cd $WORKSPACE - # get the url to openstack-ansible git - source ./config/env-vars - echo "Info: Capture the ansible role requirement versions before doing anything" - git clone -q $OPENSTACK_OSA_GIT_URL - cd openstack-ansible - cat ansible-role-requirements.yml | while IFS= read -r line - do - if [[ $line =~ "src:" ]]; then - repo_url=$(echo $line | awk {'print $2'}) - repo_sha1=$(git ls-remote $repo_url $OPENSTACK_OSA_VERSION | awk {'print $1'}) - fi - echo "$line" | sed -e "s|master|$repo_sha1|" >> opnfv-ansible-role-requirements.yml - done - echo "Info: SHA1s of ansible role requirements" - echo "-------------------------------------------------------------------------" - cat opnfv-ansible-role-requirements.yml - echo "-------------------------------------------------------------------------" -fi - -# proceed with the deployment -cd $WORKSPACE/xci -./xci-deploy.sh - -if [[ "$JOB_NAME" =~ "periodic" && "$OPENSTACK_OSA_VERSION" == "master" ]]; then - # if we arrived here without failing, it means we have something we can pin - # this is again here to show the intention - cd $WORKSPACE/openstack-ansible - OSA_GIT_SHA1=$(git rev-parse HEAD) - - # log some info - echo -e "\n" - echo "***********************************************************************" - echo "* OSA SHA1 TO PIN *" - echo "* *" - echo " $OSA_GIT_SHA1" - echo "* *" - echo "***********************************************************************" -fi - -echo -e "\n" diff --git a/jjb/xci/xci-merge-jobs.yaml b/jjb/xci/xci-merge-jobs.yaml deleted file mode 100644 index 666ca9680..000000000 --- a/jjb/xci/xci-merge-jobs.yaml +++ /dev/null @@ -1,492 +0,0 @@ ---- -- project: - name: 'opnfv-xci-merge' - - project: releng-xci - # ------------------------------- - # branches - # ------------------------------- - stream: - - master: - branch: '{stream}' - disabled: true - # ------------------------------- - # distros - # ------------------------------- - distro: - - ubuntu: - disabled: true - kill-phase-on: FAILURE - abort-all-job: true - - centos: - disabled: true - kill-phase-on: NEVER - abort-all-job: false - - opensuse: - disabled: true - kill-phase-on: FAILURE - abort-all-job: true - # ------------------------------- - # postmerge promotion phases - # ------------------------------- - phase: - - 'deploy' - - 'healthcheck' - # ------------------------------- - # jobs - # ------------------------------- - jobs: - - 'xci-merge-virtual-{stream}' - - 'xci-merge-promote-virtual-{stream}' - - 'xci-merge-{distro}-virtual-{stream}' - - 'xci-merge-{distro}-{phase}-virtual-{stream}' -# ------------------------------- -# job templates -# ------------------------------- -- job-template: - name: 'xci-merge-virtual-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - concurrent: false - - properties: - - logrotate-default - - wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions - - scm: - - git-scm-gerrit - - 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-xci' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'false' - forbidden-file-paths: - - compare-type: ANT - pattern: 'xci/scripts/vm/**' - - compare-type: ANT - pattern: 'docs/**' - - compare-type: ANT - pattern: 'prototypes/**' - - compare-type: ANT - pattern: 'upstream/**' - - compare-type: ANT - pattern: 'INFO.yaml' - - project-compare-type: 'REG_EXP' - project-pattern: 'sfc|sdnvpn|releng-xci-scenarios' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - file-paths: - - compare-type: ANT - pattern: 'scenarios/**' - readable-message: true - custom-url: '* $JOB_NAME $BUILD_URL' - - parameters: - - project-parameter: - project: $GERRIT_PROJECT - branch: '{branch}' - - label: - name: SLAVE_LABEL - default: 'xci-virtual' - all-nodes: false - node-eligibility: 'ignore-offline' - - string: - name: CI_LOOP - default: 'merge' - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_SUITE_NAME - default: 'healthcheck' - - string: - name: DISTRO - default: 'all' - - string: - name: CLEAN_DIB_IMAGES - default: 'true' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - builders: - - 'xci-merge-set-scenario-macro' - - inject: - properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - description-setter: - description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" - - multijob: - name: deploy and test - condition: SUCCESSFUL - projects: - - name: 'xci-merge-opensuse-virtual-{stream}' - current-parameters: false - predefined-parameters: | - DISTRO=opensuse - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - CI_LOOP=$CI_LOOP - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: true - - name: 'xci-merge-ubuntu-virtual-{stream}' - current-parameters: false - predefined-parameters: | - DISTRO=ubuntu - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - CI_LOOP=$CI_LOOP - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: true - - name: 'xci-merge-centos-virtual-{stream}' - current-parameters: false - predefined-parameters: | - DISTRO=centos - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - CI_LOOP=$CI_LOOP - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: false - kill-phase-on: NEVER - abort-all-job: false - - inject: - properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - multijob: - name: promote - condition: SUCCESSFUL - projects: - - name: 'xci-merge-promote-virtual-{stream}' - current-parameters: true - predefined-parameters: | - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - CI_LOOP=$CI_LOOP - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - -- job-template: - name: 'xci-merge-{distro}-virtual-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - concurrent: false - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'xci-verify-{distro}-.*' - - 'xci-merge-{distro}-.*' - - 'xci-os.*' - - 'xci-k8.*' - - 'openstack-bifrost-verify-{distro}-.*' - - 'xci-osa-verify-{distro}-.*' - - 'xci-osa-periodic-{distro}-.*' - blocking-level: 'NODE' - - throttle: - max-per-node: 1 - max-total: 3 - categories: - - xci-verify-virtual - option: category - - wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions - - scm: - - git-scm-gerrit - - parameters: - - project-parameter: - project: $GERRIT_PROJECT - branch: '{branch}' - - label: - name: SLAVE_LABEL - default: 'xci-virtual' - all-nodes: false - node-eligibility: 'ignore-offline' - - string: - name: CI_LOOP - default: 'merge' - - string: - name: FUNCTEST_VERSION - default: 'hunter' - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_SUITE_NAME - default: 'healthcheck' - - string: - name: DISTRO - default: '{distro}' - - string: - name: CLEAN_DIB_IMAGES - default: 'true' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - builders: - - 'xci-merge-set-scenario-macro' - - inject: - properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - description-setter: - description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" - - multijob: - name: deploy - condition: SUCCESSFUL - projects: - - name: 'xci-merge-{distro}-deploy-virtual-{stream}' - current-parameters: true - predefined-parameters: | - DISTRO={distro} - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - FUNCTEST_VERSION=$FUNCTEST_VERSION - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: true - kill-phase-on: '{kill-phase-on}' - abort-all-job: '{abort-all-job}' - - multijob: - name: healthcheck - condition: SUCCESSFUL - projects: - - name: 'xci-merge-{distro}-healthcheck-virtual-{stream}' - current-parameters: true - predefined-parameters: | - DISTRO={distro} - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - CI_LOOP=$CI_LOOP - FUNCTEST_VERSION=$FUNCTEST_VERSION - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: true - kill-phase-on: '{kill-phase-on}' - abort-all-job: '{abort-all-job}' - - publishers: - - postbuildscript: - builders: - - 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}' - - disabled: false - - concurrent: false - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '.*-bifrost-verify-.*' - - '.*-bifrost-periodic-.*' - - 'osa-verify-.*' - - 'osa-periodic-.*' - blocking-level: 'NODE' - - parameters: - - string: - name: PROJECT - default: $GERRIT_PROJECT - - string: - name: DISTRO - default: 'ubuntu' - - string: - name: CI_LOOP - default: 'merge' - - string: - name: FUNCTEST_VERSION - default: 'hunter' - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_SUITE_NAME - default: 'healthcheck' - - string: - name: XCI_FLAVOR - default: 'mini' - - string: - name: CLEAN_DIB_IMAGES - default: 'true' - - string: - name: OPNFV_RELENG_DEV_PATH - default: $WORKSPACE/ - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - wrappers: - - inject: - properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions - - scm: - - git-scm-gerrit - - builders: - - description-setter: - description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" - - 'xci-merge-{phase}-macro' - -- job-template: - name: 'xci-merge-promote-virtual-{stream}' - - disabled: false - - concurrent: false - - properties: - - logrotate-default - - parameters: - - string: - name: PROJECT - default: $GERRIT_PROJECT - - string: - name: CI_LOOP - default: 'merge' - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_SUITE_NAME - default: 'healthcheck' - - string: - name: DISTRO - default: 'all' - - string: - name: OPNFV_RELENG_DEV_PATH - default: $WORKSPACE/ - - string: - name: LOCAL_PROMOTION_METADATA_FILE - default: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - string: - name: REMOTE_PROMOTION_METADATA_FILE - default: "gs://artifacts.opnfv.org/xci/pipeline/merge/$DEPLOY_SCENARIO.properties" - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - wrappers: - - inject: - properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions - - builders: - - description-setter: - description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" - - 'xci-merge-promote-macro' - -# ------------------------------- -# builder macros -# ------------------------------- -- builder: - name: 'xci-merge-set-scenario-macro' - builders: - - shell: - !include-raw: ./xci-set-scenario.sh - -- builder: - name: 'xci-merge-deploy-macro' - builders: - - shell: - !include-raw: ./xci-start-new-vm.sh - - - shell: - !include-raw: ./xci-start-deployment.sh - -- builder: - name: 'xci-merge-healthcheck-macro' - builders: - - shell: - !include-raw: ./xci-run-functest.sh - -- builder: - name: 'xci-merge-promote-macro' - builders: - - shell: - !include-raw: ./xci-promote.sh diff --git a/jjb/xci/xci-promote.sh b/jjb/xci/xci-promote.sh deleted file mode 100755 index d8d61bee2..000000000 --- a/jjb/xci/xci-promote.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2018 Ericsson 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 -############################################################################## - -#---------------------------------------------------------------------- -# This script is used by CI and executed by Jenkins jobs. -# You are not supposed to use this script manually if you don't know -# what you are doing. -#---------------------------------------------------------------------- - -# ensure GERRIT_TOPIC is set -GERRIT_TOPIC="${GERRIT_TOPIC:-''}" - -# skip the healthcheck if the patch doesn't impact the deployment -if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then - echo "Skipping the healthcheck!" - exit 0 -fi - -# fail if promotion metadata file doesn't exist -if [ ! -f $LOCAL_PROMOTION_METADATA_FILE ]; then - echo "Unable to find promotion metadata file $LOCAL_PROMOTION_METADATA_FILE" - echo "Skipping promotion!" - exit 1 -fi - -# put additional info into the metadata file so we can use that for displaying the information -echo "PROMOTED_BY=$BUILD_URL" >> $LOCAL_PROMOTION_METADATA_FILE -echo "PROMOTED_ON=$(date -u '+%F_%H:%M'UTC)" >> $LOCAL_PROMOTION_METADATA_FILE - -# upload promotion metadata file to OPNFV artifact repo -echo "Storing promotion metadata as $REMOTE_PROMOTION_METADATA_FILE" -gsutil cp $LOCAL_PROMOTION_METADATA_FILE $REMOTE_PROMOTION_METADATA_FILE > /dev/null 2>&1 - -# update the file metadata on gs to prevent the use of cached version of the file -gsutil -m setmeta -r -h "Content-Type:text/html" \ - -h "Cache-Control:private, max-age=0, no-transform" \ - $REMOTE_PROMOTION_METADATA_FILE > /dev/null 2>&1 - -# log the metadata to console -echo "Stored the metadata for $DEPLOY_SCENARIO" -echo "---------------------------------------------------------------------------------" -gsutil cat $REMOTE_PROMOTION_METADATA_FILE -echo "---------------------------------------------------------------------------------" -echo "Scenario $DEPLOY_SCENARIO has successfully been promoted!" diff --git a/jjb/xci/xci-rtd-jobs.yaml b/jjb/xci/xci-rtd-jobs.yaml deleted file mode 100644 index d21aad5a0..000000000 --- a/jjb/xci/xci-rtd-jobs.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -- project: - name: releng-xci-rtd - project: releng-xci - project-name: releng-xci - - gerrit-skip-vote: true - project-pattern: 'releng-xci' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-releng-xci/47389/' - rtd-token: '7dbc774ea9a625296d2e973aff3e79af26b15d4d' - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/xci/xci-run-functest.sh b/jjb/xci/xci-run-functest.sh deleted file mode 100755 index 992194ca3..000000000 --- a/jjb/xci/xci-run-functest.sh +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2018 SUSE 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 nounset - -#---------------------------------------------------------------------- -# This script is used by CI and executed by Jenkins jobs. -# You are not supposed to use this script manually if you don't know -# what you are doing. -#---------------------------------------------------------------------- - -# ensure GERRIT_TOPIC is set -GERRIT_TOPIC="${GERRIT_TOPIC:-''}" - -# skip the healthcheck if the patch doesn't impact the deployment -if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then - echo "Skipping the healthcheck!" - exit 0 -fi - -# if the scenario is external, we need to wipe WORKSPACE to place releng-xci there since -# the project where the scenario is coming from is cloned and the patch checked out to the -# xci/scenarios/$DEPLOY_SCENARIO to be synched on clean VM -# apart from that, we need releng-xci stuff in WORKSPACE for things to function correctly on Jenkins. -# if the change is coming to releng-xci, we don't need to do anything since the patch is checked -# out to the WORKSPACE anyways -if [[ $GERRIT_PROJECT != "releng-xci" ]]; then - cd $HOME && /bin/rm -rf $WORKSPACE - git clone https://gerrit.opnfv.org/gerrit/releng-xci $WORKSPACE && cd $WORKSPACE - chmod -R go-rwx $WORKSPACE/xci/scripts/vm -fi - -# skip the deployment if the scenario is not supported on this distro -OPNFV_SCENARIO_REQUIREMENTS=$WORKSPACE/xci/opnfv-scenario-requirements.yml -if ! sed -n "/^- scenario: $DEPLOY_SCENARIO$/,/^$/p" $OPNFV_SCENARIO_REQUIREMENTS | grep -q $DISTRO; then - echo "# SKIPPED: Scenario $DEPLOY_SCENARIO is NOT supported on $DISTRO" - exit 0 -fi - -# set XCI_VENV for ansible -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 playbooks/dynamic_inventory.py playbooks/prepare-tests.yml" -echo "Prepare OPNFV VM for Tests" -ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm_opnfv "/root/prepare-tests.sh" -echo "Running Functest" -ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm_opnfv "/root/run-functest.sh" -# Record exit code -functest_exit=$? - -case ${DEPLOY_SCENARIO[0]} in - os-*) - FUNCTEST_LOG=/root/functest-results/functest.log - ;; - k8-*) - FUNCTEST_LOG=/root/functest-results/functest-kubernetes.log - ;; - *) - echo "Unable to determine the installer. Exiting!" - exit 1 - ;; -esac - -echo "Functest log" -echo "---------------------------------------------------------------------------------" -ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm_opnfv "cat $FUNCTEST_LOG" -echo "---------------------------------------------------------------------------------" -exit ${functest_exit} diff --git a/jjb/xci/xci-set-scenario.sh b/jjb/xci/xci-set-scenario.sh deleted file mode 100755 index ccea16f87..000000000 --- a/jjb/xci/xci-set-scenario.sh +++ /dev/null @@ -1,265 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2018 SUSE 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 pipefail -set -x - -#---------------------------------------------------------------------- -# This script is used by CI and executed by Jenkins jobs. -# You are not supposed to use this script manually if you don't know -# what you are doing. -#---------------------------------------------------------------------- - -# This function allows developers to specify the impacted scenario by adding -# the info about installer and scenario into the commit message or using -# the topic branch names. This results in either skipping the real verification -# totally or skipping the determining the installer and scenario programmatically. -# It is important to note that this feature is only available to generic scenarios -# and only single installer/scenario pair is allowed. -# The input in commit message should be placed at the end of the commit message body, -# before the signed-off and change-id lines. -# -# Pattern to be searched in Commit Message -# deploy-scenario: -# installer-type: -# Examples: -# deploy-scenario:os-odl-nofeature -# installer-type:osa -# -# deploy-scenario:k8-nosdn-nofeature -# installer-type:kubespray -# -# Patterns to be searched in topic branch name -# skip-verify -# skip-deployment -# force-verify -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 - # 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 - SCENARIO_SHA=$XCI_SHA - - # process topic branch names - if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment|force-verify ]]; then - [[ "$GERRIT_TOPIC" =~ force-verify ]] && echo "Forcing CI verification using default scenario and installer!" - [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]] && echo "Skipping verification!" - echo "INSTALLER_TYPE=osa" >> $WORK_DIRECTORY/scenario.properties - echo "DEPLOY_SCENARIO=os-nosdn-nofeature" >> $WORK_DIRECTORY/scenario.properties - echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties - echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties - echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties - log_scenario_properties - exit 0 - fi - - # process commit message - if [[ "$GERRIT_CHANGE_COMMIT_MESSAGE" =~ "installer-type:" && "$GERRIT_CHANGE_COMMIT_MESSAGE" =~ "deploy-scenario:" ]]; then - INSTALLER_TYPE=$(echo $GERRIT_CHANGE_COMMIT_MESSAGE | awk '/installer-type:/' RS=" " | cut -d":" -f2) - DEPLOY_SCENARIO=$(echo $GERRIT_CHANGE_COMMIT_MESSAGE | awk '/deploy-scenario:/' RS=" " | cut -d":" -f2) - - if [[ -z "$INSTALLER_TYPE" || -z "$DEPLOY_SCENARIO" ]]; then - echo "Installer type or deploy scenario is not specified. Falling back to programmatically determining them." - else - echo "Recording the installer '$INSTALLER_TYPE' and scenario '$DEPLOY_SCENARIO' for downstream jobs" - echo "INSTALLER_TYPE=$INSTALLER_TYPE" >> $WORK_DIRECTORY/scenario.properties - echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> $WORK_DIRECTORY/scenario.properties - echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties - echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties - echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties - log_scenario_properties - exit 0 - fi - else - echo "Installer type or deploy scenario is not specified. Falling back to programmatically determining them." - fi -} - -# 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 -# releng-xci/installer//: -function determine_default_scenario() { - echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC" - - # get the changeset - cd $WORKSPACE - # 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_INSTALLER in $INSTALLERS; do - case $CHANGED_INSTALLER in - kubespray) - DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='k8-nosdn-nofeature' - ;; - # Default case (including OSA changes) - *) - DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='os-nosdn-nofeature' - ;; - 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'; 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) - - # 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 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 -# /scenarios//: -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 - # things continue functioning properly - cd $HOME && /bin/rm -rf $WORKSPACE - git clone -q https://gerrit.opnfv.org/gerrit/releng-xci $WORKSPACE && cd $WORKSPACE - - # fix the permissions so ssh doesn't complain due to having world-readable keyfiles - chmod -R go-rwx $WORKSPACE/xci/scripts/vm - - # clone the project repo and fetch the patchset to process for further processing - git clone -q https://gerrit.opnfv.org/gerrit/$GERRIT_PROJECT $WORK_DIRECTORY/$GERRIT_PROJECT - cd $WORK_DIRECTORY/$GERRIT_PROJECT - git fetch -q https://gerrit.opnfv.org/gerrit/$GERRIT_PROJECT $GERRIT_REFSPEC && git checkout -q FETCH_HEAD - - # process the diff to find out what scenario(s) are impacted - there should only be 1 - DEPLOY_SCENARIO+=$(git diff HEAD^..HEAD --name-only | grep scenarios | awk -F '[/|/]' '{print $2}' | uniq) - - # extract releng-xci sha - XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD) - - # extract scenario sha - SCENARIO_SHA=$(cd $WORK_DIRECTORY/$GERRIT_PROJECT && git rev-parse HEAD) -} - -# This function allows developers to specify the specific XCI flavor for the -# impacted scenario by adding the XCI Flavor info about the specific scenario. -# This results in either skipping the real verification -# totally or skipping the determining the installer and scenario programmatically. -# It is important to note that this feature is only available to generic scenarios -# and only single installer/scenario pair is allowed. -# The input in commit message should be placed at the end of the commit message body, -# before the signed-off and change-id lines. -# -# Pattern to be searched in Commit Message -# xci-flavor: -# Examples: -# xci-flavor:noha -function override_xci_flavor() { - echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC" - - # process commit message for XCI Flavor - if [[ "$GERRIT_CHANGE_COMMIT_MESSAGE" =~ "xci-flavor:" ]]; then - XCI_FLAVOR=$(echo $GERRIT_CHANGE_COMMIT_MESSAGE | awk '/xci-flavor:/' RS=" " | cut -d":" -f2) - - if [[ -z "$XCI_FLAVOR" ]]; then - XCI_FLAVOR='mini' - echo "XCI flavor is not specified. The default is specified instead (i.e. mini). Falling back to programmatically determining them." - echo "XCI_FLAVOR=mini" >> $WORK_DIRECTORY/scenario.properties - else - echo "Recording the XCI flavor '$XCI_FLAVOR' for downstream jobs" - echo "XCI_FLAVOR=$XCI_FLAVOR" >> $WORK_DIRECTORY/scenario.properties - fi - else - XCI_FLAVOR='mini' - echo "XCI flavor is not specified. The default is specified instead (i.e. mini). Falling back to programmatically determining them." - echo "XCI_FLAVOR=mini" >> $WORK_DIRECTORY/scenario.properties - fi - -} - -function log_scenario_properties() { - echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC" - echo "-------------------------------------------------------------------------" - cat $WORK_DIRECTORY/scenario.properties - echo "-------------------------------------------------------------------------" -} - -echo "Determining the impacted scenario" - -declare -a DEPLOY_SCENARIO - -# ensure GERRIT_TOPIC is set -GERRIT_TOPIC="${GERRIT_TOPIC:-''}" - -# this directory is where the temporary clones and files are created -# while extracting the impacted scenario -WORK_DIRECTORY=/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO -/bin/rm -rf $WORK_DIRECTORY && mkdir -p $WORK_DIRECTORY - -if [[ $GERRIT_PROJECT == "releng-xci" ]]; then - determine_default_scenario -else - determine_scenario -fi -override_xci_flavor -override_scenario - -# ensure single scenario is impacted - if [[ $(IFS=$'\n' echo ${DEPLOY_SCENARIO[@]} | wc -w) != 1 ]]; then - echo "Change impacts multiple scenarios!" - echo "XCI doesn't support testing of changes that impact multiple scenarios currently." - echo "Please split your change into multiple different/dependent changes, each modifying single scenario." - exit 1 -fi - -# set the installer -case ${DEPLOY_SCENARIO[0]} in - os-*) - INSTALLER_TYPE=osa - ;; - k8-*) - INSTALLER_TYPE=kubespray - ;; - *) - echo "Unable to determine the installer. Exiting!" - exit 1 - ;; -esac - -# save the installer and scenario names into java properties file -# so they can be injected to downstream jobs via envInject -echo "Recording the installer '$INSTALLER_TYPE' and scenario '${DEPLOY_SCENARIO[0]}' and SHAs for downstream jobs" -echo "INSTALLER_TYPE=$INSTALLER_TYPE" >> $WORK_DIRECTORY/scenario.properties -echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> $WORK_DIRECTORY/scenario.properties -echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties -echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties -echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties - -# log scenario.properties to console to ease the troubleshooting when needed -log_scenario_properties - -# skip scenario support check if the job is promotion job -if [[ "$JOB_NAME" =~ (os|k8) ]]; then - exit 0 -fi - -# skip the deployment if the scenario is not supported on this distro -OPNFV_SCENARIO_REQUIREMENTS=$WORKSPACE/xci/opnfv-scenario-requirements.yml -if ! sed -n "/^- scenario: ${DEPLOY_SCENARIO[0]}$/,/^$/p" $OPNFV_SCENARIO_REQUIREMENTS | grep -q $DISTRO; then - echo "# SKIPPED: Scenario ${DEPLOY_SCENARIO[0]} is NOT supported on $DISTRO" - exit 0 -fi diff --git a/jjb/xci/xci-start-deployment.sh b/jjb/xci/xci-start-deployment.sh deleted file mode 100755 index 102ca41c3..000000000 --- a/jjb/xci/xci-start-deployment.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2018 SUSE 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 -############################################################################## - -#---------------------------------------------------------------------- -# This script is used by CI and executed by Jenkins jobs. -# You are not supposed to use this script manually if you don't know -# what you are doing. -#---------------------------------------------------------------------- - -# ensure GERRIT_TOPIC is set -GERRIT_TOPIC="${GERRIT_TOPIC:-''}" - -# skip the deployment if the patch doesn't impact the deployment -if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then - echo "Skipping the deployment!" - exit 0 -fi - -# if the scenario is external, we need to wipe WORKSPACE to place releng-xci there since -# the project where the scenario is coming from is cloned and the patch checked out to the -# xci/scenarios/$DEPLOY_SCENARIO to be synched on clean VM -# apart from that, we need releng-xci stuff in WORKSPACE for things to function correctly on Jenkins. -# if the change is coming to releng-xci, we don't need to do anything since the patch is checked -# out to the WORKSPACE anyways -if [[ $GERRIT_PROJECT != "releng-xci" ]]; then - cd $HOME && /bin/rm -rf $WORKSPACE - git clone https://gerrit.opnfv.org/gerrit/releng-xci $WORKSPACE && cd $WORKSPACE - chmod -R go-rwx $WORKSPACE/xci/scripts/vm -fi - -# skip the deployment if the scenario is not supported on this distro -OPNFV_SCENARIO_REQUIREMENTS=$WORKSPACE/xci/opnfv-scenario-requirements.yml -if ! sed -n "/^- scenario: $DEPLOY_SCENARIO$/,/^$/p" $OPNFV_SCENARIO_REQUIREMENTS | grep -q $DISTRO; then - echo "# SKIPPED: Scenario $DEPLOY_SCENARIO is NOT supported on $DISTRO" - exit 0 -fi - -ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm "cd releng-xci && ./xci_test.sh" diff --git a/jjb/xci/xci-start-new-vm.sh b/jjb/xci/xci-start-new-vm.sh deleted file mode 100755 index 79b6a785a..000000000 --- a/jjb/xci/xci-start-new-vm.sh +++ /dev/null @@ -1,93 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2018 SUSE 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 -############################################################################## - -#---------------------------------------------------------------------- -# This script is used by CI and executed by Jenkins jobs. -# You are not supposed to use this script manually if you don't know -# what you are doing. -#---------------------------------------------------------------------- - -# ensure GERRIT_TOPIC is set -GERRIT_TOPIC="${GERRIT_TOPIC:-''}" - -# skip the deployment if the patch doesn't impact the deployment -if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then - echo "Skipping the deployment!" - exit 0 -fi - -# if the scenario is external, we need to wipe WORKSPACE to place releng-xci there since -# the project where the scenario is coming from is cloned and the patch checked out to the -# xci/scenarios/$DEPLOY_SCENARIO to be synched on clean VM -# apart from that, we need releng-xci stuff in WORKSPACE for things to function correctly on Jenkins. -# if the change is coming to releng-xci, we don't need to do anything since the patch is checked -# out to the WORKSPACE anyways -if [[ $GERRIT_PROJECT != "releng-xci" ]]; then - cd $HOME && /bin/rm -rf $WORKSPACE - git clone https://gerrit.opnfv.org/gerrit/releng-xci $WORKSPACE && cd $WORKSPACE - chmod -R go-rwx $WORKSPACE/xci/scripts/vm -fi - -# skip the deployment if the scenario is not supported on this distro -OPNFV_SCENARIO_REQUIREMENTS=$WORKSPACE/xci/opnfv-scenario-requirements.yml -if ! sed -n "/^- scenario: $DEPLOY_SCENARIO$/,/^$/p" $OPNFV_SCENARIO_REQUIREMENTS | grep -q $DISTRO; then - echo "# SKIPPED: Scenario $DEPLOY_SCENARIO is NOT supported on $DISTRO" - exit 0 -fi - -cd $WORKSPACE - -# The start-new-vm.sh script will copy the entire releng-xci directory -# so lets prepare the test script now so it can be copied by the script. -# Please do not move it elsewhere or you would have to move it to the VM -# yourself. -cat > xci_test.sh< scenario_overrides.yml <<-EOF ---- -xci_scenarios_overrides: - - scenario: $DEPLOY_SCENARIO - version: $GERRIT_PATCHSET_REVISION - refspec: $GERRIT_REFSPEC -EOF -fi - -chmod a+x xci_test.sh - -export XCI_BUILD_CLEAN_VM_OS=false -export XCI_UPDATE_CLEAN_VM_OS=true - -./xci/scripts/vm/start-new-vm.sh $DISTRO diff --git a/jjb/xci/xci-verify-jobs.yaml b/jjb/xci/xci-verify-jobs.yaml deleted file mode 100644 index 799ef6e96..000000000 --- a/jjb/xci/xci-verify-jobs.yaml +++ /dev/null @@ -1,327 +0,0 @@ ---- -- project: - name: 'opnfv-xci-verify' - - project: releng-xci - # ------------------------------- - # branches - # ------------------------------- - stream: - - master: - branch: '{stream}' - # ------------------------------- - # distros - # ------------------------------- - distro: - - ubuntu: - disabled: false - successful: false - failed: false - unstable: false - notbuilt: false - - centos: - disabled: true - successful: true - failed: true - unstable: true - notbuilt: true - - opensuse: - disabled: false - successful: true - failed: true - unstable: true - notbuilt: true - # ------------------------------- - # type - # ------------------------------- - type: - - virtual - # ------------------------------- - # patch verification phases - # ------------------------------- - phase: - - 'deploy' - - 'healthcheck' - # ------------------------------- - # jobs - # ------------------------------- - jobs: - - 'xci-verify-{distro}-{type}-{stream}' - - 'xci-verify-{distro}-{phase}-{type}-{stream}' -# ------------------------------- -# job templates -# ------------------------------- -- job-template: - name: 'xci-verify-{distro}-{type}-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'xci-verify-{distro}-.*' - - 'xci-merge-{distro}-.*' - - 'xci-os-.*' - - 'xci-k8-.*' - - 'openstack-bifrost-verify-{distro}-.*' - - 'xci-osa-verify-{distro}-.*' - - 'xci-osa-periodic-{distro}-.*' - blocking-level: 'NODE' - - throttle: - max-per-node: 2 - max-total: 10 - categories: - - xci-verify-virtual - option: category - - wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions - - 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: 'true' - - 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-xci' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'false' - forbidden-file-paths: - - compare-type: ANT - pattern: 'xci/scripts/vm/**' - - compare-type: ANT - pattern: 'docs/**' - - compare-type: ANT - pattern: 'upstream/**' - - project-compare-type: 'REG_EXP' - project-pattern: 'sfc|sdnvpn|releng-xci-scenarios' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - file-paths: - - compare-type: ANT - pattern: 'scenarios/**' - readable-message: true - custom-url: '* $JOB_NAME $BUILD_URL' - skip-vote: - successful: '{obj:successful}' - failed: '{obj:failed}' - unstable: '{obj:unstable}' - notbuilt: '{obj:notbuilt}' - - parameters: - - project-parameter: - project: $GERRIT_PROJECT - branch: '{branch}' - - label: - name: SLAVE_LABEL - default: 'xci-virtual' - all-nodes: false - node-eligibility: 'ignore-offline' - - string: - name: DISTRO - default: '{distro}' - - string: - name: CLEAN_DIB_IMAGES - default: 'true' - - string: - name: CI_LOOP - default: 'verify' - - string: - name: FUNCTEST_VERSION - default: 'hunter' - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_SUITE_NAME - default: 'healthcheck' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - builders: - - 'xci-verify-clean-vm-macro' - - 'xci-verify-set-scenario-macro' - - inject: - properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - description-setter: - description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" - - multijob: - name: deploy - condition: SUCCESSFUL - projects: - - name: 'xci-verify-{distro}-deploy-{type}-{stream}' - current-parameters: true - predefined-parameters: | - DISTRO={distro} - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - CI_LOOP=$CI_LOOP - FUNCTEST_VERSION=$FUNCTEST_VERSION - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - - multijob: - name: healthcheck - condition: SUCCESSFUL - projects: - - name: 'xci-verify-{distro}-healthcheck-{type}-{stream}' - current-parameters: true - predefined-parameters: | - DISTRO={distro} - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_PROJECT=$GERRIT_PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - CI_LOOP=$CI_LOOP - FUNCTEST_VERSION=$FUNCTEST_VERSION - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - - publishers: - - postbuildscript: - builders: - - role: BOTH - build-on: - - ABORTED - - NOT_BUILT - - SUCCESS - - UNSTABLE - build-steps: - - shell: !include-raw: ./xci-cleanup.sh - mark-unstable-if-failed: true - - -- job-template: - name: 'xci-verify-{distro}-{phase}-{type}-{stream}' - - disabled: false - - concurrent: true - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '.*-bifrost-verify-.*' - - '.*-bifrost-periodic-.*' - - 'osa-verify-.*' - - 'osa-periodic-.*' - blocking-level: 'NODE' - - parameters: - - string: - name: PROJECT - default: $GERRIT_PROJECT - - string: - name: DISTRO - default: 'ubuntu' - - string: - name: CI_LOOP - default: 'verify' - - string: - name: FUNCTEST_VERSION - default: 'hunter' - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_SUITE_NAME - default: 'healthcheck' - - string: - name: XCI_FLAVOR - default: 'mini' - - string: - name: CLEAN_DIB_IMAGES - default: 'true' - - string: - name: OPNFV_RELENG_DEV_PATH - default: $WORKSPACE/ - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - wrappers: - - inject: - properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties" - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions - - scm: - - git-scm-gerrit - - builders: - - description-setter: - description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" - - 'xci-verify-{phase}-macro' - -# ------------------------------- -# builder macros -# ------------------------------- -- builder: - name: 'xci-verify-clean-vm-macro' - builders: - - shell: - !include-raw: ./xci-cleanup.sh - -- builder: - name: 'xci-verify-set-scenario-macro' - builders: - - shell: - !include-raw: ./xci-set-scenario.sh - -- builder: - name: 'xci-verify-deploy-macro' - builders: - - shell: - !include-raw: ./xci-start-new-vm.sh - - - shell: - !include-raw: ./xci-start-deployment.sh - -- builder: - name: 'xci-verify-healthcheck-macro' - builders: - - shell: - !include-raw: ./xci-run-functest.sh diff --git a/jjb/xci/xci-views.yaml b/jjb/xci/xci-views.yaml deleted file mode 100644 index ee1e53a59..000000000 --- a/jjb/xci/xci-views.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- project: - name: xci-view - views: - - project-view - project-name: xci -- 2.16.6