X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Ffunctest%2Ffunctest-daily-jobs.yml;h=099d01a59926a457133048f12bf2e4b153cdde8e;hb=339d2569a5eb42487414d170f3823e868bc6c464;hp=f47120b4ddc872506291190bd8b147f6ceaadbd7;hpb=67a9ca8836478c7607e780fc1314fce59d8fd913;p=releng.git diff --git a/jjb/functest/functest-daily-jobs.yml b/jjb/functest/functest-daily-jobs.yml index f47120b4d..099d01a59 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,202 @@ project: functest -#-------------------------------- -# BRANCH ANCHORS -#-------------------------------- + # ------------------------------- + # BRANCH ANCHORS + # ------------------------------- master: &master - stream: master - branch: '{stream}' - gs-pathname: '' - docker-tag: 'latest' + stream: master + branch: '{stream}' + gs-pathname: '' 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}' + # ------------------------------- + # 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 -#-------------------------------- - - alpine-pod: - - ericsson-virtual-pod1bl01: - slave-label: '{alpine-pod}' - installer: fuel - <<: *master - - huawei-virtual5: - slave-label: '{alpine-pod}' - installer: compass - <<: *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 + - zte-pod9: + slave-label: '{pod}' + installer: daisy + <<: *master + # ------------------------------- + # PODs for verify jobs triggered by each patch upload + # - ool-virtual1: + # slave-label: '{pod}' + # installer: apex + # <<: *master + # ------------------------------- testsuite: - - 'suite': - job-timeout: 60 - - 'daily': - job-timeout: 240 - - 'arm-daily': - job-timeout: 240 + - 'suite': + job-timeout: 60 + - 'daily': + job-timeout: 300 + - 'arm-daily': + job-timeout: 300 jobs: - - 'functest-{installer}-{pod}-{testsuite}-{stream}' - - 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}' + - 'functest-{installer}-{pod}-{testsuite}-{stream}' ################################ # job template @@ -220,87 +213,44 @@ 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_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: 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' - -- job-template: - name: 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}' - - concurrent: true - - properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' + - description-setter: + description: "Built on $NODE_NAME" + - 'functest-{testsuite}-builder' - wrappers: - - 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}' - - scm: - - git-scm - - builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'functest-alpine-daily-builder' ######################## # parameter macros @@ -308,170 +258,177 @@ - parameter: name: functest-daily-parameter parameters: - - string: - name: FUNCTEST_SUITE_NAME - 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_SUITE_NAME - 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_SUITE_NAME - choices: - - 'connection_check' - - 'api_check' - - 'snaps_health_check' - - 'vping_userdata' - - 'vping_ssh' - - 'tempest_smoke_serial' - - 'rally_sanity' - - 'odl' - - 'odl_netvirt' - - 'onos' - - 'snaps_smoke' - - 'refstack_defcore' - - 'promise' - - 'doctor' - - 'bgpvpn' - - 'parser' - - 'security_scan' - - 'tempest_full_parallel' - - 'rally_full' - - 'cloudify_ims' - - 'cloudify_vrouter' - - 'orchestra_openims' - - 'orchestra_clearwaterims' - - 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' + - 'functest-arm-daily' + - 'functest-store-results' + - 'functest-exit' - builder: name: functest-suite-builder builders: - - 'functest-cleanup' - - 'set-functest-env' - - '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-cleanup' + - '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 + - conditional-step: + condition-kind: regex-match + regex: "os-.*" + label: '$DEPLOY_SCENARIO' + steps: + - shell: + !include-raw: + - ./functest-env-presetup.sh + - ../../utils/fetch_os_creds.sh + - ./functest-alpine.sh + - conditional-step: + condition-kind: regex-match + regex: "k8-.*" + label: '$DEPLOY_SCENARIO' + steps: + - shell: + !include-raw: + - ../../utils/fetch_k8_conf.sh + - ./functest-k8.sh +# yamllint enable rule:indentation - builder: name: functest-arm-daily builders: - - shell: - !include-raw: ./functest-loop.sh - -- builder: - name: functest-suite - builders: - - shell: - !include-raw: ./functest-suite.sh - -- builder: - name: set-functest-env - builders: - - shell: - !include-raw: - - ./functest-env-presetup.sh - - ../../utils/fetch_os_creds.sh - - ./set-functest-env.sh - -- 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 + - ./functest-alpine.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