X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fdoctor%2Fdoctor.yaml;h=c66624c14ac185fe8402ae1aeefdfe6412f55781;hb=b7871b1916fc8941c39950a9fb05308432a3a065;hp=1c12563a8ecfd859d2121ef36959192e208ec90e;hpb=a02842499696af89a363b2954589708f17f59901;p=releng.git diff --git a/jjb/doctor/doctor.yaml b/jjb/doctor/doctor.yaml index 1c12563a8..c66624c14 100644 --- a/jjb/doctor/doctor.yaml +++ b/jjb/doctor/doctor.yaml @@ -3,28 +3,24 @@ name: doctor project: '{name}' + project-name: '{name}' + project-pattern: '{project}' stream: - master: branch: '{stream}' gs-pathname: '' - docker-tag: 'latest' disabled: false - - fraser: &fraser + - hunter: branch: 'stable/{stream}' gs-pathname: '/{stream}' - docker-tag: 'stable' disabled: false - # feature projects' tests are not triggered by functest - # doctor verify Pods need to deploy with these scenario installer: - 'apex': - scenario: 'os-nosdn-kvm-ha' + scenario: 'os-nosdn-nofeature-noha' - 'fuel': - scenario: 'os-nosdn-ovs-ha' - - 'daisy': - scenario: 'os-nosdn-ovs_dpdk-noha' + scenario: 'os-nosdn-nofeature-noha' arch: - 'x86_64' @@ -37,15 +33,15 @@ exclude: - installer: 'apex' arch: 'aarch64' - - installer: 'daisy' - arch: 'aarch64' jobs: - - 'doctor-verify-{inspector}-{stream}' - - 'doctor-verify-{installer}-{inspector}-{arch}-{stream}' + - 'doctor-verify-{stream}' + - 'doctor-verify-fault_management-{installer}-{inspector}-{arch}-{stream}' + - 'doctor-verify-maintenance-{installer}-{inspector}-{arch}-{stream}' + - 'doctor-verify-all-{installer}-{inspector}-{arch}-{stream}' - job-template: - name: 'doctor-verify-{inspector}-{stream}' + name: 'doctor-verify-{stream}' disabled: '{obj:disabled}' project-type: 'multijob' parameters: @@ -63,15 +59,15 @@ builders: - shell: | - #!/bin/bash - # we do nothing here as the main stuff will be done - # in phase jobs - echo "Triggering phase jobs!" + #!/bin/bash + # we do nothing here as the main stuff will be done + # in phase jobs + echo "Triggering phase jobs!" - multijob: - name: 'doctor-verify' + name: 'doctor-verify-sample' execution-type: PARALLEL projects: - - name: 'doctor-verify-apex-{inspector}-x86_64-{stream}' + - name: 'doctor-verify-all-apex-sample-x86_64-{stream}' predefined-parameters: | PROJECT=$PROJECT GERRIT_BRANCH=$GERRIT_BRANCH @@ -80,7 +76,7 @@ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE kill-phase-on: FAILURE git-revision: true - - name: 'doctor-verify-fuel-{inspector}-x86_64-{stream}' + - name: 'doctor-verify-fault_management-fuel-sample-x86_64-{stream}' predefined-parameters: | PROJECT=$PROJECT GERRIT_BRANCH=$GERRIT_BRANCH @@ -89,15 +85,24 @@ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE kill-phase-on: FAILURE git-revision: true - - name: 'doctor-verify-fuel-{inspector}-aarch64-{stream}' + - multijob: + name: 'doctor-verify-fenix' + execution-type: PARALLEL + projects: + - name: 'doctor-verify-maintenance-apex-sample-x86_64-{stream}' predefined-parameters: | + PROJECT=$PROJECT GERRIT_BRANCH=$GERRIT_BRANCH GERRIT_REFSPEC=$GERRIT_REFSPEC GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE kill-phase-on: FAILURE git-revision: true - - name: 'doctor-verify-daisy-{inspector}-x86_64-{stream}' + - multijob: + name: 'doctor-verify-congress' + execution-type: PARALLEL + projects: + - name: 'doctor-verify-fault_management-apex-congress-x86_64-{stream}' predefined-parameters: | PROJECT=$PROJECT GERRIT_BRANCH=$GERRIT_BRANCH @@ -108,7 +113,7 @@ git-revision: true - job-template: - name: 'doctor-verify-{installer}-{inspector}-{arch}-{stream}' + name: 'doctor-verify-fault_management-{installer}-{inspector}-{arch}-{stream}' disabled: '{obj:disabled}' node: 'doctor-{installer}-{arch}' wrappers: @@ -122,11 +127,62 @@ - '{installer}-defaults' - 'doctor-slave-parameter' - 'doctor-parameter': - docker-tag: '{docker-tag}' + inspector: '{inspector}' scenario: '{scenario}' - - 'doctor-functest-parameter': - gs-pathname: '{gs-pathname}' + test_case: 'fault_management' + admin_tool_type: 'sample' + scm: + - git-scm-gerrit + builders: + - 'doctor-verify-installer-inspector-builders-macro' + publishers: + - 'doctor-verify-publishers-macro' + +- job-template: + name: 'doctor-verify-maintenance-{installer}-{inspector}-{arch}-{stream}' + disabled: '{obj:disabled}' + node: 'doctor-{installer}-{arch}' + wrappers: + - ssh-agent-wrapper + - build-timeout: + timeout: 40 + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - 'doctor-slave-parameter' + - 'doctor-parameter': + inspector: '{inspector}' + scenario: '{scenario}' + test_case: 'maintenance' + admin_tool_type: 'fenix' + scm: + - git-scm-gerrit + builders: + - 'doctor-verify-installer-inspector-builders-macro' + publishers: + - 'doctor-verify-publishers-macro' + +- job-template: + name: 'doctor-verify-all-{installer}-{inspector}-{arch}-{stream}' + disabled: '{obj:disabled}' + node: 'doctor-{installer}-{arch}' + wrappers: + - ssh-agent-wrapper + - build-timeout: + timeout: 50 + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - '{installer}-defaults' + - 'doctor-slave-parameter' + - 'doctor-parameter': inspector: '{inspector}' + scenario: '{scenario}' + test_case: 'all' + admin_tool_type: 'sample' scm: - git-scm-gerrit builders: @@ -142,57 +198,23 @@ name: 'doctor-parameter' parameters: - string: - name: OS_CREDS - default: /home/jenkins/openstack.creds - description: 'OpenStack credentials' - - string: - name: DOCKER_TAG - default: '{docker-tag}' - description: 'Tag to pull docker image' + name: INSPECTOR_TYPE + default: '{inspector}' + description: 'inspector component' - string: - name: CLEAN_DOCKER_IMAGES - default: 'false' - description: 'Remove downloaded docker images (opnfv/functest:*)' + name: TEST_CASE + default: '{test_case}' + description: 'test case: all, fault_management or maintenance' - string: name: DEPLOY_SCENARIO default: '{scenario}' description: 'Scenario to deploy and test' - -- parameter: - name: 'doctor-functest-parameter' - parameters: - # functest-suite-parameter - - string: - name: FUNCTEST_MODE - default: 'testcase' - - string: - name: FUNCTEST_SUITE_NAME - default: 'doctor-notification' - - string: - name: TESTCASE_OPTIONS - # yamllint disable rule:line-length - default: '-e INSPECTOR_TYPE={inspector} -v $WORKSPACE:/home/opnfv/repos/doctor' - # yamllint enable rule:line-length - description: 'Addtional parameters specific to test case(s)' - # functest-parameter - - string: - name: GS_PATHNAME - default: '{gs-pathname}' - # yamllint disable rule:line-length - description: "Version directory where the opnfv documents will be stored in gs repository" - # yamllint enable rule:line-length - - 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: 'true' - description: "Show debug output information" + name: ADMIN_TOOL_TYPE + default: '{admin_tool_type}' + description: 'admin_tool_type: sample, fenix' + + # ------------------------------- # builder macros # ------------------------------- @@ -200,27 +222,24 @@ - builder: name: 'doctor-verify-installer-inspector-builders-macro' builders: - - 'clean-workspace-log' - # yamllint disable rule:line-length + # yamllint disable rule:indentation + - shell: !include-raw: + - ./doctor-env-presetup.sh + - ../../utils/fetch_os_creds.sh - shell: | - # NOTE: Create symbolic link, so that we can archive file outside - # of $WORKSPACE . - # NOTE: We are printing all logs under 'tests/' during test run, - # so this symbolic link should not be in 'tests/'. Otherwise, - # we'll have the same log twice in jenkins console log. - ln -sfn $HOME/opnfv/functest/results/{stream} functest_results - # NOTE: Get functest script in $WORKSPACE. This functest script is - # needed to perform VM image download in set-functest-env.sh - # from E release cycle. - mkdir -p functest/ci - wget https://git.opnfv.org/functest/plain/functest/ci/download_images.sh -O functest/ci/download_images.sh - - 'functest-suite-builder' - - shell: | - functest_log="$HOME/opnfv/functest/results/{stream}/$FUNCTEST_SUITE_NAME.log" - # NOTE: checking the test result, as the previous job could return - # 0 regardless the result of doctor test scenario. - grep -e 'doctor test successfully' $functest_log || exit 1 - # yamllint enable rule:line-length + #!/bin/bash + + # prepare the env for test + . $HOME/opnfv-openrc.sh + if [ -f $HOME/os_cacert ]; then + export OS_CACERT=$HOME/os_cacert + fi + . $HOME/opnfv-installer.sh + + # run tox to trigger the test + # As Jenkins user, it has no permission to send ICMP package + sudo -E tox -e py34 + # ------------------------------- # publisher macros @@ -230,10 +249,8 @@ publishers: - archive: artifacts: 'doctor_tests/*.log' - - archive: - artifacts: 'functest_results/$FUNCTEST_SUITE_NAME.log' - email-jenkins-admins-on-failure - + - workspace-cleanup ##################################### # trigger macros