diff options
26 files changed, 622 insertions, 284 deletions
@@ -21,6 +21,7 @@ Ryota Mibu (NEC, r-mibu@cq.jp.nec.com) Mei Mei (Huawei, meimei@huawei.com) Trevor Bramwell (Linux Foundation, tbramwell@linuxfoundation.org) Serena Feng (ZTE, feng.xiaowei@zte.com.cn) +Yolanda Robla Mota (Red Hat, yroblamo@redhat.com) Link to TSC approval of the project: http://ircbot.wl.linuxfoundation.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-07-14-14.00.html Link to TSC voting for removal of Victor Laza as committer: http://meetbot.opnfv.org/meetings/opnfv-meeting/2016/opnfv-meeting.2016-02-16-14.59.html diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml index 89965d77b..643972bd2 100644 --- a/jjb/apex/apex.yml +++ b/jjb/apex/apex.yml @@ -220,13 +220,13 @@ git-revision: false block: true same-node: true - - trigger-builds: - - project: 'functest-apex-{verify-slave}-suite-{stream}' - predefined-parameters: | - DEPLOY_SCENARIO=os-odl_l2-nofeature-ha - FUNCTEST_SUITE_NAME=healthcheck - block: true - same-node: true +# - trigger-builds: +# - project: 'functest-apex-{verify-slave}-suite-{stream}' +# predefined-parameters: | +# DEPLOY_SCENARIO=os-odl_l2-nofeature-ha +# FUNCTEST_SUITE_NAME=healthcheck +# block: true +# same-node: true - 'apex-workspace-cleanup' - job-template: diff --git a/jjb/armband/armband-project-jobs.yml b/jjb/armband/armband-project-jobs.yml index 10f8d6531..4b2a7b50e 100644 --- a/jjb/armband/armband-project-jobs.yml +++ b/jjb/armband/armband-project-jobs.yml @@ -10,7 +10,6 @@ installer: 'fuel' jobs: - - 'armband-verify-{stream}' - 'armband-{installer}-build-daily-{stream}' stream: @@ -22,48 +21,6 @@ gs-pathname: '/{stream}' - job-template: - name: 'armband-verify-{stream}' - - parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' - - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' - - triggers: - - gerrit: - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: '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}' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**|.gitignore' - - builders: - - shell: | - echo "Nothing to verify!" - -- job-template: name: 'armband-{installer}-build-daily-{stream}' concurrent: false diff --git a/jjb/armband/armband-verify-jobs.yml b/jjb/armband/armband-verify-jobs.yml new file mode 100644 index 000000000..90fdd7eeb --- /dev/null +++ b/jjb/armband/armband-verify-jobs.yml @@ -0,0 +1,263 @@ +- project: + name: 'armband-verify-jobs' + + project: 'armband' + + installer: 'fuel' +##################################### +# branch definitions +##################################### + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - colorado: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false +##################################### +# patch verification phases +##################################### + phase: + - 'basic': + slave-label: 'opnfv-build-arm' + - 'build': + slave-label: 'opnfv-build-arm' + - 'deploy-virtual': + slave-label: 'opnfv-build-arm' + - 'smoke-test': + slave-label: 'opnfv-build-arm' +##################################### +# jobs +##################################### + jobs: + - 'armband-verify-{stream}' + - 'armband-verify-{phase}-{stream}' +##################################### +# job templates +##################################### +- job-template: + name: 'armband-verify-{stream}' + + project-type: multijob + + disabled: '{obj:disabled}' + + concurrent: true + + properties: + - throttle: + enabled: true + max-total: 4 + option: 'project' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - timeout: + timeout: 360 + fail: true + + triggers: + - gerrit: + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: '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/**' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**' + readable-message: true + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'opnfv-build-arm-defaults' + - 'armband-verify-defaults': + gs-pathname: '{gs-pathname}' + + builders: + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: basic + condition: SUCCESSFUL + projects: + - name: 'armband-verify-basic-{stream}' + current-parameters: false + predefined-parameters: | + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: build + condition: SUCCESSFUL + projects: + - name: 'armband-verify-build-{stream}' + current-parameters: false + predefined-parameters: | + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: deploy-virtual + condition: SUCCESSFUL + projects: + - name: 'armband-verify-deploy-virtual-{stream}' + current-parameters: false + predefined-parameters: | + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: smoke-test + condition: SUCCESSFUL + projects: + - name: 'armband-verify-smoke-test-{stream}' + current-parameters: false + predefined-parameters: | + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: true + +- job-template: + name: 'armband-verify-{phase}-{stream}' + + disabled: '{obj:disabled}' + + concurrent: true + + properties: + - throttle: + enabled: true + max-total: 6 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'armband-verify-deploy-.*' + - 'armband-verify-test-.*' + block-level: 'NODE' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - timeout: + timeout: 360 + fail: true + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - '{slave-label}-defaults' + - '{installer}-defaults' + - 'armband-verify-defaults': + gs-pathname: '{gs-pathname}' + + builders: + - description-setter: + description: "Built on $NODE_NAME" + - '{project}-verify-{phase}-macro' +##################################### +# builder macros +##################################### +- builder: + name: 'armband-verify-basic-macro' + builders: + - shell: | + #!/bin/bash + + echo "Not activated!" + +- builder: + name: 'armband-verify-build-macro' + builders: + - shell: + !include-raw: ./build.sh + - shell: + !include-raw: ./armband-workspace-cleanup.sh + +- builder: + name: 'armband-verify-deploy-virtual-macro' + builders: + - shell: | + #!/bin/bash + + echo "Not activated!" + +- builder: + name: 'armband-verify-smoke-test-macro' + builders: + - shell: | + #!/bin/bash + + echo "Not activated!" +##################################### +# parameter macros +##################################### +- parameter: + name: 'armband-verify-defaults' + parameters: + - string: + name: BUILD_DIRECTORY + default: $WORKSPACE/build_output + description: "Directory where the build artifact will be located upon the completion of the build." + - string: + name: CACHE_DIRECTORY + default: $HOME/opnfv/cache/$INSTALLER_TYPE + description: "Directory where the cache to be used during the build is located." + - string: + name: GS_URL + default: artifacts.opnfv.org/$PROJECT{gs-pathname} + description: "URL to Google Storage." diff --git a/jjb/armband/armband-workspace-cleanup.sh b/jjb/armband/armband-workspace-cleanup.sh new file mode 100755 index 000000000..d8948c7a0 --- /dev/null +++ b/jjb/armband/armband-workspace-cleanup.sh @@ -0,0 +1,15 @@ +#!/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 + +# delete the $WORKSPACE to open some space +/bin/rm -rf $WORKSPACE diff --git a/jjb/compass4nfv/compass-project-jobs.yml b/jjb/compass4nfv/compass-project-jobs.yml index 5ce906482..3a52e91c9 100644 --- a/jjb/compass4nfv/compass-project-jobs.yml +++ b/jjb/compass4nfv/compass-project-jobs.yml @@ -16,145 +16,14 @@ branch: 'stable/{stream}' gs-pathname: '/{stream}' - distro: - - 'trusty': - disabled: false - os-version: 'trusty' - openstack-os-version: '' - - 'centos7': - disabled: false - os-version: 'centos7' - openstack-os-version: '' - jobs: - - 'compass-verify-{distro}-{stream}' - 'compass-build-iso-{stream}' - 'compass-build-ppa-{stream}' - - 'compass-verify-deploy-{distro}-{stream}' - ######################## # job templates ######################## - job-template: - name: 'compass-verify-{distro}-{stream}' - - disabled: false - - concurrent: true - - wrappers: - - timeout: - timeout: 120 - fail: true - - properties: - - throttle: - enabled: true - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'compass-verify-[^-]*-[^-]*' - - 'compass-os-.*?-virtual-daily-.*?' - block-level: 'NODE' - - parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - - compass-project-parameter: - installer: '{installer}' - gs-pathname: '{gs-pathname}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - - triggers: - - gerrit: - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: '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: '**/*' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**' - - builders: - - trigger-builds: - - project: 'compass-verify-deploy-{distro}-{stream}' - current-parameters: true - predefined-parameters: | - COMPASS_OS_VERSION={os-version} - COMPASS_OS_VERSION_OPTION={openstack-os-version} - same-node: true - block: true - - trigger-builds: - - project: 'functest-{slave-label}-suite-{stream}' - current-parameters: true - predefined-parameters: - FUNCTEST_SUITE_NAME=healthcheck - same-node: true - block: true - block-thresholds: - build-step-failure-threshold: 'never' - failure-threshold: 'never' - unstable-threshold: 'FAILURE' - -- job-template: - name: 'compass-verify-deploy-{distro}-{stream}' - - concurrent: true - - properties: - - throttle: - enabled: true - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'compass-deploy-virtual-daily-.*?' - block-level: 'NODE' - - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' - - builders: - - shell: - !include-raw-escape: ./compass-build.sh - - shell: - !include-raw-escape: ./compass-deploy.sh - - publishers: - - archive: - artifacts: 'ansible.log' - allow-empty: 'true' - fingerprint: true - -- job-template: name: 'compass-build-iso-{stream}' concurrent: true diff --git a/jjb/compass4nfv/compass-verify-jobs.yml b/jjb/compass4nfv/compass-verify-jobs.yml new file mode 100644 index 000000000..82e3dfdf2 --- /dev/null +++ b/jjb/compass4nfv/compass-verify-jobs.yml @@ -0,0 +1,251 @@ +- project: + name: 'compass-verify-jobs' + + project: 'compass4nfv' + + installer: 'compass' +##################################### +# branch definitions +##################################### + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - colorado: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: true + + distro: + - 'trusty': + disabled: false + os-version: 'trusty' + openstack-os-version: '' + - 'centos7': + disabled: false + os-version: 'centos7' + openstack-os-version: '' +##################################### +# patch verification phases +##################################### + phase: + - 'basic' + - 'deploy-virtual' +##################################### +# jobs +##################################### + jobs: + - 'compass-verify-{distro}-{stream}' + - 'compass-verify-{phase}-{distro}-{stream}' +##################################### +# job templates +##################################### +- job-template: + name: 'compass-verify-{distro}-{stream}' + + project-type: multijob + + disabled: '{obj:disabled}' + + concurrent: true + + properties: + - throttle: + enabled: true + max-total: 4 + max-per-node: 1 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'compass-verify-[^-]*-[^-]*' + - 'compass-os-.*?-virtual-daily-.*?' + block-level: 'NODE' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - timeout: + timeout: 120 + fail: true + + triggers: + - gerrit: + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: '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: '**/*' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**' + readable-message: true + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'compass-virtual-defaults' + - '{installer}-defaults' + - 'compass-verify-defaults': + installer: '{installer}' + gs-pathname: '{gs-pathname}' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-ha' + + builders: + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: basic + condition: SUCCESSFUL + projects: + - name: 'compass-verify-basic-{stream}' + current-parameters: true + node-parameters: true + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: deploy-virtual + condition: SUCCESSFUL + projects: + - name: 'compass-verify-deploy-virtual-{distro}-{stream}' + current-parameters: true + predefined-parameters: | + COMPASS_OS_VERSION={os-version} + COMPASS_OS_VERSION_OPTION={openstack-os-version} + node-parameters: true + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: smoke-test + condition: SUCCESSFUL + projects: + - name: 'functest-compass-virtual-suite-{stream}' + current-parameters: true + predefined-parameters: + FUNCTEST_SUITE_NAME=healthcheck + node-parameters: true + kill-phase-on: NEVER + abort-all-job: true + +- job-template: + name: 'compass-verify-{phase}-{distro}-{stream}' + + disabled: '{obj:disabled}' + + concurrent: true + + properties: + - throttle: + enabled: true + max-per-node: 1 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'compass-os-.*?-virtual-daily-.*?' + - 'compass-verify-deploy-.*' + - 'functest-compass-virtual.*' + block-level: 'NODE' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - timeout: + timeout: 120 + fail: true + + builders: + - description-setter: + description: "Built on $NODE_NAME" + - '{project}-verify-{phase}-macro' + + publishers: + - archive: + artifacts: 'ansible.log' + allow-empty: 'true' + fingerprint: true +##################################### +# builder macros +##################################### +- builder: + name: 'compass4nfv-verify-basic-macro' + builders: + - shell: | + #!/bin/bash + + echo "Not activated!" + +- builder: + name: 'compass4nfv-verify-deploy-virtual-macro' + builders: + - shell: + !include-raw: ./compass-build.sh + - shell: + !include-raw: ./compass-deploy.sh +##################################### +# parameter macros +##################################### +- parameter: + name: 'compass-verify-defaults' + parameters: + - string: + name: BUILD_DIRECTORY + default: $WORKSPACE/build_output + description: "Directory where the build artifact will be located upon the completion of the build." + - string: + name: CACHE_DIRECTORY + default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}" + description: "Directory where the cache to be used during the build is located." + - string: + name: GS_URL + default: '$GS_BASE{gs-pathname}' + description: "URL to Google Storage." + - string: + name: PPA_REPO + default: "http://205.177.226.237:9999{gs-pathname}" + - string: + name: PPA_CACHE + default: "$WORKSPACE/work/repo/" + - choice: + name: COMPASS_OPENSTACK_VERSION + choices: + - 'mitaka' + - 'liberty' + - choice: + name: COMPASS_OS_VERSION + choices: + - 'trusty' + - 'centos7' diff --git a/jjb/daisy4nfv/daisy4nfv-basic.sh b/jjb/daisy4nfv/daisy4nfv-basic.sh index 87f5482e0..04b9b7bfa 100755 --- a/jjb/daisy4nfv/daisy4nfv-basic.sh +++ b/jjb/daisy4nfv/daisy4nfv-basic.sh @@ -4,3 +4,4 @@ echo "--------------------------------------------------------" echo "This is diasy4nfv basic job!" echo "--------------------------------------------------------" +sudo rm -rf /home/jenkins-ci/opnfv/slave_root/workspace/daisy4nfv-verify-build-master/* diff --git a/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml index d2adafdfa..d893b1485 100644 --- a/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml +++ b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml @@ -15,7 +15,7 @@ ##################################### phase: - 'basic': - slave-label: 'opnfv-build' + slave-label: 'opnfv-build-centos' - 'build': slave-label: 'opnfv-build-centos' - 'deploy-virtual': diff --git a/jjb/fuel/fuel-upload-artifact.sh b/jjb/fuel/fuel-upload-artifact.sh index 1ccd3282c..ca4ba00b0 100755 --- a/jjb/fuel/fuel-upload-artifact.sh +++ b/jjb/fuel/fuel-upload-artifact.sh @@ -108,13 +108,11 @@ echo nfsstore -if [[ ! "$JOB_NAME" =~ merge ]]; then +if [[ "$JOB_NAME" =~ merge ]]; then + uploadiso +elif [[ "$JOB_NAME" =~ build ]]; then importkey signiso uploadiso fi -if [[ ! "$JOB_NAME" =~ verify ]]; then - uploadiso -fi - diff --git a/jjb/functest/functest-loop.sh b/jjb/functest/functest-loop.sh index 73856235f..4528c00d1 100755 --- a/jjb/functest/functest-loop.sh +++ b/jjb/functest/functest-loop.sh @@ -5,8 +5,10 @@ branch=${GIT_BRANCH##*/} [[ "$PUSH_RESULTS_TO_DB" == "true" ]] && flags+="-r" if [[ ${branch} == *"brahmaputra"* ]]; then cmd="${FUNCTEST_REPO_DIR}/docker/run_tests.sh -s ${flags}" -else +elif [[ ${branch} == *"colorado"* ]]; then cmd="python ${FUNCTEST_REPO_DIR}/ci/run_tests.py -t all ${flags}" +else + cmd="python ${FUNCTEST_REPO_DIR}/functest/ci/run_tests.py -t all ${flags}" fi container_id=$(docker ps -a | grep opnfv/functest | awk '{print $1}' | head -1) docker exec $container_id $cmd @@ -15,4 +17,4 @@ ret_value=$? ret_val_file="${HOME}/opnfv/functest/results/${branch}/return_value" echo ${ret_value}>${ret_val_file} -exit 0
\ No newline at end of file +exit 0 diff --git a/jjb/functest/functest-project-jobs.yml b/jjb/functest/functest-project-jobs.yml index a9845459f..236b95d92 100644 --- a/jjb/functest/functest-project-jobs.yml +++ b/jjb/functest/functest-project-jobs.yml @@ -18,7 +18,7 @@ - colorado: branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true - job-template: name: 'functest-verify-{stream}' @@ -61,5 +61,33 @@ pattern: 'docs/**|.gitignore' builders: + - functest-unit-tests-and-docs-build + + publishers: + - junit: + results: nosetests.xml + - cobertura: + report-file: "coverage.xml" + only-stable: "true" + health-auto-update: "true" + stability-auto-update: "true" + zoom-coverage-chart: "true" + targets: + - files: + healthy: 10 + unhealthy: 20 + failing: 30 + - method: + healthy: 50 + unhealthy: 40 + failing: 30 + +################################ +# job builders +################################ + +- builder: + name: functest-unit-tests-and-docs-build + builders: - shell: | - echo "Nothing to verify!" + $WORKSPACE/run_unit_tests.sh diff --git a/jjb/functest/functest-suite.sh b/jjb/functest/functest-suite.sh index 7e9fa09db..df286569f 100755 --- a/jjb/functest/functest-suite.sh +++ b/jjb/functest/functest-suite.sh @@ -5,8 +5,10 @@ branch=${GIT_BRANCH##*/} echo "Functest: run $FUNCTEST_SUITE_NAME on branch ${branch}" if [[ ${branch} == *"brahmaputra"* ]]; then cmd="${FUNCTEST_REPO_DIR}/docker/run_tests.sh --test $FUNCTEST_SUITE_NAME" -else +elif [[ ${branch} == *"colorado"* ]]; then cmd="python ${FUNCTEST_REPO_DIR}/ci/run_tests.py -t $FUNCTEST_SUITE_NAME" +else + cmd="python ${FUNCTEST_REPO_DIR}/functest/ci/run_tests.py -t $FUNCTEST_SUITE_NAME" fi container_id=$(docker ps -a | grep opnfv/functest | awk '{print $1}' | head -1) docker exec $container_id $cmd diff --git a/jjb/functest/set-functest-env.sh b/jjb/functest/set-functest-env.sh index 1c77702eb..bc30ffaf3 100755 --- a/jjb/functest/set-functest-env.sh +++ b/jjb/functest/set-functest-env.sh @@ -82,8 +82,10 @@ if [ $(docker ps | grep "opnfv/functest:${DOCKER_TAG}" | wc -l) == 0 ]; then fi if [[ ${branch} == *"brahmaputra"* ]]; then cmd="${FUNCTEST_REPO_DIR}/docker/prepare_env.sh" -else +elif [[ ${branch} == *"colorado"* ]]; then cmd="python ${FUNCTEST_REPO_DIR}/ci/prepare_env.py start" +else + cmd="python ${FUNCTEST_REPO_DIR}/functest/ci/prepare_env.py start" fi echo "Executing command inside the docker: ${cmd}" docker exec ${container_id} ${cmd} diff --git a/jjb/infra/bifrost-verify-jobs.yml b/jjb/infra/bifrost-verify-jobs.yml index d15bf7426..751aa0c4a 100644 --- a/jjb/infra/bifrost-verify-jobs.yml +++ b/jjb/infra/bifrost-verify-jobs.yml @@ -28,7 +28,7 @@ - 'centos7': disabled: false dib-os-release: '7' - dib-os-element: 'centos-minimal' + dib-os-element: 'centos7' dib-os-packages: 'openssh-server,vim,less,bridge-utils,iputils,rsyslog,curl' - 'suse': disabled: true diff --git a/jjb/infra/bifrost-verify.sh b/jjb/infra/bifrost-verify.sh index f7920a36f..ded4ed463 100755 --- a/jjb/infra/bifrost-verify.sh +++ b/jjb/infra/bifrost-verify.sh @@ -46,6 +46,13 @@ sudo git fetch $PROJECT_REPO $GERRIT_REFSPEC && sudo git checkout FETCH_HEAD # combine opnfv and upstream scripts/playbooks sudo /bin/cp -rf /opt/releng/prototypes/bifrost/* /opt/bifrost/ +# place bridge creation file on the right path +sudo mkdir -p /opt/puppet-infracloud/files/elements/infra-cloud-bridge/static/opt +sudo cp /opt/puppet-infracloud/templates/bifrost/create_bridge.py.erb /opt/puppet-infracloud/files/elements/infra-cloud-bridge/static/opt/create_bridge.py + +# replace bridge name +sudo sed -i s/"<%= @bridge_name -%>"/br_opnfv/g /opt/puppet-infracloud/files/elements/infra-cloud-bridge/static/opt/create_bridge.py + # cleanup remnants of previous deployment cd /opt/bifrost sudo -E ./scripts/destroy-env.sh diff --git a/jjb/opnfv/artifact-cleanup.yml b/jjb/opnfv/artifact-cleanup.yml index b0f819145..1c609a4b2 100644 --- a/jjb/opnfv/artifact-cleanup.yml +++ b/jjb/opnfv/artifact-cleanup.yml @@ -1,10 +1,10 @@ - project: - name: artifact-cleanup + name: releng-artifact-cleanup project: 'releng' jobs: - - 'artifact-cleanup-daily-{stream}' + - 'releng-artifact-cleanup-daily-{stream}' stream: - master: @@ -13,7 +13,7 @@ - job-template: - name: 'artifact-cleanup-daily-{stream}' + name: 'releng-artifact-cleanup-daily-{stream}' # Job template for daily builders # diff --git a/jjb/opnfv/test-sign.yml b/jjb/opnfv/test-sign.yml deleted file mode 100644 index b27d75777..000000000 --- a/jjb/opnfv/test-sign.yml +++ /dev/null @@ -1,42 +0,0 @@ -- project: - name: test-sign - - project: 'releng' - - jobs: - - 'test-sign-daily-{stream}' - - stream: - - master: - branch: '{stream}' - gs-pathname: '' - - -- job-template: - name: 'test-sign-daily-{stream}' - - # Job template for daily builders - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - node: master - - disabled: false - - parameters: - - project-parameter: - project: '{project}' - - scm: - - git-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - branch: '{branch}' - - triggers: - - timed: 'H H * * *' - - builders: - - shell: | - $WORKSPACE/utils/test-sign-artifact.sh diff --git a/jjb/releng-macros.yaml b/jjb/releng-macros.yaml index 2ebd7757b..3afd355e6 100644 --- a/jjb/releng-macros.yaml +++ b/jjb/releng-macros.yaml @@ -171,12 +171,18 @@ echo "########################" echo + echo "gs_path="$GS_URL/docs"" + echo "local_path="upload/docs"" + gs_path="$GS_URL/docs" local_path="upload/docs" mkdir -p upload mv docs_output "$local_path" - gsutil -m cp -r "$local_path" "gs://$gs_path" + ls "$local_path" + + echo "gsutil -m cp -r "$local_path"/* "gs://$gs_path"" + gsutil -m cp -r "$local_path"/* "gs://$gs_path" gsutil -m setmeta \ -h "Content-Type:text/html" \ diff --git a/jjb/releng/releng-ci-jobs.yml b/jjb/releng/releng-ci-jobs.yml index 2d88449e8..ccfe11e9a 100644 --- a/jjb/releng/releng-ci-jobs.yml +++ b/jjb/releng/releng-ci-jobs.yml @@ -1,14 +1,14 @@ - project: - name: builder-jobs + name: releng-builder-jobs jobs: - - 'builder-verify-jjb' - - 'builder-merge' - - 'artifacts-api' + - 'releng-verify-jjb' + - 'releng-merge-jjb' + - 'releng-generate-artifacts-api' project: 'releng' - job-template: - name: builder-verify-jjb + name: releng-verify-jjb parameters: - project-parameter: @@ -57,7 +57,7 @@ artifacts: 'job_output/*' - job-template: - name: 'builder-merge' + name: 'releng-merge-jjb' # builder-merge job to run JJB update # @@ -101,7 +101,7 @@ jenkins-jobs update -r --delete-old jjb/ - job-template: - name: 'artifacts-api' + name: 'releng-generate-artifacts-api' # Generate and upload the JSON file to used for artifacts site diff --git a/prototypes/bifrost/README.md b/prototypes/bifrost/README.md index df34f9c87..0ba49d46d 100644 --- a/prototypes/bifrost/README.md +++ b/prototypes/bifrost/README.md @@ -21,14 +21,17 @@ Please follow that steps: sudo cp -R /opt/releng/prototypes/bifrost/* /opt/bifrost/ -5. If you are on a RHEL/CentOS box, ensure that selinux is disabled +5. Copy /opt/puppet-infracloud/templates/bifrost/create_bridge.py.erb to /opt/puppet-infracloud/files/elements/infra-cloud-bridge/static/opt/create_bridge.py, + and replace tag <%= @bridge_name -%> with br_opnfv -6. Run destroy script if you need to cleanup previous environment:: +6. If you are on a RHEL/CentOS box, ensure that selinux is disabled + +7. Run destroy script if you need to cleanup previous environment:: cd /opt/bifrost sudo ./scripts/destroy-env.sh -7. Run deployment script to spin up 3 vms with bifrost: jumphost, controller and compute:: +8. Run deployment script to spin up 3 vms with bifrost: jumphost, controller and compute:: cd /opt/bifrost sudo ./scripts/test-bifrost-deployment.sh @@ -41,10 +44,10 @@ It is likely that the script will show some errors due to timeout. Please ignore And wait until all the vms are in **active** Provisioning State. -8. Check the IPs assigned to each of the VMS. You can check it by looking at inventory: +9. Check the IPs assigned to each of the VMS. You can check it by looking at inventory: cat /tmp/baremetal.csv -9. You can enter into the vms with devuser login/pass: +10. You can enter into the vms with devuser login/pass: ssh devuser@192.168.122.2 diff --git a/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml b/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml index d650f1056..a0bc28506 100644 --- a/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml +++ b/prototypes/bifrost/playbooks/test-bifrost-infracloud.yaml @@ -67,18 +67,18 @@ - role: ironic-enroll-dynamic - { role: ironic-inspect-node, when: inspect_nodes | default('false') | bool == true } - hosts: baremetal - name: "Create configuration drive files" + name: "Create configuration drive files and deploy machines" + vars: + multinode_testing: "{{ inventory_dhcp | bool == true }}" become: no connection: local roles: - role: bifrost-configdrives-dynamic + - role: bifrost-deploy-nodes-dynamic - hosts: baremetal - vars: - multinode_testing: "{{ inventory_dhcp | bool == true }}" name: "Deploy machines." become: no connection: local serial: 1 roles: - - role: bifrost-deploy-nodes-dynamic - role: bifrost-prepare-for-test-dynamic diff --git a/prototypes/bifrost/scripts/test-bifrost-deployment.sh b/prototypes/bifrost/scripts/test-bifrost-deployment.sh index 773697efe..030faedcf 100755 --- a/prototypes/bifrost/scripts/test-bifrost-deployment.sh +++ b/prototypes/bifrost/scripts/test-bifrost-deployment.sh @@ -58,7 +58,7 @@ export ELEMENTS_PATH=/usr/share/diskimage-builder/elements:/opt/puppet-infraclou export DIB_DEV_USER_PWDLESS_SUDO=yes export DIB_DEV_USER_PASSWORD=devuser -# settings for distro: trusty/ubuntu-minimal, 7/centos-minimal +# settings for distro: trusty/ubuntu-minimal, 7/centos7 export DIB_OS_RELEASE=${DIB_OS_RELEASE:-trusty} export DIB_OS_ELEMENT=${DIB_OS_ELEMENT:-ubuntu-minimal} diff --git a/prototypes/puppet-infracloud/deploy_on_baremetal.md b/prototypes/puppet-infracloud/deploy_on_baremetal.md index 334dff4d2..2bd0a5303 100644 --- a/prototypes/puppet-infracloud/deploy_on_baremetal.md +++ b/prototypes/puppet-infracloud/deploy_on_baremetal.md @@ -26,6 +26,7 @@ On the same bifrost VM, follow these steps: 1. Source bifrost env vars: source /opt/stack/bifrost/env-vars 2. Export baremetal servers inventory: export BIFROST_INVENTORY-SOURCE=/opt/stack/baremetal.json + 3. Change active directory: cd /opt/stack/bifrost/playbooks 3. Enroll the servers: ansible-playbook -vvv -i inventory/bifrost_inventory.py enroll-dynamic.yaml -e @/etc/bifrost/bifrost_global_vars 4. Deploy the servers: ansible-playbook -vvv -i inventory/bifrost_inventory.py deploy-dynamic.yaml -e @/etc/bifrost/bifrost_global_vars 5. Wait until they are on **active** state, check it with: ironic node-list diff --git a/prototypes/puppet-infracloud/modules/opnfv/manifests/server.pp b/prototypes/puppet-infracloud/modules/opnfv/manifests/server.pp index 6b608a7a7..fc9bf7163 100644 --- a/prototypes/puppet-infracloud/modules/opnfv/manifests/server.pp +++ b/prototypes/puppet-infracloud/modules/opnfv/manifests/server.pp @@ -22,7 +22,7 @@ class opnfv::server ( class { 'iptables': public_tcp_ports => $iptables_public_tcp_ports, - public_udp_ports => $all_udp, + public_udp_ports => $iptables_public_udp_ports, rules4 => $iptables_rules4, rules6 => $iptables_rules6, } diff --git a/utils/test-sign-artifact.sh b/utils/test-sign-artifact.sh deleted file mode 100755 index f09b7f4e2..000000000 --- a/utils/test-sign-artifact.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -export PATH=$PATH:/usr/local/bin/ - -# clone releng repository -echo "Cloning releng repository..." -[ -d releng ] && rm -rf releng -git clone https://gerrit.opnfv.org/gerrit/releng $WORKSPACE/releng/ &> /dev/null -#this is where we import the siging key -if [ -f $WORKSPACE/releng/utils/gpg_import_key.sh ]; then - source $WORKSPACE/releng/utils/gpg_import_key.sh -fi - -artifact="foo" -echo foo > foo - -testsign () { - echo "Signing artifact: ${artifact}" - gpg2 -vvv --batch \ - --default-key opnfv-helpdesk@rt.linuxfoundation.org \ - --passphrase besteffort \ - --detach-sig $artifact -} - -testsign - |