diff options
21 files changed, 2860 insertions, 2790 deletions
diff --git a/jjb/calipso/calipso.yml b/jjb/calipso/calipso.yml index ede40021f..2d9ecef03 100644 --- a/jjb/calipso/calipso.yml +++ b/jjb/calipso/calipso.yml @@ -1,18 +1,19 @@ +--- - project: name: calipso project: '{name}' jobs: - - 'calipso-verify-{stream}' + - 'calipso-verify-{stream}' stream: - - master: - branch: '{stream}' - disabled: false - - euphrates: - branch: 'stable/{stream}' - disabled: false + - master: + branch: '{stream}' + disabled: false + - euphrates: + branch: 'stable/{stream}' + disabled: false - job-template: name: 'calipso-verify-{stream}' @@ -20,45 +21,44 @@ disabled: '{obj:disabled}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-centos-defaults' - + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-centos-defaults' scm: - - git-scm-gerrit + - 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}' + - 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 + - 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/app app/test/verify.sh + - shell: | + #!/bin/bash + set -o errexit + set -o nounset + set -o pipefail + cd $WORKSPACE + PYTHONPATH=$PWD/app app/test/verify.sh diff --git a/jjb/daisy4nfv/daisy-daily-jobs.yml b/jjb/daisy4nfv/daisy-daily-jobs.yml index 237861dba..b3c37b88f 100644 --- a/jjb/daisy4nfv/daisy-daily-jobs.yml +++ b/jjb/daisy4nfv/daisy-daily-jobs.yml @@ -1,3 +1,4 @@ +--- # jenkins job templates for Daisy # TODO # [ ] enable baremetal jobs after baremetal deployment finish @@ -11,62 +12,66 @@ project: '{name}' installer: '{name}' -#-------------------------------- -# BRANCH ANCHORS -#-------------------------------- + # ------------------------------- + # BRANCH ANCHORS + # ------------------------------- master: &master - stream: master - branch: '{stream}' - disabled: false - gs-pathname: '' + stream: master + branch: '{stream}' + disabled: false + gs-pathname: '' euphrates: &euphrates - stream: euphrates - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false + stream: euphrates + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false -#-------------------------------- -# POD, INSTALLER, AND BRANCH MAPPING -#-------------------------------- -# CI PODs -#-------------------------------- + # ------------------------------- + # POD, INSTALLER, AND BRANCH MAPPING + # ------------------------------- + # CI PODs + # ------------------------------- pod: -# - baremetal: -# slave-label: daisy-baremetal -# <<: *master - - virtual: - slave-label: daisy-virtual - <<: *master - - baremetal: - slave-label: daisy-baremetal - <<: *euphrates - - virtual: - slave-label: daisy-virtual - <<: *euphrates -#-------------------------------- -# None-CI PODs -#-------------------------------- - - baremetal: - slave-label: zte-pod3 - <<: *master + # - baremetal: + # slave-label: daisy-baremetal + # <<: *master + - virtual: + slave-label: daisy-virtual + <<: *master + - baremetal: + slave-label: daisy-baremetal + <<: *euphrates + - virtual: + slave-label: daisy-virtual + <<: *euphrates + # ------------------------------- + # None-CI PODs + # ------------------------------- + - baremetal: + slave-label: zte-pod3 + <<: *master -#-------------------------------- -# scenarios -#-------------------------------- + # ------------------------------- + # None-CI PODs + # ------------------------------- + + # ------------------------------- + # scenarios + # ------------------------------- scenario: - # HA scenarios - - 'os-nosdn-nofeature-ha': - auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' - # NOHA scenarios - - 'os-nosdn-nofeature-noha': - auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' - # ODL_L3 scenarios - - 'os-odl-nofeature-ha': - auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' + # HA scenarios + - 'os-nosdn-nofeature-ha': + auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' + # NOHA scenarios + - 'os-nosdn-nofeature-noha': + auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' + # ODL_L3 scenarios + - 'os-odl-nofeature-ha': + auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' jobs: - - '{project}-{scenario}-{pod}-daily-{stream}' - - '{project}-deploy-{pod}-daily-{stream}' + - '{project}-{scenario}-{pod}-daily-{stream}' + - '{project}-deploy-{pod}-daily-{stream}' ######################## # job templates @@ -79,59 +84,59 @@ concurrent: false properties: - - logrotate-default - - throttle: - enabled: true - max-total: 4 - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'daisy-daily-.*' - block-level: 'NODE' + - logrotate-default + - throttle: + enabled: true + max-total: 4 + max-per-node: 1 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'daisy-daily-.*' + block-level: 'NODE' wrappers: - - build-name: - name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' + - build-name: + name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' triggers: - - '{auto-trigger-name}' + - '{auto-trigger-name}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults': - installer: '{installer}' - - string: - name: DEPLOY_SCENARIO - default: '{scenario}' - - 'daisy-project-parameter': - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults': + installer: '{installer}' + - string: + name: DEPLOY_SCENARIO + default: '{scenario}' + - 'daisy-project-parameter': + gs-pathname: '{gs-pathname}' builders: - - description-setter: - description: "POD: $NODE_NAME" - - trigger-builds: - - project: 'daisy-deploy-{pod}-daily-{stream}' - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO={scenario} - same-node: true - block: true - - trigger-builds: - - project: 'functest-daisy-{pod}-daily-{stream}' - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO={scenario} - same-node: true - block: true - block-thresholds: - build-step-failure-threshold: 'never' - failure-threshold: 'never' - unstable-threshold: 'FAILURE' + - description-setter: + description: "POD: $NODE_NAME" + - trigger-builds: + - project: 'daisy-deploy-{pod}-daily-{stream}' + current-parameters: false + predefined-parameters: + DEPLOY_SCENARIO={scenario} + same-node: true + block: true + - trigger-builds: + - project: 'functest-daisy-{pod}-daily-{stream}' + current-parameters: false + predefined-parameters: + DEPLOY_SCENARIO={scenario} + same-node: true + block: true + block-thresholds: + build-step-failure-threshold: 'never' + failure-threshold: 'never' + unstable-threshold: 'FAILURE' - job-template: name: '{project}-deploy-{pod}-daily-{stream}' @@ -141,124 +146,125 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 4 - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'daisy.*-deploy-({pod})?-daily-.*' - block-level: 'NODE' + - logrotate-default + - throttle: + enabled: true + max-total: 4 + max-per-node: 1 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'daisy.*-deploy-({pod})?-daily-.*' + block-level: 'NODE' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults': - installer: '{installer}' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - - 'daisy-project-parameter': - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_TIMEOUT - default: '150' - description: 'Deployment timeout in minutes' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults': + installer: '{installer}' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-ha' + - 'daisy-project-parameter': + gs-pathname: '{gs-pathname}' + - string: + name: DEPLOY_TIMEOUT + default: '150' + description: 'Deployment timeout in minutes' scm: - - git-scm + - git-scm wrappers: - - build-name: - name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' + - build-name: + name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' builders: - - description-setter: - description: "POD: $NODE_NAME" - - shell: - !include-raw-escape: ./daisy4nfv-download-artifact.sh - - shell: - !include-raw-escape: ./daisy-deploy.sh - + - description-setter: + description: "POD: $NODE_NAME" + - shell: + !include-raw-escape: ./daisy4nfv-download-artifact.sh + - shell: + !include-raw-escape: ./daisy-deploy.sh ######################## # trigger macros ######################## -#----------------------------------------------- +# ---------------------------------------------- # Triggers for job running on daisy-baremetal against master branch -#----------------------------------------------- +# ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: '0 16 * * *' + - timed: '0 16 * * *' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-master-trigger' triggers: - - timed: '' + - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: '0 12 * * *' -#----------------------------------------------- + - timed: '0 12 * * *' + +# ---------------------------------------------- # Triggers for job running on daisy-virtual against master branch -#----------------------------------------------- +# ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-master-trigger' triggers: - - timed: '0 16 * * *' + - timed: '0 16 * * *' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-master-trigger' triggers: - - timed: '' + - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-virtual-daily-master-trigger' triggers: - - timed: '0 12 * * *' + - timed: '0 12 * * *' -#----------------------------------------------- +# ---------------------------------------------- # Triggers for job running on daisy-baremetal against euphrates branch -#----------------------------------------------- +# ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 0 * * *' + - timed: '0 0 * * *' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - - timed: '' + - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 20 * * *' -#----------------------------------------------- + - timed: '0 20 * * *' + +# ---------------------------------------------- # Triggers for job running on daisy-virtual against euphrates branch -#----------------------------------------------- +# ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 0 * * *' + - timed: '0 0 * * *' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '' + - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 20 * * *' + - timed: '0 20 * * *' diff --git a/jjb/daisy4nfv/daisy-project-jobs.yml b/jjb/daisy4nfv/daisy-project-jobs.yml index 8ecee7b54..b6e9526e3 100644 --- a/jjb/daisy4nfv/daisy-project-jobs.yml +++ b/jjb/daisy4nfv/daisy-project-jobs.yml @@ -1,3 +1,4 @@ +--- ###################################################################### # Add daily jobs, for buidoing, deploying and testing # TODO: @@ -16,25 +17,26 @@ installer: 'daisy' stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - euphrates: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - euphrates: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false phase: - - 'build': - slave-label: 'opnfv-build-centos' - - 'deploy': - slave-label: 'daisy-baremetal' - - 'test': - slave-label: 'opnfv-build-centos' + - 'build': + slave-label: 'opnfv-build-centos' + - 'deploy': + slave-label: 'daisy-baremetal' + - 'test': + slave-label: 'opnfv-build-centos' + jobs: - - '{installer}-daily-{stream}' - - '{installer}-{phase}-daily-{stream}' + - '{installer}-daily-{stream}' + - '{installer}-{phase}-daily-{stream}' ######################## # job templates @@ -49,89 +51,89 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 4 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '{installer}-daily-.*' - - 'daisy4nfv-merge-build-.*' - - 'daisy4nfv-verify-build-.*' - block-level: 'NODE' + - logrotate-default + - throttle: + enabled: true + max-total: 4 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '{installer}-daily-.*' + - 'daisy4nfv-merge-build-.*' + - 'daisy4nfv-verify-build-.*' + block-level: 'NODE' scm: - - git-scm + - git-scm triggers: - - timed: '0 8 * * *' + - timed: '0 8 * * *' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-centos-defaults' - - '{installer}-defaults' - - '{installer}-project-parameter': - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-centos-defaults' + - '{installer}-defaults' + - '{installer}-project-parameter': + gs-pathname: '{gs-pathname}' wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true + - ssh-agent-wrapper + - timeout: + timeout: 360 + fail: true builders: - - description-setter: - description: "Built on $NODE_NAME" - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: '{installer}-build-daily-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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 - condition: SUCCESSFUL - projects: - - name: '{installer}-deploy-daily-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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: test - condition: SUCCESSFUL - projects: - - name: '{installer}-test-daily-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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 + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: build + condition: SUCCESSFUL + projects: + - name: '{installer}-build-daily-{stream}' + current-parameters: false + predefined-parameters: | + BRANCH=$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 + condition: SUCCESSFUL + projects: + - name: '{installer}-deploy-daily-{stream}' + current-parameters: false + predefined-parameters: | + BRANCH=$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: test + condition: SUCCESSFUL + projects: + - name: '{installer}-test-daily-{stream}' + current-parameters: false + predefined-parameters: | + BRANCH=$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 publishers: - - '{installer}-recipients' - - email-jenkins-admins-on-failure + - '{installer}-recipients' + - email-jenkins-admins-on-failure - job-template: name: '{installer}-{phase}-daily-{stream}' @@ -141,41 +143,41 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 6 - option: 'project' + - logrotate-default + - throttle: + enabled: true + max-total: 6 + option: 'project' scm: - - git-scm + - git-scm wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true + - ssh-agent-wrapper + - timeout: + timeout: 360 + fail: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - - '{installer}-project-parameter': - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-ha' + - '{installer}-project-parameter': + gs-pathname: '{gs-pathname}' builders: - - description-setter: - description: "Built on $NODE_NAME" - - '{installer}-{phase}-daily-macro' + - description-setter: + description: "Built on $NODE_NAME" + - '{installer}-{phase}-daily-macro' ##################################### # builder macros @@ -183,29 +185,29 @@ - builder: name: 'daisy-build-daily-macro' builders: - - shell: - !include-raw: ./daisy4nfv-basic.sh - - shell: - !include-raw: ./daisy4nfv-build.sh - - shell: - !include-raw: ./daisy4nfv-upload-artifact.sh - - 'clean-workspace' + - shell: + !include-raw: ./daisy4nfv-basic.sh + - shell: + !include-raw: ./daisy4nfv-build.sh + - shell: + !include-raw: ./daisy4nfv-upload-artifact.sh + - 'clean-workspace' - builder: name: 'daisy-deploy-daily-macro' builders: - - shell: - !include-raw: ./daisy4nfv-download-artifact.sh - - shell: - !include-raw: ./daisy-deploy.sh + - shell: + !include-raw: ./daisy4nfv-download-artifact.sh + - shell: + !include-raw: ./daisy-deploy.sh - builder: name: 'daisy-test-daily-macro' builders: - - shell: | - #!/bin/bash + - shell: | + #!/bin/bash - echo "Not activated!" + echo "Not activated!" ##################################### # parameter macros @@ -213,22 +215,24 @@ - publisher: name: 'daisy-recipients' publishers: - - email: - recipients: hu.zhijiang@zte.com.cn lu.yao135@zte.com.cn zhou.ya@zte.com.cn yangyang1@zte.com.cn julienjut@gmail.com - - email-jenkins-admins-on-failure + # yamllint disable rule:line-length + - email: + recipients: hu.zhijiang@zte.com.cn lu.yao135@zte.com.cn zhou.ya@zte.com.cn yangyang1@zte.com.cn julienjut@gmail.com + # yamllint enable rule:line-length + - email-jenkins-admins-on-failure - parameter: name: 'daisy-project-parameter' 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." + - 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/daisy4nfv/daisy4nfv-merge-jobs.yml b/jjb/daisy4nfv/daisy4nfv-merge-jobs.yml index 5bfac1f37..f304d0b95 100644 --- a/jjb/daisy4nfv/daisy4nfv-merge-jobs.yml +++ b/jjb/daisy4nfv/daisy4nfv-merge-jobs.yml @@ -1,3 +1,4 @@ +--- - project: name: 'daisy4nfv-merge-jobs' @@ -5,37 +6,39 @@ installer: 'daisy' -########################################################### -# use alias to keep the jobs'name existed already unchanged -########################################################### + ########################################################### + # use alias to keep the jobs'name existed already unchanged + ########################################################### alias: 'daisy4nfv' -##################################### -# branch definitions -##################################### + ##################################### + # branch definitions + ##################################### stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - euphrates: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false -##################################### -# patch merge phases -##################################### + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - euphrates: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false + ##################################### + # patch merge phases + ##################################### phase: - - 'build': - slave-label: 'opnfv-build-centos' - - 'deploy-virtual': - slave-label: 'daisy-virtual' -##################################### -# jobs -##################################### + - 'build': + slave-label: 'opnfv-build-centos' + - 'deploy-virtual': + slave-label: 'daisy-virtual' + + ##################################### + # jobs + ##################################### jobs: - - '{alias}-merge-{stream}' - - '{alias}-merge-{phase}-{stream}' + - '{alias}-merge-{stream}' + - '{alias}-merge-{phase}-{stream}' + ##################################### # job templates ##################################### @@ -49,93 +52,93 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 4 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '{alias}-merge-(master|euphrates)' - block-level: 'NODE' + - logrotate-default + - throttle: + enabled: true + max-total: 4 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '{alias}-merge-(master|euphrates)' + block-level: 'NODE' scm: - - git-scm + - git-scm wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true + - ssh-agent-wrapper + - timeout: + timeout: 360 + fail: true 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'ci/**' - - compare-type: ANT - pattern: 'code/**' - - compare-type: ANT - pattern: 'deploy/**' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**' - - compare-type: ANT - pattern: '.gitignore' - readable-message: true + - 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: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: ANT + pattern: 'ci/**' + - compare-type: ANT + pattern: 'code/**' + - compare-type: ANT + pattern: 'deploy/**' + disable-strict-forbidden-file-verification: 'true' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**' + - compare-type: ANT + pattern: '.gitignore' + readable-message: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-centos-defaults' - - '{alias}-merge-defaults': - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-centos-defaults' + - '{alias}-merge-defaults': + gs-pathname: '{gs-pathname}' builders: - - description-setter: - description: "Built on $NODE_NAME" - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: '{alias}-merge-build-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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: '{alias}-merge-deploy-virtual-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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 + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: build + condition: SUCCESSFUL + projects: + - name: '{alias}-merge-build-{stream}' + current-parameters: false + predefined-parameters: | + BRANCH=$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: '{alias}-merge-deploy-virtual-{stream}' + current-parameters: false + predefined-parameters: | + BRANCH=$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: '{alias}-merge-{phase}-{stream}' @@ -145,40 +148,40 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 4 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '{alias}-merge-{phase}-.*' - - '{installer}-daily-.*' - block-level: 'NODE' + - logrotate-default + - throttle: + enabled: true + max-total: 4 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '{alias}-merge-{phase}-.*' + - '{installer}-daily-.*' + block-level: 'NODE' scm: - - git-scm + - git-scm wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true + - ssh-agent-wrapper + - timeout: + timeout: 360 + fail: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - '{alias}-merge-defaults': - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults' + - '{alias}-merge-defaults': + gs-pathname: '{gs-pathname}' builders: - - description-setter: - description: "Built on $NODE_NAME" - - '{project}-merge-{phase}-macro' + - description-setter: + description: "Built on $NODE_NAME" + - '{project}-merge-{phase}-macro' ##################################### # builder macros @@ -186,22 +189,22 @@ - builder: name: 'daisy-merge-build-macro' builders: - - shell: - !include-raw: ./daisy4nfv-basic.sh - - shell: - !include-raw: ./daisy4nfv-build.sh - - shell: - !include-raw: ./daisy4nfv-upload-artifact.sh - - 'clean-workspace' + - shell: + !include-raw: ./daisy4nfv-basic.sh + - shell: + !include-raw: ./daisy4nfv-build.sh + - shell: + !include-raw: ./daisy4nfv-upload-artifact.sh + - 'clean-workspace' - builder: name: 'daisy-merge-deploy-virtual-macro' builders: - - shell: - !include-raw: ./daisy4nfv-download-artifact.sh - - shell: - !include-raw: ./daisy-deploy.sh - - 'clean-workspace' + - shell: + !include-raw: ./daisy4nfv-download-artifact.sh + - shell: + !include-raw: ./daisy-deploy.sh + - 'clean-workspace' ##################################### # parameter macros @@ -209,15 +212,15 @@ - parameter: name: 'daisy4nfv-merge-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." + - 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/daisy4nfv/daisy4nfv-verify-jobs.yml b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml index 2cf68a99a..4100990d4 100644 --- a/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml +++ b/jjb/daisy4nfv/daisy4nfv-verify-jobs.yml @@ -1,38 +1,42 @@ +--- - project: name: 'daisy4nfv-verify-jobs' project: 'daisy' installer: 'daisy' -########################################################## -# use alias to keep the jobs'name existed alread unchanged -########################################################## + ########################################################## + # use alias to keep the jobs'name existed alread unchanged + ########################################################## alias: 'daisy4nfv' -##################################### -# branch definitions -##################################### + ##################################### + # branch definitions + ##################################### stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - euphrates: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false -##################################### -# patch verification phases -##################################### + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - euphrates: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false + + ##################################### + # patch verification phases + ##################################### phase: - - unit: - slave-label: 'opnfv-build' - - build: - slave-label: 'opnfv-build-centos' -##################################### -# jobs -##################################### + - unit: + slave-label: 'opnfv-build' + - build: + slave-label: 'opnfv-build-centos' + + ##################################### + # jobs + ##################################### jobs: - - '{alias}-verify-{stream}' - - '{alias}-verify-{phase}-{stream}' + - '{alias}-verify-{stream}' + - '{alias}-verify-{phase}-{stream}' + ##################################### # job templates ##################################### @@ -42,138 +46,142 @@ disabled: false concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 4 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '{alias}-merge-build-.*' - block-level: 'NODE' + - logrotate-default + - throttle: + enabled: true + max-total: 4 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '{alias}-merge-build-.*' + block-level: 'NODE' scm: - - git-scm-gerrit + - git-scm-gerrit + wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true + - 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: 'code/**' - - compare-type: ANT - pattern: 'deploy/**' - - compare-type: ANT - pattern: 'tests/**' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**' - - compare-type: ANT - pattern: '.gitignore' - readable-message: true + - 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: 'code/**' + - compare-type: ANT + pattern: 'deploy/**' + - compare-type: ANT + pattern: 'tests/**' + disable-strict-forbidden-file-verification: 'true' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**' + - compare-type: ANT + pattern: '.gitignore' + readable-message: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-centos-defaults' - - '{alias}-verify-defaults': - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-centos-defaults' + - '{alias}-verify-defaults': + gs-pathname: '{gs-pathname}' builders: - - description-setter: - description: "Built on $NODE_NAME" - - multijob: - name: unit - condition: SUCCESSFUL - projects: - - name: '{alias}-verify-unit-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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: '{alias}-verify-build-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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 + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: unit + condition: SUCCESSFUL + projects: + - name: '{alias}-verify-unit-{stream}' + current-parameters: false + predefined-parameters: | + BRANCH=$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: '{alias}-verify-build-{stream}' + current-parameters: false + predefined-parameters: | + BRANCH=$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: '{alias}-verify-{phase}-{stream}' disabled: '{obj:disabled}' concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 6 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '{alias}-merge-build-.*' - - '{alias}-verify-build-.*' - - '{installer}-daily-.*' - block-level: 'NODE' + - logrotate-default + - throttle: + enabled: true + max-total: 6 + option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '{alias}-merge-build-.*' + - '{alias}-verify-build-.*' + - '{installer}-daily-.*' + block-level: 'NODE' scm: - - git-scm-gerrit + - git-scm-gerrit + wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true + - ssh-agent-wrapper + - timeout: + timeout: 360 + fail: true + parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - '{alias}-verify-defaults': - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults' + - '{alias}-verify-defaults': + gs-pathname: '{gs-pathname}' builders: - - description-setter: - description: "Built on $NODE_NAME" - - '{project}-verify-{phase}-macro' + - description-setter: + description: "Built on $NODE_NAME" + - '{project}-verify-{phase}-macro' ##################################### # builder macros @@ -181,21 +189,21 @@ - builder: name: 'daisy-verify-build-macro' builders: - - shell: - !include-raw: ./daisy4nfv-basic.sh - - shell: - !include-raw: ./daisy4nfv-build.sh - - 'clean-workspace' + - shell: + !include-raw: ./daisy4nfv-basic.sh + - shell: + !include-raw: ./daisy4nfv-build.sh + - 'clean-workspace' - builder: name: daisy-verify-unit-macro builders: - - shell: | - #!/bin/bash - set -o errexit - set -o pipefail - set -o xtrace - tox -e py27 + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + set -o xtrace + tox -e py27 ##################################### # parameter macros @@ -203,15 +211,15 @@ - parameter: name: 'daisy4nfv-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." + - 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/dovetail/dovetail-artifacts-upload.yml b/jjb/dovetail/dovetail-artifacts-upload.yml index 0c8efbe0d..9a11c6e26 100644 --- a/jjb/dovetail/dovetail-artifacts-upload.yml +++ b/jjb/dovetail/dovetail-artifacts-upload.yml @@ -1,3 +1,4 @@ +--- ############################################ # dovetail upload artifacts job ############################################ @@ -7,20 +8,20 @@ project: 'dovetail' jobs: - - 'dovetail-{image}-artifacts-upload-{stream}' + - 'dovetail-{image}-artifacts-upload-{stream}' stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false image: - - 'dovetail' - - 'functest' - - 'yardstick' - - 'testapi' - - 'mongo' + - 'dovetail' + - 'functest' + - 'yardstick' + - 'testapi' + - 'mongo' ############################################# # job template @@ -35,30 +36,30 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-total: 1 - max-per-node: 1 - option: 'project' + - logrotate-default + - throttle: + enabled: true + max-total: 1 + max-per-node: 1 + option: 'project' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' - - dovetail-parameter: - gs-pathname: '{gs-pathname}' - image: '{image}' - branch: '{branch}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' + - dovetail-parameter: + gs-pathname: '{gs-pathname}' + image: '{image}' + branch: '{branch}' scm: - - git-scm + - git-scm builders: - - 'dovetail-builder-artifacts-upload' - - 'dovetail-upload-artifacts-cache-cleanup' - - 'dovetail-images-cleanup' + - 'dovetail-builder-artifacts-upload' + - 'dovetail-upload-artifacts-cache-cleanup' + - 'dovetail-images-cleanup' #################### # parameter macros @@ -66,49 +67,49 @@ - parameter: name: dovetail-parameter parameters: - - string: - name: CACHE_DIR - default: $WORKSPACE/cache{gs-pathname} - description: "the cache to store packages downloaded" - - string: - name: STORE_URL - default: gs://artifacts.opnfv.org/dovetail{gs-pathname} - description: "LF artifacts url for storage of dovetail packages" - - string: - name: DOCKER_REPO_NAME - default: opnfv/{image} - description: "docker repo name" - - string: - name: DOCKER_TAG - default: latest - description: "docker image tag of which will be uploaded to artifacts" - - string: - name: STORE_FILE_NAME - default: image_{image}_{branch}_$BUILD_ID.docker - description: "stored file name" + - string: + name: CACHE_DIR + default: $WORKSPACE/cache{gs-pathname} + description: "the cache to store packages downloaded" + - string: + name: STORE_URL + default: gs://artifacts.opnfv.org/dovetail{gs-pathname} + description: "LF artifacts url for storage of dovetail packages" + - string: + name: DOCKER_REPO_NAME + default: opnfv/{image} + description: "docker repo name" + - string: + name: DOCKER_TAG + default: latest + description: "docker image tag of which will be uploaded to artifacts" + - string: + name: STORE_FILE_NAME + default: image_{image}_{branch}_$BUILD_ID.docker + description: "stored file name" #################################### -#builders for dovetail project +# builders for dovetail project #################################### - builder: name: dovetail-builder-artifacts-upload builders: - - shell: - !include-raw: ./dovetail-artifacts-upload.sh + - shell: + !include-raw: ./dovetail-artifacts-upload.sh - builder: name: dovetail-upload-artifacts-cache-cleanup builders: - - shell: | - #!/bin/bash - set -o errexit + - shell: | + #!/bin/bash + set -o errexit - echo "Dovetail: cleanup cache used for storage downloaded packages" + echo "Dovetail: cleanup cache used for storage downloaded packages" - /bin/rm -rf $CACHE_DIR + /bin/rm -rf $CACHE_DIR - builder: name: dovetail-images-cleanup builders: - - shell: - !include-raw: ./dovetail-cleanup.sh + - shell: + !include-raw: ./dovetail-cleanup.sh diff --git a/jjb/dovetail/dovetail-ci-jobs.yml b/jjb/dovetail/dovetail-ci-jobs.yml index 94f38b193..9fde120f8 100644 --- a/jjb/dovetail/dovetail-ci-jobs.yml +++ b/jjb/dovetail/dovetail-ci-jobs.yml @@ -1,3 +1,4 @@ +--- ################################### # job configuration for dovetail ################################### @@ -6,179 +7,179 @@ project: '{name}' -#--------------------------------------- -# BRANCH ANCHORS -#--------------------------------------- -# 1)the stream/branch here represents the SUT(System Under Test) stream/branch -# 2)docker-tag is the docker tag of dovetail(only master by now, then all latest used) -# the dovetail stream is one-to-one mapping with dovetail docker-tag -# the dovetail is not sync with A/B/C release -# + # -------------------------------------- + # BRANCH ANCHORS + # -------------------------------------- + # 1)the stream/branch here represents the SUT(System Under Test) stream/branch + # 2)docker-tag is the docker tag of dovetail(only master by now, then all latest used) + # the dovetail stream is one-to-one mapping with dovetail docker-tag + # the dovetail is not sync with A/B/C release master: &master - stream: master - branch: '{stream}' - dovetail-branch: '{stream}' - gs-pathname: '' - docker-tag: 'latest' + stream: master + branch: '{stream}' + dovetail-branch: '{stream}' + gs-pathname: '' + docker-tag: 'latest' danube: &danube - stream: danube - branch: 'stable/{stream}' - dovetail-branch: master - gs-pathname: '/{stream}' - docker-tag: 'cvp.0.7.0' + stream: danube + branch: 'stable/{stream}' + dovetail-branch: master + gs-pathname: '/{stream}' + docker-tag: 'cvp.0.7.0' -#----------------------------------- -# POD, PLATFORM, AND BRANCH MAPPING -#----------------------------------- -# CI PODs -# This section should only contain the SUTs -# that have been switched using labels for slaves -#------------------------------------------------ -# the pods, SUTs listed here are just examples to -# let the dovetail tool run, there can be more ways beside CI to -# run the dovetail tool. -# pods, SUTs will be added/adjusted when needed + # ---------------------------------- + # POD, PLATFORM, AND BRANCH MAPPING + # ---------------------------------- + # CI PODs + # This section should only contain the SUTs + # that have been switched using labels for slaves + # ----------------------------------------------- + # the pods, SUTs listed here are just examples to + # let the dovetail tool run, there can be more ways beside CI to + # run the dovetail tool. + # pods, SUTs will be added/adjusted when needed pod: -# fuel CI PODs - - baremetal: - slave-label: fuel-baremetal - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - virtual: - slave-label: fuel-virtual - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - baremetal: - slave-label: fuel-baremetal - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube - - virtual: - slave-label: fuel-virtual - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube -#compass CI PODs - - baremetal: - slave-label: compass-baremetal - SUT: compass - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - virtual: - slave-label: compass-virtual - SUT: compass - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - baremetal: - slave-label: compass-baremetal - SUT: compass - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube - - virtual: - slave-label: compass-virtual - SUT: compass - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube -#-------------------------------- -# Installers not using labels -# CI PODs -# This section should only contain the installers -# that have not been switched using labels for slaves -#-------------------------------- -#apex PODs - - virtual: - slave-label: apex-virtual-master - SUT: apex - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - baremetal: - slave-label: apex-baremetal-master - SUT: apex - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - virtual: - slave-label: apex-virtual-danube - SUT: apex - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube - - baremetal: - slave-label: apex-baremetal-danube - SUT: apex - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube -#armband CI PODs - - armband-baremetal: - slave-label: armband-baremetal - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - armband-virtual: - slave-label: armband-virtual - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - armband-baremetal: - slave-label: armband-baremetal - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube - - armband-virtual: - slave-label: armband-virtual - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube -#-------------------------------- -# None-CI PODs -#-------------------------------- - - baremetal-centos: - slave-label: 'intel-pod8' - SUT: compass - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - zte-pod1: - slave-label: zte-pod1 - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - zte-pod2: - slave-label: zte-pod2 - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - zte-pod3: - slave-label: zte-pod3 - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *master - - zte-pod1: - slave-label: zte-pod1 - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube - - zte-pod3: - slave-label: zte-pod3 - SUT: fuel - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube - - huawei-pod4: - slave-label: huawei-pod4 - SUT: apex - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube - - huawei-pod7: - slave-label: huawei-pod7 - SUT: compass - auto-trigger-name: 'daily-trigger-disabled' - <<: *danube -#-------------------------------- + # fuel CI PODs + - baremetal: + slave-label: fuel-baremetal + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - virtual: + slave-label: fuel-virtual + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - baremetal: + slave-label: fuel-baremetal + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + - virtual: + slave-label: fuel-virtual + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + # compass CI PODs + - baremetal: + slave-label: compass-baremetal + SUT: compass + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - virtual: + slave-label: compass-virtual + SUT: compass + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - baremetal: + slave-label: compass-baremetal + SUT: compass + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + - virtual: + slave-label: compass-virtual + SUT: compass + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + # ------------------------------- + # Installers not using labels + # CI PODs + # This section should only contain the installers + # that have not been switched using labels for slaves + # ------------------------------- + # apex PODs + - virtual: + slave-label: apex-virtual-master + SUT: apex + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - baremetal: + slave-label: apex-baremetal-master + SUT: apex + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - virtual: + slave-label: apex-virtual-danube + SUT: apex + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + - baremetal: + slave-label: apex-baremetal-danube + SUT: apex + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + # armband CI PODs + - armband-baremetal: + slave-label: armband-baremetal + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - armband-virtual: + slave-label: armband-virtual + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - armband-baremetal: + slave-label: armband-baremetal + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + - armband-virtual: + slave-label: armband-virtual + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + # ------------------------------- + # None-CI PODs + # ------------------------------- + - baremetal-centos: + slave-label: 'intel-pod8' + SUT: compass + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - zte-pod1: + slave-label: zte-pod1 + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - zte-pod2: + slave-label: zte-pod2 + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - zte-pod3: + slave-label: zte-pod3 + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - zte-pod1: + slave-label: zte-pod1 + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + - zte-pod3: + slave-label: zte-pod3 + SUT: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + - huawei-pod4: + slave-label: huawei-pod4 + SUT: apex + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + - huawei-pod7: + slave-label: huawei-pod7 + SUT: compass + auto-trigger-name: 'daily-trigger-disabled' + <<: *danube + + # ------------------------------- testsuite: - - 'compliance_set' - - 'proposed_tests' + - 'compliance_set' + - 'proposed_tests' jobs: - - 'dovetail-{SUT}-{pod}-{testsuite}-{stream}' + - 'dovetail-{SUT}-{pod}-{testsuite}-{stream}' ################################ # job templates @@ -191,80 +192,80 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' + - logrotate-default + - throttle: + enabled: true + max-per-node: 1 + option: 'project' wrappers: - - build-name: - name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' - - timeout: - timeout: 300 - abort: true - - fix-workspace-permissions + - build-name: + name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' + - timeout: + timeout: 300 + abort: true + - fix-workspace-permissions triggers: - - '{auto-trigger-name}' + - '{auto-trigger-name}' parameters: - - project-parameter: - project: '{project}' - branch: '{dovetail-branch}' - - '{SUT}-defaults' - - '{slave-label}-defaults' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - - string: - name: DOCKER_TAG - default: '{docker-tag}' - description: 'Tag to pull dovetail docker image' - - string: - name: CI_DEBUG - default: 'true' - description: "Show debug output information" - - string: - name: TESTSUITE - default: '{testsuite}' - description: "dovetail testsuite to run" - - string: - name: DOVETAIL_REPO_DIR - default: "/home/opnfv/dovetail" - description: "Directory where the dovetail repository is cloned" - - string: - name: SUT_BRANCH - default: '{branch}' - description: "SUT branch" + - project-parameter: + project: '{project}' + branch: '{dovetail-branch}' + - '{SUT}-defaults' + - '{slave-label}-defaults' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-ha' + - string: + name: DOCKER_TAG + default: '{docker-tag}' + description: 'Tag to pull dovetail docker image' + - string: + name: CI_DEBUG + default: 'true' + description: "Show debug output information" + - string: + name: TESTSUITE + default: '{testsuite}' + description: "dovetail testsuite to run" + - string: + name: DOVETAIL_REPO_DIR + default: "/home/opnfv/dovetail" + description: "Directory where the dovetail repository is cloned" + - string: + name: SUT_BRANCH + default: '{branch}' + description: "SUT branch" scm: - - git-scm + - git-scm builders: - - description-setter: - description: "POD: $NODE_NAME" - - 'dovetail-cleanup' - - 'dovetail-run' + - description-setter: + description: "POD: $NODE_NAME" + - 'dovetail-cleanup' + - 'dovetail-run' publishers: - - archive: - artifacts: 'results/**/*' - allow-empty: true - fingerprint: true - - email-jenkins-admins-on-failure + - archive: + artifacts: 'results/**/*' + allow-empty: true + fingerprint: true + - email-jenkins-admins-on-failure -#-------------------------- +# ------------------------- # builder macros -#-------------------------- +# ------------------------- - builder: name: dovetail-run builders: - - shell: - !include-raw: ./dovetail-run.sh + - shell: + !include-raw: ./dovetail-run.sh - builder: name: dovetail-cleanup builders: - - shell: - !include-raw: ./dovetail-cleanup.sh + - shell: + !include-raw: ./dovetail-cleanup.sh diff --git a/jjb/dovetail/dovetail-project-jobs.yml b/jjb/dovetail/dovetail-project-jobs.yml index 9dc4808b4..c38ec9637 100644 --- a/jjb/dovetail/dovetail-project-jobs.yml +++ b/jjb/dovetail/dovetail-project-jobs.yml @@ -1,3 +1,4 @@ +--- ################################################### # Non-ci jobs for Dovetail project # They will only be enabled on request by projects! @@ -8,13 +9,13 @@ project: 'dovetail' jobs: - - 'dovetail-verify-{stream}' - - 'dovetail-merge-{stream}' + - 'dovetail-verify-{stream}' + - 'dovetail-merge-{stream}' stream: - - master: - branch: '{stream}' - disabled: false + - master: + branch: '{stream}' + disabled: false ################################ # job templates @@ -26,35 +27,35 @@ disabled: '{obj:disabled}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' scm: - - git-scm-gerrit + - 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}' + - 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: - - dovetail-unit-tests + - dovetail-unit-tests - job-template: name: 'dovetail-merge-{stream}' @@ -62,50 +63,50 @@ disabled: '{obj:disabled}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' scm: - - git-scm + - git-scm triggers: - - gerrit: - server-name: 'gerrit.opnfv.org' - trigger-on: - - change-merged-event - - comment-added-contains-event: - comment-contains-value: 'remerge' - projects: - - project-compare-type: 'ANT' - project-pattern: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' + - 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: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' builders: - - dovetail-unit-tests + - dovetail-unit-tests ################################ -#builders for dovetail project +# builders for dovetail project ############################### - builder: name: dovetail-hello-world builders: - - shell: | - #!/bin/bash - set -o errexit + - shell: | + #!/bin/bash + set -o errexit - echo "hello world" + echo "hello world" - builder: name: dovetail-unit-tests builders: - - shell: | - #!/bin/bash - set -o errexit - set -o pipefail + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail - tox + tox diff --git a/jjb/dovetail/dovetail-weekly-jobs.yml b/jjb/dovetail/dovetail-weekly-jobs.yml index 11904cbcd..5a162bb7f 100644 --- a/jjb/dovetail/dovetail-weekly-jobs.yml +++ b/jjb/dovetail/dovetail-weekly-jobs.yml @@ -1,59 +1,60 @@ +--- - project: name: dovetail-weekly-jobs project: dovetail -#-------------------------------- -# BRANCH ANCHORS -#-------------------------------- + # ------------------------------- + # BRANCH ANCHORS + # ------------------------------- master: &master - stream: master - branch: '{stream}' - dovetail-branch: '{stream}' - gs-pathname: '' - docker-tag: 'latest' + stream: master + branch: '{stream}' + dovetail-branch: '{stream}' + gs-pathname: '' + docker-tag: 'latest' danube: &danube - stream: danube - branch: 'stable/{stream}' - dovetail-branch: master - gs-pathname: '/{stream}' - docker-tag: 'latest' + stream: danube + branch: 'stable/{stream}' + dovetail-branch: master + gs-pathname: '/{stream}' + docker-tag: 'latest' -#-------------------------------- -# POD, INSTALLER, AND BRANCH MAPPING -#-------------------------------- -# Installers using labels -# CI PODs -# This section should only contain the installers -# that have been switched using labels for slaves -#-------------------------------- + # ------------------------------- + # POD, INSTALLER, AND BRANCH MAPPING + # ------------------------------- + # Installers using labels + # CI PODs + # This section should only contain the installers + # that have been switched using labels for slaves + # ------------------------------- pod: -# - baremetal: -# slave-label: apex-baremetal -# SUT: apex -# <<: *danube - - baremetal: - slave-label: compass-baremetal - SUT: compass - <<: *danube -# - baremetal: -# slave-label: fuel-baremetal -# SUT: fuel -# <<: *danube -# - baremetal: -# slave-label: joid-baremetal -# SUT: joid -# <<: *danube + # - baremetal: + # slave-label: apex-baremetal + # SUT: apex + # <<: *danube + - baremetal: + slave-label: compass-baremetal + SUT: compass + <<: *danube + # - baremetal: + # slave-label: fuel-baremetal + # SUT: fuel + # <<: *danube + # - baremetal: + # slave-label: joid-baremetal + # SUT: joid + # <<: *danube testsuite: - - 'debug' - - 'compliance_set' - - 'proposed_tests' + - 'debug' + - 'compliance_set' + - 'proposed_tests' loop: - - 'weekly': - job-timeout: 180 + - 'weekly': + job-timeout: 180 jobs: - - 'dovetail-{SUT}-{pod}-{testsuite}-{loop}-{stream}' + - 'dovetail-{SUT}-{pod}-{testsuite}-{loop}-{stream}' ################################ # job template @@ -66,61 +67,61 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' + - logrotate-default + - throttle: + enabled: true + max-per-node: 1 + option: 'project' wrappers: - - build-name: - name: '$BUILD_NUMBER Scenario: $DEPLOY_SCENARIO' - - timeout: - timeout: '{job-timeout}' - abort: true - - fix-workspace-permissions + - build-name: + name: '$BUILD_NUMBER Scenario: $DEPLOY_SCENARIO' + - timeout: + timeout: '{job-timeout}' + abort: true + - fix-workspace-permissions parameters: - - project-parameter: - project: '{project}' - branch: '{dovetail-branch}' - - '{SUT}-defaults' - - '{slave-label}-defaults' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - - string: - name: DOCKER_TAG - default: '{docker-tag}' - description: 'Tag to pull dovetail docker image' - - string: - name: CI_DEBUG - default: 'true' - description: "Show debug output information" - - string: - name: TESTSUITE - default: '{testsuite}' - description: "dovetail testsuite to run" - - string: - name: DOVETAIL_REPO_DIR - default: "/home/opnfv/dovetail" - description: "Directory where the dovetail repository is cloned" + - project-parameter: + project: '{project}' + branch: '{dovetail-branch}' + - '{SUT}-defaults' + - '{slave-label}-defaults' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-ha' + - string: + name: DOCKER_TAG + default: '{docker-tag}' + description: 'Tag to pull dovetail docker image' + - string: + name: CI_DEBUG + default: 'true' + description: "Show debug output information" + - string: + name: TESTSUITE + default: '{testsuite}' + description: "dovetail testsuite to run" + - string: + name: DOVETAIL_REPO_DIR + default: "/home/opnfv/dovetail" + description: "Directory where the dovetail repository is cloned" scm: - - git-scm + - git-scm builders: - - description-setter: - description: "POD: $NODE_NAME" - - 'dovetail-cleanup' - - 'dovetail-run' + - description-setter: + description: "POD: $NODE_NAME" + - 'dovetail-cleanup' + - 'dovetail-run' publishers: - - archive: - artifacts: 'results/**/*' - allow-empty: true - fingerprint: true - - email-jenkins-admins-on-failure + - archive: + artifacts: 'results/**/*' + allow-empty: true + fingerprint: true + - email-jenkins-admins-on-failure ######################## # builder macros @@ -128,10 +129,11 @@ - builder: name: dovetail-run-weekly builders: - - shell: - !include-raw: ./dovetail-run.sh + - shell: + !include-raw: ./dovetail-run.sh + - builder: name: dovetail-cleanup-weekly builders: - - shell: - !include-raw: ./dovetail-cleanup.sh + - shell: + !include-raw: ./dovetail-cleanup.sh diff --git a/jjb/functest/functest-daily-jobs.yml b/jjb/functest/functest-daily-jobs.yml index 04a293618..bddb2777b 100644 --- a/jjb/functest/functest-daily-jobs.yml +++ b/jjb/functest/functest-daily-jobs.yml @@ -1,3 +1,4 @@ +--- ################################### # job configuration for functest ################################### @@ -6,210 +7,210 @@ project: functest -#-------------------------------- -# BRANCH ANCHORS -#-------------------------------- + # ------------------------------- + # BRANCH ANCHORS + # ------------------------------- master: &master - stream: master - branch: '{stream}' - gs-pathname: '' - docker-tag: 'latest' + stream: master + branch: '{stream}' + gs-pathname: '' + docker-tag: 'latest' euphrates: &euphrates - stream: euphrates - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - docker-tag: 'stable' -#-------------------------------- -# POD, INSTALLER, AND BRANCH MAPPING -#-------------------------------- -# Installers using labels -# CI PODs -# This section should only contain the installers -# that have been switched using labels for slaves -#-------------------------------- + stream: euphrates + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + docker-tag: 'stable' + # ------------------------------- + # POD, INSTALLER, AND BRANCH MAPPING + # ------------------------------- + # Installers using labels + # CI PODs + # This section should only contain the installers + # that have been switched using labels for slaves + # ------------------------------- pod: -# fuel CI PODs - - baremetal: - slave-label: fuel-baremetal - installer: fuel - <<: *master - - virtual: - slave-label: fuel-virtual - installer: fuel - <<: *master - - baremetal: - slave-label: fuel-baremetal - installer: fuel - <<: *euphrates - - virtual: - slave-label: fuel-virtual - installer: fuel - <<: *euphrates -# joid CI PODs - - baremetal: - slave-label: joid-baremetal - installer: joid - <<: *master - - virtual: - slave-label: joid-virtual - installer: joid - <<: *master - - baremetal: - slave-label: joid-baremetal - installer: joid - <<: *euphrates - - virtual: - slave-label: joid-virtual - installer: joid - <<: *euphrates -# compass CI PODs - - baremetal: - slave-label: compass-baremetal - installer: compass - <<: *master - - virtual: - slave-label: compass-virtual - installer: compass - <<: *master - - baremetal: - slave-label: compass-baremetal - installer: compass - <<: *euphrates - - virtual: - slave-label: compass-virtual - installer: compass - <<: *euphrates -# apex CI PODs - - virtual: - slave-label: apex-virtual-master - installer: apex - <<: *master - - baremetal: - slave-label: apex-baremetal-master - installer: apex - <<: *master - - virtual: - slave-label: apex-virtual-euphrates - installer: apex - <<: *euphrates - - baremetal: - slave-label: apex-baremetal-euphrates - installer: apex - <<: *euphrates -# armband CI PODs - - armband-baremetal: - slave-label: armband-baremetal - installer: fuel - <<: *master - - armband-virtual: - slave-label: armband-virtual - installer: fuel - <<: *master - - armband-baremetal: - slave-label: armband-baremetal - installer: fuel - <<: *euphrates - - armband-virtual: - slave-label: armband-virtual - installer: fuel - <<: *euphrates -# daisy CI PODs - - baremetal: - slave-label: daisy-baremetal - installer: daisy - <<: *master - - virtual: - slave-label: daisy-virtual - installer: daisy - <<: *master - - baremetal: - slave-label: daisy-baremetal - installer: daisy - <<: *euphrates - - virtual: - slave-label: daisy-virtual - installer: daisy - <<: *euphrates -# netvirt 3rd party ci - - virtual: - slave-label: odl-netvirt-virtual - installer: netvirt - <<: *master -#-------------------------------- -# None-CI PODs -#-------------------------------- - - orange-pod1: - slave-label: '{pod}' - installer: joid - <<: *master - - orange-pod5: - slave-label: '{pod}' - installer: fuel - <<: *master - - orange-pod2: - slave-label: '{pod}' - installer: joid - <<: *master - - baremetal-centos: - slave-label: 'intel-pod8' - installer: compass - <<: *master - - nokia-pod1: - slave-label: '{pod}' - installer: apex - <<: *master - - zte-pod1: - slave-label: '{pod}' - installer: fuel - <<: *master - - zte-pod1: - slave-label: '{pod}' - installer: fuel - <<: *euphrates - - zte-pod2: - slave-label: '{pod}' - installer: daisy - <<: *master - - zte-pod2: - slave-label: '{pod}' - installer: daisy - <<: *euphrates - - zte-pod3: - slave-label: '{pod}' - installer: daisy - <<: *master - - zte-pod3: - slave-label: '{pod}' - installer: daisy - <<: *euphrates -# PODs for verify jobs triggered by each patch upload -# - ool-virtual1: -# slave-label: '{pod}' -# installer: apex -# <<: *master -#-------------------------------- + # fuel CI PODs + - baremetal: + slave-label: fuel-baremetal + installer: fuel + <<: *master + - virtual: + slave-label: fuel-virtual + installer: fuel + <<: *master + - baremetal: + slave-label: fuel-baremetal + installer: fuel + <<: *euphrates + - virtual: + slave-label: fuel-virtual + installer: fuel + <<: *euphrates + # joid CI PODs + - baremetal: + slave-label: joid-baremetal + installer: joid + <<: *master + - virtual: + slave-label: joid-virtual + installer: joid + <<: *master + - baremetal: + slave-label: joid-baremetal + installer: joid + <<: *euphrates + - virtual: + slave-label: joid-virtual + installer: joid + <<: *euphrates + # compass CI PODs + - baremetal: + slave-label: compass-baremetal + installer: compass + <<: *master + - virtual: + slave-label: compass-virtual + installer: compass + <<: *master + - baremetal: + slave-label: compass-baremetal + installer: compass + <<: *euphrates + - virtual: + slave-label: compass-virtual + installer: compass + <<: *euphrates + # apex CI PODs + - virtual: + slave-label: apex-virtual-master + installer: apex + <<: *master + - baremetal: + slave-label: apex-baremetal-master + installer: apex + <<: *master + - virtual: + slave-label: apex-virtual-euphrates + installer: apex + <<: *euphrates + - baremetal: + slave-label: apex-baremetal-euphrates + installer: apex + <<: *euphrates + # armband CI PODs + - armband-baremetal: + slave-label: armband-baremetal + installer: fuel + <<: *master + - armband-virtual: + slave-label: armband-virtual + installer: fuel + <<: *master + - armband-baremetal: + slave-label: armband-baremetal + installer: fuel + <<: *euphrates + - armband-virtual: + slave-label: armband-virtual + installer: fuel + <<: *euphrates + # daisy CI PODs + - baremetal: + slave-label: daisy-baremetal + installer: daisy + <<: *master + - virtual: + slave-label: daisy-virtual + installer: daisy + <<: *master + - baremetal: + slave-label: daisy-baremetal + installer: daisy + <<: *euphrates + - virtual: + slave-label: daisy-virtual + installer: daisy + <<: *euphrates + # netvirt 3rd party ci + - virtual: + slave-label: odl-netvirt-virtual + installer: netvirt + <<: *master + # ------------------------------- + # None-CI PODs + # ------------------------------- + - orange-pod1: + slave-label: '{pod}' + installer: joid + <<: *master + - orange-pod5: + slave-label: '{pod}' + installer: fuel + <<: *master + - orange-pod2: + slave-label: '{pod}' + installer: joid + <<: *master + - baremetal-centos: + slave-label: 'intel-pod8' + installer: compass + <<: *master + - nokia-pod1: + slave-label: '{pod}' + installer: apex + <<: *master + - zte-pod1: + slave-label: '{pod}' + installer: fuel + <<: *master + - zte-pod1: + slave-label: '{pod}' + installer: fuel + <<: *euphrates + - zte-pod2: + slave-label: '{pod}' + installer: daisy + <<: *master + - zte-pod2: + slave-label: '{pod}' + installer: daisy + <<: *euphrates + - zte-pod3: + slave-label: '{pod}' + installer: daisy + <<: *master + - zte-pod3: + slave-label: '{pod}' + installer: daisy + <<: *euphrates + # PODs for verify jobs triggered by each patch upload + # - ool-virtual1: + # slave-label: '{pod}' + # installer: apex + # <<: *master + # ------------------------------- alpine-pod: - - ericsson-virtual-pod1bl01: - slave-label: '{alpine-pod}' - installer: fuel - <<: *master - - huawei-virtual5: - slave-label: '{alpine-pod}' - installer: compass - <<: *master + - ericsson-virtual-pod1bl01: + slave-label: '{alpine-pod}' + installer: fuel + <<: *master + - huawei-virtual5: + slave-label: '{alpine-pod}' + installer: compass + <<: *master testsuite: - - 'suite': - job-timeout: 60 - - 'daily': - job-timeout: 240 - - 'arm-daily': - job-timeout: 240 + - 'suite': + job-timeout: 60 + - 'daily': + job-timeout: 240 + - 'arm-daily': + job-timeout: 240 jobs: - - 'functest-{installer}-{pod}-{testsuite}-{stream}' - - 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}' + - 'functest-{installer}-{pod}-{testsuite}-{stream}' + - 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}' ################################ # job template @@ -220,47 +221,47 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' + - logrotate-default + - throttle: + enabled: true + max-per-node: 1 + option: 'project' wrappers: - - build-name: - name: '$BUILD_NUMBER Suite: $FUNCTEST_MODE Scenario: $DEPLOY_SCENARIO' - - timeout: - timeout: '{job-timeout}' - abort: true + - build-name: + name: '$BUILD_NUMBER Suite: $FUNCTEST_MODE Scenario: $DEPLOY_SCENARIO' + - timeout: + timeout: '{job-timeout}' + abort: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - 'functest-{testsuite}-parameter' - - string: - name: DEPLOY_SCENARIO - default: 'os-odl_l2-nofeature-ha' - - string: - name: DOCKER_TAG - default: '{docker-tag}' - description: 'Tag to pull docker image' - - string: - name: CLEAN_DOCKER_IMAGES - default: 'false' - description: 'Remove downloaded docker images (opnfv/functest*:*)' - - functest-parameter: - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults' + - 'functest-{testsuite}-parameter' + - string: + name: DEPLOY_SCENARIO + default: 'os-odl_l2-nofeature-ha' + - string: + name: DOCKER_TAG + default: '{docker-tag}' + description: 'Tag to pull docker image' + - string: + name: CLEAN_DOCKER_IMAGES + default: 'false' + description: 'Remove downloaded docker images (opnfv/functest*:*)' + - functest-parameter: + gs-pathname: '{gs-pathname}' scm: - - git-scm + - git-scm builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'functest-{testsuite}-builder' + - description-setter: + description: "Built on $NODE_NAME" + - 'functest-{testsuite}-builder' - job-template: name: 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}' @@ -268,39 +269,39 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' + - logrotate-default + - throttle: + enabled: true + max-per-node: 1 + option: 'project' wrappers: - - build-name: - name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO' - - timeout: - timeout: '{job-timeout}' - abort: true + - build-name: + name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO' + - timeout: + timeout: '{job-timeout}' + abort: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - 'functest-{testsuite}-parameter' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' - - functest-parameter: - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults' + - 'functest-{testsuite}-parameter' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-noha' + - functest-parameter: + gs-pathname: '{gs-pathname}' scm: - - git-scm + - git-scm builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'functest-alpine-daily-builder' + - description-setter: + description: "Built on $NODE_NAME" + - 'functest-alpine-daily-builder' ######################## # parameter macros @@ -308,188 +309,199 @@ - parameter: name: functest-daily-parameter parameters: - - string: - name: FUNCTEST_MODE - default: 'daily' - description: "Daily suite name to run" + - string: + name: FUNCTEST_MODE + default: 'daily' + description: "Daily suite name to run" + - parameter: name: functest-arm-daily-parameter parameters: - - string: - name: FUNCTEST_MODE - default: 'arm-daily' - description: "Daily suite name (Aarch64) to run" + - string: + name: FUNCTEST_MODE + default: 'arm-daily' + description: "Daily suite name (Aarch64) to run" + - parameter: name: functest-suite-parameter parameters: - - choice: - name: FUNCTEST_MODE - choices: - - 'tier' - - 'testcase' - default: 'tier' - description: "Test case or Tier to be run" - - choice: - name: FUNCTEST_SUITE_NAME - choices: - - 'connection_check' - - 'api_check' - - 'snaps_health_check' - - 'vping_userdata' - - 'vping_ssh' - - 'tempest_smoke_serial' - - 'rally_sanity' - - 'odl' - - 'odl_netvirt' - - 'snaps_smoke' - - 'refstack_defcore' - - 'promise' - - 'doctor' - - 'bgpvpn' - - 'parser' - - 'security_scan' - - 'tempest_full_parallel' - - 'rally_full' - - 'cloudify_ims' - - 'cloudify_vrouter' - - 'orchestra_openims' - - 'orchestra_clearwaterims' - default: 'connection_check' - - choice: - name: FUNCTEST_TIER - choices: - - 'healthcheck' - - 'smoke' - - 'features' - - 'components' - - 'vnf' - default: 'healthcheck' - - string: - name: TESTCASE_OPTIONS - default: '' - description: 'Additional parameters specific to test case(s)' + - choice: + name: FUNCTEST_MODE + choices: + - 'tier' + - 'testcase' + default: 'tier' + description: "Test case or Tier to be run" + - choice: + name: FUNCTEST_SUITE_NAME + choices: + - 'connection_check' + - 'api_check' + - 'snaps_health_check' + - 'vping_userdata' + - 'vping_ssh' + - 'tempest_smoke_serial' + - 'rally_sanity' + - 'odl' + - 'odl_netvirt' + - 'snaps_smoke' + - 'refstack_defcore' + - 'promise' + - 'doctor' + - 'bgpvpn' + - 'parser' + - 'security_scan' + - 'tempest_full_parallel' + - 'rally_full' + - 'cloudify_ims' + - 'cloudify_vrouter' + - 'orchestra_openims' + - 'orchestra_clearwaterims' + default: 'connection_check' + - choice: + name: FUNCTEST_TIER + choices: + - 'healthcheck' + - 'smoke' + - 'features' + - 'components' + - 'vnf' + default: 'healthcheck' + - string: + name: TESTCASE_OPTIONS + default: '' + description: 'Additional parameters specific to test case(s)' + - parameter: name: functest-parameter parameters: - - string: - name: GS_PATHNAME - default: '{gs-pathname}' - description: "Version directory where the opnfv documents will be stored in gs repository" - - string: - name: FUNCTEST_REPO_DIR - default: "/home/opnfv/repos/functest" - description: "Directory where the Functest repository is cloned" - - string: - name: PUSH_RESULTS_TO_DB - default: "true" - description: "Push the results of all the tests to the resultDB" - - string: - name: CI_DEBUG - default: 'false' - description: "Show debug output information" - - string: - name: RC_FILE_PATH - default: '' - description: "Path to the OS credentials file if given" + - string: + name: GS_PATHNAME + default: '{gs-pathname}' + description: "Version directory where the opnfv documents will be stored in gs repository" + - string: + name: FUNCTEST_REPO_DIR + default: "/home/opnfv/repos/functest" + description: "Directory where the Functest repository is cloned" + - string: + name: PUSH_RESULTS_TO_DB + default: "true" + description: "Push the results of all the tests to the resultDB" + - string: + name: CI_DEBUG + default: 'false' + description: "Show debug output information" + - string: + name: RC_FILE_PATH + default: '' + description: "Path to the OS credentials file if given" ######################## # trigger macros ######################## - trigger: name: 'functest-master' triggers: - - pollscm: - cron: "H 9 * * *" + - pollscm: + cron: "H 9 * * *" ######################## # builder macros ######################## - builder: name: functest-daily-builder builders: - - 'functest-cleanup' - - 'functest-daily' - - 'functest-store-results' - - 'functest-exit' + - 'functest-cleanup' + - 'functest-daily' + - 'functest-store-results' + - 'functest-exit' - builder: name: functest-arm-daily-builder builders: - - 'functest-cleanup' - - 'set-functest-env' - - 'functest-arm-daily' - - 'functest-store-results' - - 'functest-exit' + - 'functest-cleanup' + - 'set-functest-env' + - 'functest-arm-daily' + - 'functest-store-results' + - 'functest-exit' - builder: name: functest-suite-builder builders: - - 'functest-cleanup' - - 'set-functest-env-alpine' - - 'functest-suite' - - 'functest-store-results' - - 'functest-exit' + - 'functest-cleanup' + - 'set-functest-env-alpine' + - 'functest-suite' + - 'functest-store-results' + - 'functest-exit' - builder: name: functest-alpine-daily-builder builders: - - 'functest-cleanup' - - 'set-functest-env-alpine' - - 'functest-daily' - - 'functest-store-results' - - 'functest-exit' + - 'functest-cleanup' + - 'set-functest-env-alpine' + - 'functest-daily' + - 'functest-store-results' + - 'functest-exit' - builder: name: functest-daily builders: - - shell: - !include-raw: - - ./functest-env-presetup.sh - - ../../utils/fetch_os_creds.sh - - ./functest-alpine.sh + # yamllint disable rule:indentation + - shell: + !include-raw: + - ./functest-env-presetup.sh + - ../../utils/fetch_os_creds.sh + - ./functest-alpine.sh +# yamllint enable rule:indentation - builder: name: functest-arm-daily builders: - - shell: - !include-raw: ./functest-loop.sh + - shell: + !include-raw: ./functest-loop.sh - builder: name: functest-suite builders: - - shell: - !include-raw: - - ./functest-alpine.sh + # yamllint disable rule:indentation + - shell: + !include-raw: + - ./functest-alpine.sh +# yamllint enable rule:indentation - builder: name: set-functest-env builders: - - shell: - !include-raw: - - ./functest-env-presetup.sh - - ../../utils/fetch_os_creds.sh - - ./set-functest-env.sh + # yamllint disable rule:indentation + - shell: + !include-raw: + - ./functest-env-presetup.sh + - ../../utils/fetch_os_creds.sh + - ./set-functest-env.sh +# yamllint enable rule:indentation - builder: name: set-functest-env-alpine builders: - - shell: - !include-raw: - - ./functest-env-presetup.sh - - ../../utils/fetch_os_creds.sh + # yamllint disable rule:indentation + - shell: + !include-raw: + - ./functest-env-presetup.sh + - ../../utils/fetch_os_creds.sh +# yamllint enable rule:indentation - builder: name: functest-store-results builders: - - shell: - !include-raw: ../../utils/push-test-logs.sh + - shell: + !include-raw: ../../utils/push-test-logs.sh - builder: name: functest-cleanup builders: - - shell: - !include-raw: ./functest-cleanup.sh + - shell: + !include-raw: ./functest-cleanup.sh - builder: name: functest-exit builders: - - shell: - !include-raw: ./functest-exit.sh + - shell: + !include-raw: ./functest-exit.sh diff --git a/jjb/functest/functest-project-jobs.yml b/jjb/functest/functest-project-jobs.yml index 329db5b7e..e068a4fee 100644 --- a/jjb/functest/functest-project-jobs.yml +++ b/jjb/functest/functest-project-jobs.yml @@ -1,3 +1,4 @@ +--- ################################################### # All the jobs except verify have been removed! # They will only be enabled on request by projects! @@ -8,27 +9,27 @@ project: 'functest' jobs: - - 'functest-verify-{stream}' - - 'functest-verify-{phase}-{stream}' - - 'functest-docs-upload-{stream}' + - 'functest-verify-{stream}' + - 'functest-verify-{phase}-{stream}' + - 'functest-docs-upload-{stream}' stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - euphrates: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - euphrates: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false phase: - - 'unit-tests-and-docs': - slave-label: 'opnfv-build-ubuntu' - - 'build-x86_64': - slave-label: 'opnfv-build-ubuntu' - - 'build-aarch64': - slave-label: 'opnfv-build-ubuntu-arm' + - 'unit-tests-and-docs': + slave-label: 'opnfv-build-ubuntu' + - 'build-x86_64': + slave-label: 'opnfv-build-ubuntu' + - 'build-aarch64': + slave-label: 'opnfv-build-ubuntu-arm' - job-template: name: 'functest-verify-{stream}' @@ -38,64 +39,64 @@ project-type: 'multijob' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' scm: - - git-scm-gerrit + - git-scm-gerrit triggers: - - 'functest-verify-triggers-macro': - project: '{project}' - branch: '{branch}' + - 'functest-verify-triggers-macro': + project: '{project}' + branch: '{branch}' builders: - - shell: | - #!/bin/bash - # we do nothing here as the main stuff will be done - # in phase jobs - echo "Triggering phase jobs!" - - multijob: - name: 'functest-build-and-unittest' - execution-type: PARALLEL - projects: - - name: 'functest-verify-unit-tests-and-docs-{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 - git-revision: true - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: false - - name: 'functest-verify-build-x86_64-{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 - ARCH=x86_64 - git-revision: true - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: false - - name: 'functest-verify-build-aarch64-{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 - ARCH=aarch64 - git-revision: true - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: false + - shell: | + #!/bin/bash + # we do nothing here as the main stuff will be done + # in phase jobs + echo "Triggering phase jobs!" + - multijob: + name: 'functest-build-and-unittest' + execution-type: PARALLEL + projects: + - name: 'functest-verify-unit-tests-and-docs-{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 + git-revision: true + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: false + - name: 'functest-verify-build-x86_64-{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 + ARCH=x86_64 + git-revision: true + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: false + - name: 'functest-verify-build-aarch64-{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 + ARCH=aarch64 + git-revision: true + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: false - job-template: name: 'functest-verify-{phase}-{stream}' @@ -103,24 +104,24 @@ disabled: '{obj:disabled}' wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 30 + - ssh-agent-wrapper + - build-timeout: + timeout: 30 parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{slave-label}-defaults' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{slave-label}-defaults' scm: - - git-scm-gerrit + - git-scm-gerrit builders: - - 'functest-verify-{phase}-builders-macro' + - 'functest-verify-{phase}-builders-macro' publishers: - - 'functest-verify-{phase}-publishers-macro' + - 'functest-verify-{phase}-publishers-macro' - job-template: name: 'functest-docs-upload-{stream}' @@ -128,21 +129,21 @@ disabled: '{obj:disabled}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' scm: - - git-scm + - git-scm triggers: - - 'functest-docs-upload-triggers-macro': - project: '{project}' - branch: '{branch}' + - 'functest-docs-upload-triggers-macro': + project: '{project}' + branch: '{branch}' builders: - - functest-upload-doc-artifact + - functest-upload-doc-artifact ################################ # job triggers @@ -150,47 +151,48 @@ - trigger: name: 'functest-verify-triggers-macro' 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' + - 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' + - trigger: name: 'functest-docs-upload-triggers-macro' 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**|.gitignore' + - 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: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + disable-strict-forbidden-file-verification: 'true' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**|.gitignore' ################################ # job builders ################################ @@ -198,23 +200,26 @@ - builder: name: 'functest-verify-unit-tests-and-docs-builders-macro' builders: - - shell: | - cd $WORKSPACE && tox + - shell: | + cd $WORKSPACE && tox + - builder: name: 'functest-verify-build-x86_64-builders-macro' builders: - - shell: | - echo "Not activated!" + - shell: | + echo "Not activated!" + - builder: name: 'functest-verify-build-aarch64-builders-macro' builders: - - shell: | - echo "Not activated!" + - shell: | + echo "Not activated!" + - builder: name: 'functest-upload-doc-artifact' builders: - - shell: | - cd $WORKSPACE && tox -edocs + - shell: | + cd $WORKSPACE && tox -edocs wget -O - https://git.opnfv.org/releng/plain/utils/upload-artifact.sh | bash -s "api/_build" "docs" ################################ # job publishers @@ -222,29 +227,31 @@ - publisher: name: 'functest-verify-unit-tests-and-docs-publishers-macro' 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 - - email-jenkins-admins-on-failure + - 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 + - email-jenkins-admins-on-failure + - publisher: name: 'functest-verify-build-x86_64-publishers-macro' publishers: - - email-jenkins-admins-on-failure + - email-jenkins-admins-on-failure + - publisher: name: 'functest-verify-build-aarch64-publishers-macro' publishers: - - email-jenkins-admins-on-failure + - email-jenkins-admins-on-failure diff --git a/jjb/functest/functest-weekly-jobs.yml b/jjb/functest/functest-weekly-jobs.yml index fe331e03c..6826e4151 100644 --- a/jjb/functest/functest-weekly-jobs.yml +++ b/jjb/functest/functest-weekly-jobs.yml @@ -1,3 +1,4 @@ +--- ################################### # job configuration for functest ################################### @@ -6,50 +7,50 @@ project: functest -#-------------------------------- -# BRANCH ANCHORS -#-------------------------------- + # ------------------------------- + # BRANCH ANCHORS + # ------------------------------- master: &master - stream: master - branch: '{stream}' - gs-pathname: '' - docker-tag: 'latest' - disabled: false + stream: master + branch: '{stream}' + gs-pathname: '' + docker-tag: 'latest' + disabled: false euphrates: &euphrates - stream: euphrates - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - docker-tag: 'stable' - disabled: false -#-------------------------------- -# POD, INSTALLER, AND BRANCH MAPPING -#-------------------------------- -# Installers using labels -# CI PODs -# This section should only contain the installers -# that have been switched using labels for slaves -#-------------------------------- + stream: euphrates + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + docker-tag: 'stable' + disabled: false + # ------------------------------- + # POD, INSTALLER, AND BRANCH MAPPING + # ------------------------------- + # Installers using labels + # CI PODs + # This section should only contain the installers + # that have been switched using labels for slaves + # ------------------------------- pod: -# fuel CI PODs - - baremetal: - slave-label: fuel-baremetal - installer: fuel - <<: *master - - virtual: - slave-label: fuel-virtual - installer: fuel - <<: *master - - baremetal: - slave-label: fuel-baremetal - installer: fuel - <<: *euphrates - - virtual: - slave-label: fuel-virtual - installer: fuel - <<: *euphrates -#-------------------------------- + # fuel CI PODs + - baremetal: + slave-label: fuel-baremetal + installer: fuel + <<: *master + - virtual: + slave-label: fuel-virtual + installer: fuel + <<: *master + - baremetal: + slave-label: fuel-baremetal + installer: fuel + <<: *euphrates + - virtual: + slave-label: fuel-virtual + installer: fuel + <<: *euphrates + # ------------------------------- jobs: - - 'functest-{installer}-{pod}-weekly-{stream}' + - 'functest-{installer}-{pod}-weekly-{stream}' ################################ # job template @@ -62,66 +63,68 @@ concurrent: true properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' + - logrotate-default + - throttle: + enabled: true + max-per-node: 1 + option: 'project' wrappers: - - build-name: - name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO' - - timeout: - timeout: '400' - abort: true + - build-name: + name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO' + - timeout: + timeout: '400' + abort: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - string: - name: FUNCTEST_SUITE_NAME - default: 'weekly' - description: "Weekly suite name to run" - - string: - name: DEPLOY_SCENARIO - default: 'os-odl_l2-nofeature-ha' - - string: - name: DOCKER_TAG - default: '{docker-tag}' - description: 'Tag to pull docker image' - - string: - name: CLEAN_DOCKER_IMAGES - default: 'false' - description: 'Remove downloaded docker images (opnfv/functest*:*)' - - functest-parameter: - gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - '{slave-label}-defaults' + - string: + name: FUNCTEST_SUITE_NAME + default: 'weekly' + description: "Weekly suite name to run" + - string: + name: DEPLOY_SCENARIO + default: 'os-odl_l2-nofeature-ha' + - string: + name: DOCKER_TAG + default: '{docker-tag}' + description: 'Tag to pull docker image' + - string: + name: CLEAN_DOCKER_IMAGES + default: 'false' + description: 'Remove downloaded docker images (opnfv/functest*:*)' + - functest-parameter: + gs-pathname: '{gs-pathname}' scm: - - git-scm + - git-scm builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'functest-weekly-builder' + - description-setter: + description: "Built on $NODE_NAME" + - 'functest-weekly-builder' ######################## # builder macros ######################## - builder: name: functest-weekly-builder builders: - - shell: - !include-raw: ./functest-cleanup.sh - - shell: - !include-raw: - - ./functest-env-presetup.sh - - ../../utils/fetch_os_creds.sh - - ./set-functest-env.sh - - shell: - !include-raw: ./functest-loop.sh - - shell: - !include-raw: ../../utils/push-test-logs.sh - - shell: - !include-raw: ./functest-exit.sh + - shell: + !include-raw: ./functest-cleanup.sh + # yamllint disable rule:indentation + - shell: + !include-raw: + - ./functest-env-presetup.sh + - ../../utils/fetch_os_creds.sh + - ./set-functest-env.sh + # yamllint enable rule:indentation + - shell: + !include-raw: ./functest-loop.sh + - shell: + !include-raw: ../../utils/push-test-logs.sh + - shell: + !include-raw: ./functest-exit.sh diff --git a/jjb/sfc/sfc-project-jobs.yml b/jjb/sfc/sfc-project-jobs.yml index bf60ff52c..82a2cfb5d 100644 --- a/jjb/sfc/sfc-project-jobs.yml +++ b/jjb/sfc/sfc-project-jobs.yml @@ -1,3 +1,4 @@ +--- ################################################### # All the jobs except verify have been removed! # They will only be enabled on request by projects! @@ -8,16 +9,17 @@ project: 'sfc' jobs: - - 'sfc-verify-{stream}' + - 'sfc-verify-{stream}' + stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - euphrates: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - euphrates: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false - job-template: name: 'sfc-verify-{stream}' @@ -25,39 +27,40 @@ disabled: '{obj:disabled}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' + scm: - - git-scm-gerrit + - 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' + - 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: - - sfc-unit-tests + - sfc-unit-tests ################################ # job builders @@ -66,5 +69,5 @@ - builder: name: sfc-unit-tests builders: - - shell: | - cd $WORKSPACE && yamllint $(git ls-tree -r HEAD --name-only | egrep 'yml$|yaml$' | egrep -v 'scenarios') + - shell: | + cd $WORKSPACE && yamllint $(git ls-tree -r HEAD --name-only | egrep 'yml$|yaml$' | egrep -v 'scenarios') diff --git a/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml b/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml index 05400a62b..7f21032e2 100644 --- a/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml +++ b/jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml @@ -1,20 +1,21 @@ +--- - project: name: vnf_forwarding_graph project: '{name}' jobs: - - 'vnf_forwarding_graph-verify-{stream}' + - 'vnf_forwarding_graph-verify-{stream}' stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - euphrates: - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - disabled: false + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - euphrates: + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false - job-template: name: 'vnf_forwarding_graph-verify-{stream}' @@ -22,32 +23,32 @@ disabled: '{obj:disabled}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' + - project-parameter: + project: '{project}' + branch: '{branch}' scm: - - git-scm-gerrit + - 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}' + - 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: - - shell: | - echo "Nothing to verify!" + - shell: | + echo "Nothing to verify!" diff --git a/jjb/xci/bifrost-cleanup-job.yml b/jjb/xci/bifrost-cleanup-job.yml index 6f3f51a6d..f901afe74 100644 --- a/jjb/xci/bifrost-cleanup-job.yml +++ b/jjb/xci/bifrost-cleanup-job.yml @@ -1,28 +1,29 @@ +--- - project: name: 'openstack-bifrost-cleanup' -#-------------------------------- -# branches -#-------------------------------- + # ------------------------------- + # branches + # ------------------------------- stream: - - master: - branch: '{stream}' + - master: + branch: '{stream}' -#-------------------------------- -# projects -#-------------------------------- + # ------------------------------- + # 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 -#-------------------------------- + - '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}' + - '{project}-bifrost-cleanup-{stream}' - job-template: name: '{project}-bifrost-cleanup-{stream}' @@ -34,109 +35,111 @@ # 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-*' + - build-blocker: + blocking-jobs: + - '{project}-bifrost-verify-*' parameters: - - string: - name: PROJECT - default: '{project}' + - 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 + - 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}' + - '{project}-gerrit-trigger-cleanup': + branch: '{branch}' publishers: - - email: - recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com zhang.jun3g@zte.com.cn - - email-jenkins-admins-on-failure -#-------------------------------- + # 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/**' - disable-strict-forbidden-file-verification: 'true' - readable-message: true + - 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 + - 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.yml b/jjb/xci/bifrost-periodic-jobs.yml index 67151891f..0bca26aa5 100644 --- a/jjb/xci/bifrost-periodic-jobs.yml +++ b/jjb/xci/bifrost-periodic-jobs.yml @@ -1,68 +1,71 @@ +--- - 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. + # ------------------------------- + # 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: '' + 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 -#-------------------------------- + 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 -#-------------------------------- + - 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' - 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' - 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' + - '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 + # ------------------------------- jobs: - - 'bifrost-provision-{pod}-{distro}-periodic-{stream}' + - 'bifrost-provision-{pod}-{distro}-periodic-{stream}' -#-------------------------------- +# ------------------------------- # job templates -#-------------------------------- +# ------------------------------- - job-template: name: 'bifrost-provision-{pod}-{distro}-periodic-{stream}' @@ -71,79 +74,79 @@ concurrent: false properties: - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '^xci-os.*' - - '^xci-deploy.*' - - '^xci-functest.*' - - '^bifrost-.*periodic.*' - - '^osa-.*periodic.*' - block-level: 'NODE' - - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '^xci-os.*' + - '^xci-deploy.*' + - '^xci-functest.*' + - '^bifrost-.*periodic.*' + - '^osa-.*periodic.*' + block-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}' - - string: - name: XCI_LOOP - default: 'periodic' + - 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}' + - string: + name: XCI_LOOP + default: 'periodic' wrappers: - - fix-workspace-permissions + - fix-workspace-permissions scm: - - git-scm + - git-scm # trigger is disabled until we know which jobs we will have # and adjust stuff accordingly triggers: - - timed: '' # '@midnight' + - timed: '' # '@midnight' builders: - - description-setter: - description: "Built on $NODE_NAME - Flavor: $XCI_FLAVOR" - - 'bifrost-provision-builder' + - 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 + - shell: + !include-raw: ./bifrost-provision.sh diff --git a/jjb/xci/bifrost-verify-jobs.yml b/jjb/xci/bifrost-verify-jobs.yml index f9106831c..137787d7a 100644 --- a/jjb/xci/bifrost-verify-jobs.yml +++ b/jjb/xci/bifrost-verify-jobs.yml @@ -1,57 +1,58 @@ +--- - project: name: 'openstack-bifrost-verify' -#-------------------------------- -# branches -#-------------------------------- + # ------------------------------- + # branches + # ------------------------------- stream: - - master: - branch: '{stream}' -#-------------------------------- -# projects -#-------------------------------- + - master: + branch: '{stream}' + # ------------------------------- + # projects + # ------------------------------- project: - - 'openstack': - project-repo: 'https://git.openstack.org/openstack/bifrost' - clone-location: '$WORKSPACE/bifrost' - - 'opnfv': - project-repo: 'https://gerrit.opnfv.org/gerrit/releng-xci' - clone-location: '$WORKSPACE/releng-xci' -#-------------------------------- -# distros -#-------------------------------- + - 'openstack': + project-repo: 'https://git.openstack.org/openstack/bifrost' + clone-location: '$WORKSPACE/bifrost' + - 'opnfv': + project-repo: 'https://gerrit.opnfv.org/gerrit/releng-xci' + clone-location: '$WORKSPACE/releng-xci' + # ------------------------------- + # 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' - - 'suse': - 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 -#-------------------------------- + - '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' + - 'suse': + 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 -#-------------------------------- + - virtual + # ------------------------------- + # jobs + # ------------------------------- jobs: - - '{project}-bifrost-verify-{distro}-{type}-{stream}' + - '{project}-bifrost-verify-{distro}-{type}-{stream}' -#-------------------------------- +# ------------------------------- # VM defaults -#-------------------------------- +# ------------------------------- - defaults: name: verify_vm_defaults test-vm-num-nodes: '3' @@ -62,9 +63,9 @@ vm-memory-size: '4096' vm-disk-cache: 'unsafe' -#-------------------------------- +# ------------------------------- # job templates -#-------------------------------- +# ------------------------------- - job-template: name: '{project}-bifrost-verify-{distro}-{type}-{stream}' @@ -75,170 +76,174 @@ concurrent: false properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '.*-bifrost-verify.*-{type}' - block-level: 'NODE' + - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '.*-bifrost-verify.*-{type}' + block-level: 'NODE' parameters: - - string: - name: PROJECT - default: '{project}' - - string: - name: PROJECT_REPO - default: '{project-repo}' - - string: - name: CLONE_LOCATION - default: '{clone-location}' - - 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: 'infra-{type}-{distro}' - - string: - name: BIFROST_LOG_URL - default: 'http://artifacts.opnfv.org/cross-community-ci/openstack/bifrost/$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER/$JOB_NAME' - - string: - name: XCI_LOOP - default: 'verify' + - string: + name: PROJECT + default: '{project}' + - string: + name: PROJECT_REPO + default: '{project-repo}' + - string: + name: CLONE_LOCATION + default: '{clone-location}' + - 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: 'infra-{type}-{distro}' + # yamllint disable rule:line-length + - string: + name: BIFROST_LOG_URL + default: 'http://artifacts.opnfv.org/cross-community-ci/openstack/bifrost/$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER/$JOB_NAME' + # yamllint enable rule:line-length + - string: + name: XCI_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 + - git: + url: '$PROJECT_REPO' + refspec: '$GERRIT_REFSPEC' + branches: + - 'origin/$BRANCH' + skip-tag: true + choosing-strategy: 'gerrit' + timeout: 10 + wipe-workspace: true triggers: - - '{project}-gerrit-trigger': - branch: '{branch}' + - '{project}-gerrit-trigger': + branch: '{branch}' builders: - - bifrost-set-name - - bifrost-build + - bifrost-set-name + - bifrost-build wrappers: - - fix-workspace-permissions - - build-timeout: - timeout: 90 + - fix-workspace-permissions + - build-timeout: + timeout: 90 publishers: - - email: - recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com - - email-jenkins-admins-on-failure -#-------------------------------- + # 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 +# ------------------------------- # 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' - custom-url: '* $JOB_NAME $BIFROST_LOG_URL/index.html' - 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/**' - disable-strict-forbidden-file-verification: 'true' - readable-message: true + - 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' + custom-url: '* $JOB_NAME $BIFROST_LOG_URL/index.html' + 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' 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' - custom-url: '* $JOB_NAME $BIFROST_LOG_URL/index.html' - 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 + - 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' + custom-url: '* $JOB_NAME $BIFROST_LOG_URL/index.html' + 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 -#--------------------------- +# -------------------------- # builder macros -#--------------------------- +# -------------------------- - builder: name: bifrost-set-name builders: - - description-setter: - description: "Built on $NODE_NAME" + - description-setter: + description: "Built on $NODE_NAME" - builder: name: bifrost-build builders: - - shell: - !include-raw: ./bifrost-verify.sh + - shell: + !include-raw: ./bifrost-verify.sh diff --git a/jjb/xci/osa-periodic-jobs.yml b/jjb/xci/osa-periodic-jobs.yml index 048825e74..26c1575f4 100644 --- a/jjb/xci/osa-periodic-jobs.yml +++ b/jjb/xci/osa-periodic-jobs.yml @@ -1,43 +1,45 @@ +--- - project: name: 'opnfv-osa-periodic' project: 'releng-xci' -#-------------------------------- -# branches -#-------------------------------- + # ------------------------------- + # branches + # ------------------------------- stream: - - master: - branch: '{stream}' -#-------------------------------- -# distros -#-------------------------------- + - master: + branch: '{stream}' + # ------------------------------- + # distros + # ------------------------------- distro: - - 'xenial': - disabled: false - - 'centos7': - disabled: true - - 'suse': - disabled: true -#-------------------------------- -# type -#-------------------------------- + - 'xenial': + disabled: false + - 'centos7': + disabled: true + - 'suse': + disabled: true + # ------------------------------- + # type + # ------------------------------- type: - - virtual -#-------------------------------- -# phases -#-------------------------------- + - virtual + # ------------------------------- + # phases + # ------------------------------- phase: - - 'deploy' - - 'healthcheck' -#-------------------------------- -# jobs -#-------------------------------- + - 'deploy' + - 'healthcheck' + # ------------------------------- + # jobs + # ------------------------------- jobs: - - 'osa-periodic-{distro}-{type}-{stream}' - - 'osa-periodic-{phase}-{type}-{stream}' -#-------------------------------- + - 'osa-periodic-{distro}-{type}-{stream}' + - 'osa-periodic-{phase}-{type}-{stream}' + +# ------------------------------- # job templates -#-------------------------------- +# ------------------------------- - job-template: name: 'osa-periodic-{distro}-{type}-{stream}' @@ -48,69 +50,69 @@ concurrent: false properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'xci-verify-.*' - - 'bifrost-verify-.*' - - 'bifrost-periodic-.*' - - 'osa-verify-.*' - - 'osa-periodic-.*' - block-level: 'NODE' + - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'xci-verify-.*' + - 'bifrost-verify-.*' + - 'bifrost-periodic-.*' + - 'osa-verify-.*' + - 'osa-periodic-.*' + block-level: 'NODE' wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions + - ssh-agent-wrapper + - build-timeout: + timeout: 240 + - fix-workspace-permissions scm: - - git-scm-osa + - git-scm-osa triggers: - - pollscm: - cron: "@midnight" - ignore-post-commit-hooks: True + - pollscm: + cron: "@midnight" + ignore-post-commit-hooks: true parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - label: - name: SLAVE_LABEL - default: 'xci-virtual-{distro}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - label: + name: SLAVE_LABEL + default: 'xci-virtual-{distro}' builders: - - description-setter: - description: "Built on $NODE_NAME" - - multijob: - name: deploy - condition: SUCCESSFUL - projects: - - name: 'osa-periodic-deploy-{type}-{stream}' - current-parameters: true - predefined-parameters: | - DISTRO={distro} - DEPLOY_SCENARIO=os-nosdn-nofeature-noha - git-revision: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - - multijob: - name: healthcheck - condition: SUCCESSFUL - projects: - - name: 'osa-periodic-healthcheck-{type}-{stream}' - current-parameters: true - predefined-parameters: | - DISTRO={distro} - DEPLOY_SCENARIO=os-nosdn-nofeature-noha - FUNCTEST_MODE=tier - FUNCTEST_TIER=healthcheck - node-parameters: true - kill-phase-on: NEVER - abort-all-job: false + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: deploy + condition: SUCCESSFUL + projects: + - name: 'osa-periodic-deploy-{type}-{stream}' + current-parameters: true + predefined-parameters: | + DISTRO={distro} + DEPLOY_SCENARIO=os-nosdn-nofeature-noha + git-revision: true + node-parameters: true + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: healthcheck + condition: SUCCESSFUL + projects: + - name: 'osa-periodic-healthcheck-{type}-{stream}' + current-parameters: true + predefined-parameters: | + DISTRO={distro} + DEPLOY_SCENARIO=os-nosdn-nofeature-noha + FUNCTEST_MODE=tier + FUNCTEST_TIER=healthcheck + node-parameters: true + kill-phase-on: NEVER + abort-all-job: false - job-template: name: 'osa-periodic-{phase}-{type}-{stream}' @@ -120,109 +122,109 @@ concurrent: true properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'xci-verify-deploy-.*' - - 'xci-verify-healthcheck-.*' - - 'bifrost-verify-.*' - - 'bifrost-periodic-.*' - - 'osa-verify-deploy-.*' - - 'osa-verify-halthcheck-.*' - - 'osa-periodic-deploy-.*' - - 'osa-periodic-healthcheck-.*' - block-level: 'NODE' + - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'xci-verify-deploy-.*' + - 'xci-verify-healthcheck-.*' + - 'bifrost-verify-.*' + - 'bifrost-periodic-.*' + - 'osa-verify-deploy-.*' + - 'osa-verify-halthcheck-.*' + - 'osa-periodic-deploy-.*' + - 'osa-periodic-healthcheck-.*' + block-level: 'NODE' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - label: - name: SLAVE_LABEL - default: 'xci-virtual-{distro}' - - string: - name: OPENSTACK_OSA_VERSION - default: 'master' - - string: - name: DISTRO - default: 'xenial' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' - - string: - name: XCI_FLAVOR - default: 'mini' - - string: - name: XCI_LOOP - default: 'periodic' - - string: - name: OPNFV_RELENG_DEV_PATH - default: $WORKSPACE/releng-xci - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_SUITE_NAME - default: 'healthcheck' - - string: - name: FORCE_MASTER - default: 'true' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT + - project-parameter: + project: '{project}' + branch: '{branch}' + - label: + name: SLAVE_LABEL + default: 'xci-virtual-{distro}' + - string: + name: OPENSTACK_OSA_VERSION + default: 'master' + - string: + name: DISTRO + default: 'xenial' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-noha' + - string: + name: XCI_FLAVOR + default: 'mini' + - string: + name: XCI_LOOP + default: 'periodic' + - string: + name: OPNFV_RELENG_DEV_PATH + default: $WORKSPACE/releng-xci + - string: + name: FUNCTEST_MODE + default: 'tier' + - string: + name: FUNCTEST_SUITE_NAME + default: 'healthcheck' + - string: + name: FORCE_MASTER + default: 'true' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT scm: - - git-scm-osa + - git-scm-osa wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions + - ssh-agent-wrapper + - build-timeout: + timeout: 240 + - fix-workspace-permissions builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'osa-periodic-{phase}-macro' + - description-setter: + description: "Built on $NODE_NAME" + - 'osa-periodic-{phase}-macro' -#-------------------------------- +# ------------------------------- # builder macros -#-------------------------------- +# ------------------------------- - builder: name: 'osa-periodic-deploy-macro' builders: - - shell: | - #!/bin/bash - - # here we will - # - clone releng-xci repo as the jobs are running against openstack gerrit - # and we need to clone releng-xci ourselves to $OPNFV_RELENG_DEV_PATH - # - run sources-branch-updater.sh from osa to update/pin the role versions - # at the time this job gets triggered against osa master in case if the - # deployment succeeds and we decide to bump version used by xci - # - copy generated role versions into $OPNFV_RELENG_DEV_PATH/xci/file - # - start the deployment by executing xci-deploy.sh as usual - # - # we might also need to pin versions of openstack services as well. - - echo "Hello World!" + - shell: | + #!/bin/bash + + # here we will + # - clone releng-xci repo as the jobs are running against openstack gerrit + # and we need to clone releng-xci ourselves to $OPNFV_RELENG_DEV_PATH + # - run sources-branch-updater.sh from osa to update/pin the role versions + # at the time this job gets triggered against osa master in case if the + # deployment succeeds and we decide to bump version used by xci + # - copy generated role versions into $OPNFV_RELENG_DEV_PATH/xci/file + # - start the deployment by executing xci-deploy.sh as usual + # + # we might also need to pin versions of openstack services as well. + + echo "Hello World!" - builder: name: 'osa-periodic-healthcheck-macro' builders: - - shell: | - #!/bin/bash + - shell: | + #!/bin/bash - echo "Hello World!" -#-------------------------------- + echo "Hello World!" +# ------------------------------- # scm macro -#-------------------------------- +# ------------------------------- - scm: name: git-scm-osa scm: - - git: - url: https://review.openstack.org/p/openstack/openstack-ansible.git - branches: - - master - timeout: 15 + - git: + url: https://review.openstack.org/p/openstack/openstack-ansible.git + branches: + - master + timeout: 15 diff --git a/jjb/xci/xci-daily-jobs.yml b/jjb/xci/xci-daily-jobs.yml index 7d95429da..a95374933 100644 --- a/jjb/xci/xci-daily-jobs.yml +++ b/jjb/xci/xci-daily-jobs.yml @@ -1,85 +1,88 @@ -#-------------------------------- +--- +# ------------------------------- # These jobs run on a daily basis and deploy OpenStack # using the pinned versions of opnfv/releng, openstack/bifrost # and openstack/openstack-ansible. Due to this, there is no # version/branch is set/passed to jobs and instead the versions # are checked out based on what is configured. -#-------------------------------- +# ------------------------------- - project: project: 'releng-xci' name: 'xci-daily' -#-------------------------------- -# Branch Anchors -#-------------------------------- + # ------------------------------- + # Branch Anchors + # ------------------------------- master: &master - stream: master - opnfv-releng-version: master - gs-pathname: '' -#-------------------------------- -# Scenarios -#-------------------------------- + stream: master + opnfv-releng-version: master + gs-pathname: '' + # ------------------------------- + # Scenarios + # ------------------------------- scenario: - - 'os-nosdn-nofeature-ha': - auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'ha' - - 'os-nosdn-nofeature-noha': - auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'noha' - - 'os-odl-sfc-ha': - auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'ha' - - 'os-odl-sfc-noha': - auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'noha' -#-------------------------------- -# XCI PODs -#-------------------------------- + - 'os-nosdn-nofeature-ha': + auto-trigger-name: 'daily-trigger-disabled' + xci-flavor: 'ha' + - 'os-nosdn-nofeature-noha': + auto-trigger-name: 'daily-trigger-disabled' + xci-flavor: 'noha' + - 'os-odl-sfc-ha': + auto-trigger-name: 'daily-trigger-disabled' + xci-flavor: 'ha' + - 'os-odl-sfc-noha': + auto-trigger-name: 'daily-trigger-disabled' + xci-flavor: 'noha' + # ------------------------------- + # XCI PODs + # ------------------------------- pod: - - virtual: - <<: *master -#-------------------------------- -# Supported Distros -#-------------------------------- + - virtual: + <<: *master + # ------------------------------- + # Supported Distros + # ------------------------------- distro: - - 'xenial': - disabled: false - slave-label: xci-xenial-virtual - dib-os-release: 'xenial' - dib-os-element: 'ubuntu-minimal' - 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,iptabls' - 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' - -#-------------------------------- -# Phases -#-------------------------------- + - '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,iptabls' + # 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' + + # ------------------------------- + # Phases + # ------------------------------- phase: - - 'deploy' - - 'functest' -#-------------------------------- -# jobs -#-------------------------------- + - 'deploy' + - 'functest' + # ------------------------------- + # jobs + # ------------------------------- jobs: - - 'xci-{scenario}-{pod}-{distro}-daily-{stream}' - - 'xci-{phase}-{pod}-{distro}-daily-{stream}' + - 'xci-{scenario}-{pod}-{distro}-daily-{stream}' + - 'xci-{phase}-{pod}-{distro}-daily-{stream}' -#-------------------------------- +# ------------------------------- # job templates -#-------------------------------- +# ------------------------------- - job-template: name: 'xci-{scenario}-{pod}-{distro}-daily-{stream}' @@ -88,67 +91,69 @@ concurrent: false properties: - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '^xci-os.*' - - '^xci-deploy.*' - - '^xci-functest.*' - - '^bifrost-.*periodic.*' - - '^osa-.*periodic.*' - block-level: 'NODE' - - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '^xci-os.*' + - '^xci-deploy.*' + - '^xci-functest.*' + - '^bifrost-.*periodic.*' + - '^osa-.*periodic.*' + block-level: 'NODE' + - logrotate-default parameters: - - string: - name: DEPLOY_SCENARIO - default: '{scenario}' - - string: - name: XCI_FLAVOR - default: '{xci-flavor}' - - label: - name: SLAVE_LABEL - default: '{slave-label}' - - string: - name: XCI_LOOP - default: 'daily' + - string: + name: DEPLOY_SCENARIO + default: '{scenario}' + - string: + name: XCI_FLAVOR + default: '{xci-flavor}' + - label: + name: SLAVE_LABEL + default: '{slave-label}' + - string: + name: XCI_LOOP + default: 'daily' triggers: - - '{auto-trigger-name}' + - '{auto-trigger-name}' wrappers: - - fix-workspace-permissions + - fix-workspace-permissions builders: - - description-setter: - description: "Built on $NODE_NAME" - - trigger-builds: - - project: 'xci-deploy-{pod}-{distro}-daily-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - XCI_FLAVOR=$XCI_FLAVOR - XCI_LOOP=$XCI_LOOP - same-node: true - block: true - - trigger-builds: - - project: 'xci-functest-{pod}-{distro}-daily-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - XCI_FLAVOR=$XCI_FLAVOR - XCI_LOOP=$XCI_LOOP - same-node: true - block: true - block-thresholds: - build-step-failure-threshold: 'never' - failure-threshold: 'never' - unstable-threshold: 'FAILURE' + - description-setter: + description: "Built on $NODE_NAME" + - trigger-builds: + - project: 'xci-deploy-{pod}-{distro}-daily-{stream}' + current-parameters: false + predefined-parameters: | + DEPLOY_SCENARIO=$DEPLOY_SCENARIO + XCI_FLAVOR=$XCI_FLAVOR + XCI_LOOP=$XCI_LOOP + same-node: true + block: true + - trigger-builds: + - project: 'xci-functest-{pod}-{distro}-daily-{stream}' + current-parameters: false + predefined-parameters: | + DEPLOY_SCENARIO=$DEPLOY_SCENARIO + XCI_FLAVOR=$XCI_FLAVOR + XCI_LOOP=$XCI_LOOP + same-node: true + block: true + block-thresholds: + build-step-failure-threshold: 'never' + failure-threshold: 'never' + unstable-threshold: 'FAILURE' publishers: - - email: - recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com - - email-jenkins-admins-on-failure + # 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 - job-template: name: 'xci-{phase}-{pod}-{distro}-daily-{stream}' @@ -158,93 +163,94 @@ concurrent: false properties: - - build-blocker: - use-build-blocker: true - blocking-jobs: - - '^xci-deploy.*' - - '^xci-functest.*' - - '^bifrost-.*periodic.*' - - '^osa-.*periodic.*' - block-level: 'NODE' - - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - '^xci-deploy.*' + - '^xci-functest.*' + - '^bifrost-.*periodic.*' + - '^osa-.*periodic.*' + block-level: 'NODE' + - logrotate-default wrappers: - - fix-workspace-permissions + - fix-workspace-permissions scm: - - git-scm + - git-scm parameters: - - project-parameter: - project: '{project}' - branch: '{opnfv-releng-version}' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - - string: - name: XCI_FLAVOR - default: 'ha' - - 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}' - - string: - name: XCI_LOOP - default: 'daily' - - string: - name: INSTALLER_TYPE - default: 'osa' - - string: - name: FUNCTEST_MODE - default: 'daily' - - string: - name: FUNCTEST_SUITE_NAME - default: 'daily' - description: "Daily suite name to run" + - project-parameter: + project: '{project}' + branch: '{opnfv-releng-version}' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-ha' + - string: + name: XCI_FLAVOR + default: 'ha' + - 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}' + - string: + name: XCI_LOOP + default: 'daily' + - string: + name: INSTALLER_TYPE + default: 'osa' + - string: + name: FUNCTEST_MODE + default: 'daily' + - string: + name: FUNCTEST_SUITE_NAME + default: 'daily' + description: "Daily suite name to run" + builders: - - description-setter: - description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - 'xci-{phase}-builder' + - description-setter: + description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" + - 'xci-{phase}-builder' -#--------------------------- +# -------------------------- # builder macros -#--------------------------- +# -------------------------- - builder: name: xci-deploy-builder builders: - - shell: - !include-raw: ./xci-deploy.sh + - shell: + !include-raw: ./xci-deploy.sh - builder: name: xci-functest-builder builders: - - shell: | - #!/bin/bash + - shell: | + #!/bin/bash - echo "Hello World!" + echo "Hello World!" # this will be enabled once the xci is prepared -#- builder: +# - builder: # name: xci-functest-builder # builders: # - shell: diff --git a/jjb/xci/xci-verify-jobs.yml b/jjb/xci/xci-verify-jobs.yml index 17519aca7..3b399a7eb 100644 --- a/jjb/xci/xci-verify-jobs.yml +++ b/jjb/xci/xci-verify-jobs.yml @@ -1,55 +1,56 @@ +--- - project: name: 'opnfv-xci-verify' project: releng-xci -#-------------------------------- -# branches -#-------------------------------- + # ------------------------------- + # branches + # ------------------------------- stream: - - master: - branch: '{stream}' -#-------------------------------- -# distros -#-------------------------------- + - master: + branch: '{stream}' + # ------------------------------- + # distros + # ------------------------------- distro: - - ubuntu: - disabled: false - successful: false - failed: false - unstable: false - notbuilt: false - - centos: - disabled: false - successful: true - failed: true - unstable: true - notbuilt: true - - opensuse: - disabled: false - successful: false - failed: false - unstable: false - notbuilt: false -#-------------------------------- -# type -#-------------------------------- + - ubuntu: + disabled: false + successful: false + failed: false + unstable: false + notbuilt: false + - centos: + disabled: false + successful: true + failed: true + unstable: true + notbuilt: true + - opensuse: + disabled: false + successful: false + failed: false + unstable: false + notbuilt: false + # ------------------------------- + # type + # ------------------------------- type: - - virtual -#-------------------------------- -# patch verification phases -#-------------------------------- + - virtual + # ------------------------------- + # patch verification phases + # ------------------------------- phase: - - 'deploy' - - 'healthcheck' -#-------------------------------- -# jobs -#-------------------------------- + - 'deploy' + - 'healthcheck' + # ------------------------------- + # jobs + # ------------------------------- jobs: - - 'xci-verify-{distro}-{type}-{stream}' - - 'xci-verify-{distro}-{phase}-{type}-{stream}' -#-------------------------------- + - 'xci-verify-{distro}-{type}-{stream}' + - 'xci-verify-{distro}-{phase}-{type}-{stream}' +# ------------------------------- # job templates -#-------------------------------- +# ------------------------------- - job-template: name: 'xci-verify-{distro}-{type}-{stream}' @@ -60,127 +61,127 @@ concurrent: true properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'xci-verify-{distro}-.*' - - 'bifrost-verify-{distro}-.*' - - 'bifrost-periodic-{distro}-.*' - - 'osa-verify-{distro}-.*' - - 'osa-periodic-{distro}-.*' - block-level: 'NODE' - - throttle: - max-per-node: 2 - max-total: 10 - categories: - - xci-verify-virtual - option: category + - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'xci-verify-{distro}-.*' + - 'bifrost-verify-{distro}-.*' + - 'bifrost-periodic-{distro}-.*' + - 'osa-verify-{distro}-.*' + - 'osa-periodic-{distro}-.*' + block-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 + - ssh-agent-wrapper + - build-timeout: + timeout: 240 + - fix-workspace-permissions scm: - - git-scm-gerrit + - 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: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - file-paths: - - compare-type: ANT - pattern: 'bifrost/**' - - compare-type: ANT - pattern: 'xci/**' - forbidden-file-paths: - - compare-type: ANT - pattern: 'prototypes/**' - - compare-type: ANT - pattern: 'upstream/**' - - compare-type: ANT - pattern: '**/README.rst' - - compare-type: ANT - pattern: 'docs/**' - readable-message: true - skip-vote: - successful: '{obj:successful}' - failed: '{obj:failed}' - unstable: '{obj:unstable}' - notbuilt: '{obj:notbuilt}' + - 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: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + disable-strict-forbidden-file-verification: 'true' + file-paths: + - compare-type: ANT + pattern: 'bifrost/**' + - compare-type: ANT + pattern: 'xci/**' + forbidden-file-paths: + - compare-type: ANT + pattern: 'prototypes/**' + - compare-type: ANT + pattern: 'upstream/**' + - compare-type: ANT + pattern: '**/README.rst' + - compare-type: ANT + pattern: 'docs/**' + readable-message: true + skip-vote: + successful: '{obj:successful}' + failed: '{obj:failed}' + unstable: '{obj:unstable}' + notbuilt: '{obj:notbuilt}' parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - label: - name: SLAVE_LABEL - default: 'xci-virtual' - - 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' + - project-parameter: + project: '{project}' + branch: '{branch}' + - label: + name: SLAVE_LABEL + default: 'xci-virtual' + - 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: - - description-setter: - description: "Built on $NODE_NAME" - - multijob: - name: deploy - condition: SUCCESSFUL - projects: - - name: 'xci-verify-{distro}-deploy-{type}-{stream}' - current-parameters: true - predefined-parameters: | - DISTRO={distro} - DEPLOY_SCENARIO=os-nosdn-nofeature-noha - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: 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} - DEPLOY_SCENARIO=os-nosdn-nofeature-noha - CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - FUNCTEST_MODE=tier - FUNCTEST_TIER=healthcheck - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: deploy + condition: SUCCESSFUL + projects: + - name: 'xci-verify-{distro}-deploy-{type}-{stream}' + current-parameters: true + predefined-parameters: | + DISTRO={distro} + DEPLOY_SCENARIO=os-nosdn-nofeature-noha + CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE + node-parameters: true + kill-phase-on: 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} + DEPLOY_SCENARIO=os-nosdn-nofeature-noha + CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES + FUNCTEST_MODE=tier + FUNCTEST_TIER=healthcheck + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE + node-parameters: true + kill-phase-on: NEVER + abort-all-job: true - job-template: name: 'xci-verify-{distro}-{phase}-{type}-{stream}' @@ -190,142 +191,142 @@ concurrent: true properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'bifrost-verify-.*' - - 'bifrost-periodic-.*' - - 'osa-verify-.*' - - 'osa-periodic-.*' - block-level: 'NODE' + - logrotate-default + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'bifrost-verify-.*' + - 'bifrost-periodic-.*' + - 'osa-verify-.*' + - 'osa-periodic-.*' + block-level: 'NODE' parameters: - - string: - name: PROJECT - default: 'releng-xci' - - string: - name: DISTRO - default: 'ubuntu' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' - - 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: INSTALLER_TYPE - default: 'osa' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' + - string: + name: PROJECT + default: 'releng-xci' + - string: + name: DISTRO + default: 'ubuntu' + - string: + name: DEPLOY_SCENARIO + default: 'os-nosdn-nofeature-noha' + - 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: INSTALLER_TYPE + default: 'osa' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' wrappers: - - ssh-agent-wrapper - - build-timeout: - timeout: 240 - - fix-workspace-permissions + - ssh-agent-wrapper + - build-timeout: + timeout: 240 + - fix-workspace-permissions scm: - - git-scm-gerrit + - git-scm-gerrit builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'xci-verify-{phase}-macro' + - description-setter: + description: "Built on $NODE_NAME" + - 'xci-verify-{phase}-macro' -#-------------------------------- +# ------------------------------- # builder macros -#-------------------------------- +# ------------------------------- - builder: name: 'xci-verify-deploy-macro' builders: - - shell: | - #!/bin/bash - - # skip the deployment if the patch doesn't impact the deployment - if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then - echo "Skipping the deployment!" - 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<<EOF - #!/bin/bash - export DISTRO=$DISTRO - export DEPLOY_SCENARIO=$DEPLOY_SCENARIO - export FUNCTEST_MODE=$FUNCTEST_MODE - export FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - export XCI_FLAVOR=$XCI_FLAVOR - export CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES - export OPNFV_RELENG_DEV_PATH=/home/devuser/releng-xci/ - export INSTALLER_TYPE=$INSTALLER_TYPE - export GIT_BASE=$GIT_BASE - export JENKINS_HOME=$JENKINS_HOME - - cd xci - ./xci-deploy.sh - EOF - chmod a+x xci_test.sh - - ./xci/scripts/vm/start-new-vm.sh $DISTRO - - shell: | - #!/bin/bash - - # skip the deployment if the patch doesn't impact the deployment - if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then - echo "Skipping the deployment!" - exit 0 - fi - - ssh ${DISTRO}_xci_vm "cd releng-xci && ./xci_test.sh" + - shell: | + #!/bin/bash + + # skip the deployment if the patch doesn't impact the deployment + if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then + echo "Skipping the deployment!" + 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<<EOF + #!/bin/bash + export DISTRO=$DISTRO + export DEPLOY_SCENARIO=$DEPLOY_SCENARIO + export FUNCTEST_MODE=$FUNCTEST_MODE + export FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME + export XCI_FLAVOR=$XCI_FLAVOR + export CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES + export OPNFV_RELENG_DEV_PATH=/home/devuser/releng-xci/ + export INSTALLER_TYPE=$INSTALLER_TYPE + export GIT_BASE=$GIT_BASE + export JENKINS_HOME=$JENKINS_HOME + + cd xci + ./xci-deploy.sh + EOF + chmod a+x xci_test.sh + + ./xci/scripts/vm/start-new-vm.sh $DISTRO + - shell: | + #!/bin/bash + + # skip the deployment if the patch doesn't impact the deployment + if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then + echo "Skipping the deployment!" + exit 0 + fi + + ssh ${DISTRO}_xci_vm "cd releng-xci && ./xci_test.sh" - builder: name: 'xci-verify-healthcheck-macro' builders: - - shell: | - #!/bin/bash + - shell: | + #!/bin/bash - # skip the healthcheck if the patch doesn't impact the deployment - if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then - echo "Skipping the healthcheck!" - exit 0 - fi + # skip the healthcheck if the patch doesn't impact the deployment + if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then + echo "Skipping the healthcheck!" + exit 0 + fi - echo "Hello World!" - - shell: | - #!/bin/bash + echo "Hello World!" + - shell: | + #!/bin/bash - # skip the deployment if the patch doesn't impact the deployment - if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then - echo "Skipping the deployment!" - exit 0 - fi + # skip the deployment if the patch doesn't impact the deployment + if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then + echo "Skipping the deployment!" + exit 0 + fi - sudo virsh destroy ${DISTRO}_xci_vm - sudo virsh undefine ${DISTRO}_xci_vm + sudo virsh destroy ${DISTRO}_xci_vm + sudo virsh undefine ${DISTRO}_xci_vm # this will be enabled once the xci is prepared -#- builder: +# - builder: # name: 'xci-verify-healthcheck-macro' # builders: # - shell: diff --git a/jjb/yardstick/yardstick-daily.sh b/jjb/yardstick/yardstick-daily.sh index 8841e09db..4b8c5d240 100755 --- a/jjb/yardstick/yardstick-daily.sh +++ b/jjb/yardstick/yardstick-daily.sh @@ -6,6 +6,8 @@ rc_file_vol="" cacert_file_vol="" sshkey="" +rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/etc/yardstick/openstack.creds" + if [[ ${INSTALLER_TYPE} == 'apex' ]]; then instack_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]+") @@ -31,14 +33,10 @@ if [[ ${INSTALLER_TYPE} == 'joid' ]]; then elif [[ ${INSTALLER_TYPE} == 'compass' ]]; then cacert_file_vol="-v ${HOME}/os_cacert:/etc/yardstick/os_cacert" echo "export OS_CACERT=/etc/yardstick/os_cacert" >> ${HOME}/opnfv-openrc.sh - rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/etc/yardstick/openstack.creds" elif [[ ${INSTALLER_TYPE} == 'fuel' ]]; then cacert_file_vol="-v ${HOME}/os_cacert:/etc/ssl/certs/mcp_os_cacert" sshkey="-v ${SSH_KEY}:/root/.ssh/mcp.rsa" -else - rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/etc/yardstick/openstack.creds" fi - # Set iptables rule to allow forwarding return traffic for container if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FORWARD | awk 'NR==3' | grep RETURN 2> ${redirect}; then sudo iptables -I FORWARD -j RETURN |