diff options
Diffstat (limited to 'jjb')
-rwxr-xr-x | jjb/apex/apex-deploy.sh | 10 | ||||
-rw-r--r-- | jjb/apex/apex-snapshot-create.sh | 12 | ||||
-rwxr-xr-x | jjb/apex/apex-upload-artifact.sh | 11 | ||||
-rw-r--r-- | jjb/apex/apex-verify-jobs.yaml | 22 | ||||
-rw-r--r-- | jjb/apex/apex.yaml | 79 | ||||
-rw-r--r-- | jjb/apex/apex.yaml.j2 | 39 | ||||
-rw-r--r-- | jjb/apex/scenarios.yaml.hidden | 4 | ||||
-rw-r--r-- | jjb/armband/armband-ci-jobs.yaml | 3 | ||||
-rw-r--r-- | jjb/auto/auto.yaml | 5 | ||||
-rw-r--r-- | jjb/compass4nfv/compass-ci-jobs.yaml | 12 | ||||
-rw-r--r-- | jjb/doctor/doctor.yaml | 4 | ||||
-rwxr-xr-x | jjb/dovetail/dovetail-run.sh | 39 | ||||
-rwxr-xr-x | jjb/functest/functest-alpine.sh | 46 | ||||
-rw-r--r-- | jjb/functest/functest-daily-jobs.yaml | 29 | ||||
-rw-r--r-- | jjb/functest/functest-docker.yaml | 21 | ||||
-rw-r--r-- | jjb/releng/compass4nfv-docker.yaml | 1 | ||||
-rw-r--r-- | jjb/releng/opnfv-docker.yaml | 30 | ||||
-rw-r--r-- | jjb/releng/opnfv-repo-archiver.sh | 2 | ||||
-rw-r--r-- | jjb/releng/releng-ci-jobs.yaml | 4 | ||||
-rw-r--r-- | jjb/xci/xci-verify-jobs.yaml | 2 | ||||
-rw-r--r-- | jjb/yardstick/yardstick-daily-jobs.yaml | 2 |
21 files changed, 262 insertions, 115 deletions
diff --git a/jjb/apex/apex-deploy.sh b/jjb/apex/apex-deploy.sh index dfaf2a8b5..f5c6ab108 100755 --- a/jjb/apex/apex-deploy.sh +++ b/jjb/apex/apex-deploy.sh @@ -156,16 +156,6 @@ fi # start deployment sudo ${DEPLOY_CMD} -d ${DEPLOY_FILE} -n ${NETWORK_FILE} --debug -if [[ "$PROMOTE" == 'True' ]]; then - echo "CSIT job: setting host route for floating ip routing" - # csit route to allow docker container to reach floating ips - UNDERCLOUD=$(sudo virsh domifaddr undercloud | grep -Eo "[0-9\.]+{3}[0-9]+") - if sudo route | grep 192.168.37.128 > /dev/null; then - sudo route del -net 192.168.37.128 netmask 255.255.255.128 - fi - sudo route add -net 192.168.37.128 netmask 255.255.255.128 gw ${UNDERCLOUD} -fi - echo echo "--------------------------------------------------------" echo "Done!" diff --git a/jjb/apex/apex-snapshot-create.sh b/jjb/apex/apex-snapshot-create.sh index 7e38d56b4..b73931470 100644 --- a/jjb/apex/apex-snapshot-create.sh +++ b/jjb/apex/apex-snapshot-create.sh @@ -91,10 +91,16 @@ echo "Snapshot saved as apex-${SNAP_TYPE}-snap-${DATE}.tar.gz" # update opnfv properties file if [ "$SNAP_TYPE" == 'csit' ]; then - curl -O -L http://$GS_URL/snapshot.properties - sed -i '/^OPNFV_SNAP_URL=/{h;s#=.*#='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#};${x;/^$/{s##OPNFV_SNAP_URL='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#;H};x}' snapshot.properties snap_sha=$(sha512sum apex-csit-snap-${DATE}.tar.gz | cut -d' ' -f1) - sed -i '/^OPNFV_SNAP_SHA512SUM=/{h;s/=.*/='${snap_sha}'/};${x;/^$/{s//OPNFV_SNAP_SHA512SUM='${snap_sha}'/;H};x}' snapshot.properties + if curl --fail -O -L http://$GS_URL/snapshot.properties; then + sed -i '/^OPNFV_SNAP_URL=/{h;s#=.*#='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#};${x;/^$/{s##OPNFV_SNAP_URL='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#;H};x}' snapshot.properties + sed -i '/^OPNFV_SNAP_SHA512SUM=/{h;s/=.*/='${snap_sha}'/};${x;/^$/{s//OPNFV_SNAP_SHA512SUM='${snap_sha}'/;H};x}' snapshot.properties + else + cat << EOF > snapshot.properties +OPNFV_SNAP_URL=${GS_URL}/apex-csit-snap-${DATE}.tar.gz +OPNFV_SNAP_SHA512SUM=${snap_sha} +EOF + fi echo "OPNFV_SNAP_URL=$GS_URL/apex-csit-snap-${DATE}.tar.gz" echo "OPNFV_SNAP_SHA512SUM=$(sha512sum apex-csit-snap-${DATE}.tar.gz | cut -d' ' -f1)" echo "Updated properties file: " diff --git a/jjb/apex/apex-upload-artifact.sh b/jjb/apex/apex-upload-artifact.sh index 8743368fb..5c777a824 100755 --- a/jjb/apex/apex-upload-artifact.sh +++ b/jjb/apex/apex-upload-artifact.sh @@ -24,7 +24,9 @@ importkey () { git clone https://gerrit.opnfv.org/gerrit/releng $WORKSPACE/releng/ &> /dev/null #this is where we import the siging key if [ -f $WORKSPACE/releng/utils/gpg_import_key.sh ]; then - source $WORKSPACE/releng/utils/gpg_import_key.sh + if ! $WORKSPACE/releng/utils/gpg_import_key.sh; then + echo "WARNING: Failed to run gpg key import" + fi fi } @@ -75,13 +77,16 @@ uploadrpm () { uploadsnap () { # Uploads snapshot artifact and updated properties file echo "Uploading snapshot artifacts" + # snapshot dir is the same node in the create job workspace + # only 1 promotion job can run at a time on a slave + snapshot_dir="${WORKSPACE}/../apex-create-snapshot" if [ -z "$SNAP_TYPE" ]; then echo "ERROR: SNAP_TYPE not provided...exiting" exit 1 fi - gsutil cp $WORKSPACE/apex-${SNAP_TYPE}-snap-`date +%Y-%m-%d`.tar.gz gs://$GS_URL/ > gsutil.iso.log + gsutil cp ${snapshot_dir}/apex-${SNAP_TYPE}-snap-`date +%Y-%m-%d`.tar.gz gs://$GS_URL/ > gsutil.iso.log if [ "$SNAP_TYPE" == 'csit' ]; then - gsutil cp $WORKSPACE/snapshot.properties gs://$GS_URL/snapshot.properties > gsutil.latest.log + gsutil cp ${snapshot_dir}/snapshot.properties gs://$GS_URL/snapshot.properties > gsutil.latest.log fi echo "Upload complete for Snapshot" } diff --git a/jjb/apex/apex-verify-jobs.yaml b/jjb/apex/apex-verify-jobs.yaml index 8140d9ef5..0837a76e4 100644 --- a/jjb/apex/apex-verify-jobs.yaml +++ b/jjb/apex/apex-verify-jobs.yaml @@ -10,12 +10,12 @@ - master: &master branch: '{stream}' gs-pathname: '' - verify-scenario: 'os-odl-nofeature-ha' + verify-scenario: 'os-nosdn-nofeature-ha' disabled: false - fraser: &fraser branch: 'stable/{stream}' gs-pathname: '/{stream}' - verify-scenario: 'os-odl-nofeature-ha' + verify-scenario: 'os-nosdn-nofeature-ha' disabled: false - danube: &danube branch: 'stable/{stream}' @@ -243,8 +243,8 @@ GERRIT_REFSPEC=$GERRIT_REFSPEC GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - FUNCTEST_SUITE_NAME=healthcheck - FUNCTEST_MODE=tier + FUNCTEST_SUITE_NAME=tempest_smoke_serial + FUNCTEST_MODE=testcase node-parameters: false kill-phase-on: FAILURE abort-all-job: true @@ -343,6 +343,14 @@ kill-phase-on: FAILURE abort-all-job: true git-revision: true + - shell: | + if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then + echo 'REPO=opnfv' > functest_repo + else + echo 'REPO=ollivier' > functest_repo + fi + - inject: + properties-file: functest_repo - multijob: name: functest-smoke condition: ALWAYS @@ -351,14 +359,16 @@ current-parameters: false predefined-parameters: | DEPLOY_SCENARIO=$DEPLOY_SCENARIO - FUNCTEST_MODE=tier - FUNCTEST_TIER=healthcheck + FUNCTEST_SUITE_NAME=tempest_smoke_serial + FUNCTEST_MODE=testcase + REPO=$REPO 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 + enable-condition: "def m = '$DEPLOY_SCENARIO' != k8s-nosdn-nofeature-noha" abort-all-job: true git-revision: false - multijob: diff --git a/jjb/apex/apex.yaml b/jjb/apex/apex.yaml index bb5b53d6d..65e558820 100644 --- a/jjb/apex/apex.yaml +++ b/jjb/apex/apex.yaml @@ -8,7 +8,7 @@ - 'apex-virtual-{stream}' - 'apex-deploy-{platform}-{stream}' - 'apex-daily-{stream}' - - 'apex-csit-promote-daily-{stream}-{os_version}' + - 'apex-csit-promote-daily-{stream}-os-{os_version}' - 'apex-fdio-promote-daily-{stream}' - 'apex-{scenario}-baremetal-{scenario_stream}' - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' @@ -144,10 +144,18 @@ <<: *danube - 'os-ovn-nofeature-noha': <<: *danube + - 'os-nosdn-nofeature-noha': + <<: *master + - 'os-nosdn-nofeature-ha': + <<: *master - 'os-odl-nofeature-noha': <<: *master - 'os-odl-nofeature-ha': <<: *master + - 'os-nosdn-queens-noha': + <<: *master + - 'os-nosdn-queens-ha': + <<: *master - 'os-odl-queens-noha': <<: *master - 'os-odl-queens-ha': @@ -420,6 +428,14 @@ kill-phase-on: FAILURE abort-all-job: true git-revision: true + - shell: | + if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then + echo 'REPO=opnfv' > functest_repo + else + echo 'REPO=ollivier' > functest_repo + fi + - inject: + properties-file: functest_repo - multijob: name: functest-smoke condition: ALWAYS @@ -430,6 +446,7 @@ DEPLOY_SCENARIO=$DEPLOY_SCENARIO FUNCTEST_MODE=$FUNCTEST_MODE FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME + REPO=$REPO GERRIT_BRANCH=$GERRIT_BRANCH GERRIT_REFSPEC=$GERRIT_REFSPEC GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER @@ -623,8 +640,7 @@ predefined-parameters: DEPLOY_SCENARIO=$DEPLOY_SCENARIO kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/ - && $BUILD_NUMBER % 2 == 1" + enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" abort-all-job: false git-revision: false - multijob: @@ -637,8 +653,7 @@ predefined-parameters: DEPLOY_SCENARIO=$DEPLOY_SCENARIO kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/ - && $BUILD_NUMBER % 2 == 0" + enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" abort-all-job: false git-revision: false - multijob: @@ -737,13 +752,11 @@ - job-template: name: 'apex-create-snapshot' - # Job template for clean - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - disabled: false + parameters: + - '{project}-defaults' + builders: - shell: !include-raw-escape: ./apex-snapshot-create.sh @@ -752,13 +765,11 @@ - job-template: name: 'apex-upload-snapshot' - # Job template for clean - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - disabled: false + parameters: + - '{project}-defaults' + builders: - inject: properties-content: ARTIFACT_TYPE=snapshot @@ -766,7 +777,7 @@ # CSIT promote - job-template: - name: 'apex-csit-promote-daily-{stream}-{os_version}' + name: 'apex-csit-promote-daily-{stream}-os-{os_version}' # Job template for promoting CSIT Snapshots # @@ -832,7 +843,7 @@ condition: SUCCESSFUL projects: - name: 'apex-create-snapshot' - current-parameters: false + current-parameters: true predefined-parameters: | SNAP_TYPE=csit node-parameters: true @@ -844,7 +855,7 @@ condition: SUCCESSFUL projects: - name: 'apex-upload-snapshot' - current-parameters: false + current-parameters: true predefined-parameters: | SNAP_TYPE=csit node-parameters: true @@ -1493,6 +1504,22 @@ name: Baremetal Deploy and Test Phase condition: SUCCESSFUL projects: + - name: 'apex-os-nosdn-nofeature-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + - name: 'apex-os-nosdn-nofeature-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false - name: 'apex-os-odl-nofeature-noha-baremetal-master' node-parameters: false current-parameters: false @@ -1509,6 +1536,22 @@ kill-phase-on: NEVER abort-all-job: true git-revision: false + - name: 'apex-os-nosdn-queens-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + - name: 'apex-os-nosdn-queens-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false - name: 'apex-os-odl-queens-noha-baremetal-master' node-parameters: false current-parameters: false diff --git a/jjb/apex/apex.yaml.j2 b/jjb/apex/apex.yaml.j2 index 3397f1ed2..f1208d27e 100644 --- a/jjb/apex/apex.yaml.j2 +++ b/jjb/apex/apex.yaml.j2 @@ -8,7 +8,7 @@ - 'apex-virtual-{stream}' - 'apex-deploy-{platform}-{stream}' - 'apex-daily-{stream}' - - 'apex-csit-promote-daily-{stream}-{os_version}' + - 'apex-csit-promote-daily-{stream}-os-{os_version}' - 'apex-fdio-promote-daily-{stream}' - 'apex-{scenario}-baremetal-{scenario_stream}' - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' @@ -300,6 +300,14 @@ kill-phase-on: FAILURE abort-all-job: true git-revision: true + - shell: | + if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then + echo 'REPO=opnfv' > functest_repo + else + echo 'REPO=ollivier' > functest_repo + fi + - inject: + properties-file: functest_repo - multijob: name: functest-smoke condition: ALWAYS @@ -310,6 +318,7 @@ DEPLOY_SCENARIO=$DEPLOY_SCENARIO FUNCTEST_MODE=$FUNCTEST_MODE FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME + REPO=$REPO GERRIT_BRANCH=$GERRIT_BRANCH GERRIT_REFSPEC=$GERRIT_REFSPEC GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER @@ -503,8 +512,7 @@ predefined-parameters: DEPLOY_SCENARIO=$DEPLOY_SCENARIO kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/ - && $BUILD_NUMBER % 2 == 1" + enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" abort-all-job: false git-revision: false - multijob: @@ -517,8 +525,7 @@ predefined-parameters: DEPLOY_SCENARIO=$DEPLOY_SCENARIO kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/ - && $BUILD_NUMBER % 2 == 0" + enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" abort-all-job: false git-revision: false - multijob: @@ -617,13 +624,11 @@ - job-template: name: 'apex-create-snapshot' - # Job template for clean - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - disabled: false + parameters: + - '{project}-defaults' + builders: - shell: !include-raw-escape: ./apex-snapshot-create.sh @@ -632,13 +637,11 @@ - job-template: name: 'apex-upload-snapshot' - # Job template for clean - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - disabled: false + parameters: + - '{project}-defaults' + builders: - inject: properties-content: ARTIFACT_TYPE=snapshot @@ -646,7 +649,7 @@ # CSIT promote - job-template: - name: 'apex-csit-promote-daily-{stream}-{os_version}' + name: 'apex-csit-promote-daily-{stream}-os-{os_version}' # Job template for promoting CSIT Snapshots # @@ -712,7 +715,7 @@ condition: SUCCESSFUL projects: - name: 'apex-create-snapshot' - current-parameters: false + current-parameters: true predefined-parameters: | SNAP_TYPE=csit node-parameters: true @@ -724,7 +727,7 @@ condition: SUCCESSFUL projects: - name: 'apex-upload-snapshot' - current-parameters: false + current-parameters: true predefined-parameters: | SNAP_TYPE=csit node-parameters: true diff --git a/jjb/apex/scenarios.yaml.hidden b/jjb/apex/scenarios.yaml.hidden index 8375f6163..71a6c3dbe 100644 --- a/jjb/apex/scenarios.yaml.hidden +++ b/jjb/apex/scenarios.yaml.hidden @@ -1,6 +1,10 @@ master: + - 'os-nosdn-nofeature-noha' + - 'os-nosdn-nofeature-ha' - 'os-odl-nofeature-noha' - 'os-odl-nofeature-ha' + - 'os-nosdn-queens-noha' + - 'os-nosdn-queens-ha' - 'os-odl-queens-noha' - 'os-odl-queens-ha' fraser: diff --git a/jjb/armband/armband-ci-jobs.yaml b/jjb/armband/armband-ci-jobs.yaml index fe2bbcc63..140f84b03 100644 --- a/jjb/armband/armband-ci-jobs.yaml +++ b/jjb/armband/armband-ci-jobs.yaml @@ -252,6 +252,9 @@ - string: name: DEPLOY_SCENARIO default: 'os-odl-nofeature-ha' + - string: + name: PROJECT + default: '{project}' scm: - git-scm diff --git a/jjb/auto/auto.yaml b/jjb/auto/auto.yaml index a454fc4e8..0cfe88f93 100644 --- a/jjb/auto/auto.yaml +++ b/jjb/auto/auto.yaml @@ -101,8 +101,9 @@ - trigger-builds: - project: '{installer}-deploy-{pod}-daily-{stream}' current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO='os-nosdn-nofeature-ha' + predefined-parameters: | + DEPLOY_SCENARIO=os-nosdn-nofeature-ha + PROJECT=armband same-node: true block: true diff --git a/jjb/compass4nfv/compass-ci-jobs.yaml b/jjb/compass4nfv/compass-ci-jobs.yaml index 8eeaabfaa..298173e85 100644 --- a/jjb/compass4nfv/compass-ci-jobs.yaml +++ b/jjb/compass4nfv/compass-ci-jobs.yaml @@ -222,12 +222,6 @@ - condition-kind: regex-match regex: os-(nosdn|odl_l3)-nofeature-ha label: '{scenario}' - - condition-kind: day-of-week - day-selector: select-days - days: - MON: true - TUES: true - use-build-time: true steps: - trigger-builds: - project: 'dovetail-compass-{pod}-default-{stream}' @@ -247,12 +241,6 @@ - condition-kind: regex-match regex: os-(nosdn|odl_l3)-nofeature-ha label: '{scenario}' - - condition-kind: day-of-week - day-selector: select-days - days: - THURS: true - FRI: true - use-build-time: true steps: - trigger-builds: - project: 'dovetail-compass-{pod}-proposed_tests-{stream}' diff --git a/jjb/doctor/doctor.yaml b/jjb/doctor/doctor.yaml index 3985356c1..1c12563a8 100644 --- a/jjb/doctor/doctor.yaml +++ b/jjb/doctor/doctor.yaml @@ -124,7 +124,9 @@ - 'doctor-parameter': docker-tag: '{docker-tag}' scenario: '{scenario}' - - 'doctor-functest-parameter' + - 'doctor-functest-parameter': + gs-pathname: '{gs-pathname}' + inspector: '{inspector}' scm: - git-scm-gerrit builders: diff --git a/jjb/dovetail/dovetail-run.sh b/jjb/dovetail/dovetail-run.sh index df681dd59..2a9c73c2f 100755 --- a/jjb/dovetail/dovetail-run.sh +++ b/jjb/dovetail/dovetail-run.sh @@ -60,6 +60,10 @@ releng_repo=${WORKSPACE}/releng [ -d ${releng_repo} ] && sudo rm -rf ${releng_repo} git clone https://gerrit.opnfv.org/gerrit/releng ${releng_repo} >/dev/null +pharos_repo=${WORKSPACE}/pharos +[ -d ${pharos_repo} ] && sudo rm -rf ${pharos_repo} +git clone https://git.opnfv.org/pharos ${pharos_repo} >/dev/null + if [[ ${INSTALLER_TYPE} != 'joid' ]]; then echo "SUT branch is $SUT_BRANCH" echo "dovetail branch is $BRANCH" @@ -93,10 +97,14 @@ if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == "fuel" ]]; then fi cat $OPENRC +# These packages are used for parsing yaml files and decrypting ipmi user and password. +sudo pip install shyaml +sudo yum install -y rubygems || sudo apt-get install -y ruby +sudo gem install hiera-eyaml + if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == "compass" ]]; then compass_repo=${WORKSPACE}/compass4nfv/ git clone https://github.com/opnfv/compass4nfv.git ${compass_repo} >/dev/null - sudo pip install shyaml scenario_file=${compass_repo}/deploy/conf/hardware_environment/$NODE_NAME/os-nosdn-nofeature-ha.yml ipmiIp=$(cat ${scenario_file} | shyaml get-value hosts.0.ipmiIp) ipmiPass=$(cat ${scenario_file} | shyaml get-value hosts.0.ipmiPass) @@ -120,11 +128,26 @@ if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_T fuel_ctl_ssh_options="${ssh_options} -i ${SSH_KEY}" ssh_user="ubuntu" fuel_ctl_ip=$(ssh 2>/dev/null ${fuel_ctl_ssh_options} "${ssh_user}@${INSTALLER_IP}" \ - "sudo salt --out yaml 'ctl*' pillar.get _param:openstack_control_address | \ - awk '{print \$2; exit}'") &> /dev/null + "sudo salt 'cfg*' pillar.get _param:openstack_control_address --out text| \ + cut -f2 -d' '") + ipmi_index=$(ssh 2>/dev/null ${fuel_ctl_ssh_options} "${ssh_user}@${INSTALLER_IP}" \ + "sudo salt 'ctl*' network.ip_addrs cidr=${fuel_ctl_ip} --out text | grep ${fuel_ctl_ip} | cut -c 5") + organization="$(cut -d'-' -f1 <<< "${NODE_NAME}")" + pod_name="$(cut -d'-' -f2 <<< "${NODE_NAME}")" + pdf_file=${pharos_repo}/labs/${organization}/${pod_name}.yaml + ipmiIp=$(cat ${pdf_file} | shyaml get-value nodes.$[ipmi_index-1].remote_management.address) + ipmiIp="$(cut -d'/' -f1 <<< "${ipmiIp}")" + ipmiPass=$(cat ${pdf_file} | shyaml get-value nodes.$[ipmi_index-1].remote_management.pass) + ipmiUser=$(cat ${pdf_file} | shyaml get-value nodes.$[ipmi_index-1].remote_management.user) + [[ $ipmiUser == ENC* ]] && ipmiUser=$(eyaml decrypt -s ${ipmiUser//[[:blank:]]/}) + [[ $ipmiPass == ENC* ]] && ipmiPass=$(eyaml decrypt -s ${ipmiPass//[[:blank:]]/}) + cat << EOF >${DOVETAIL_CONFIG}/pod.yaml nodes: -- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /home/opnfv/userconfig/pre_config/id_rsa, role: controller, user: ${ssh_user}} +- {ip: ${INSTALLER_IP}, name: node0, key_filename: /home/opnfv/userconfig/pre_config/id_rsa, + role: Jumpserver, user: ${ssh_user}} +- {ip: ${fuel_ctl_ip}, name: node1, key_filename: /home/opnfv/userconfig/pre_config/id_rsa, + role: controller, user: ${ssh_user}, ipmi_ip: ${ipmiIp}, ipmi_user: ${ipmiUser}, ipmi_password: ${ipmiPass}} EOF fi @@ -169,10 +192,14 @@ fi if [ -f ${DOVETAIL_CONFIG}/pod.yaml ]; then sudo chmod 666 ${DOVETAIL_CONFIG}/pod.yaml echo "Adapt process info for $INSTALLER_TYPE ..." - attack_process='rabbitmq' + if [ "$INSTALLER_TYPE" == "apex" ]; then + attack_process='rabbitmq_server' + else + attack_process='rabbitmq' + fi cat << EOF >> ${DOVETAIL_CONFIG}/pod.yaml process_info: -- {testcase_name: dovetail.ha.tc010, attack_process: ${attack_process}} +- {testcase_name: dovetail.ha.rabbitmq, attack_process: ${attack_process}} EOF echo "file ${DOVETAIL_CONFIG}/pod.yaml:" diff --git a/jjb/functest/functest-alpine.sh b/jjb/functest/functest-alpine.sh index 1df9a554c..cf63bb5a4 100755 --- a/jjb/functest/functest-alpine.sh +++ b/jjb/functest/functest-alpine.sh @@ -4,15 +4,16 @@ set -e set +u set +o pipefail +REPO=${REPO:-opnfv} CI_LOOP=${CI_LOOP:-daily} TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results ENERGY_RECORDER_API_URL=http://energy.opnfv.fr/resources check_os_deployment() { - FUNCTEST_IMAGE=opnfv/functest-healthcheck:${DOCKER_TAG} + FUNCTEST_IMAGE=${REPO}/functest-healthcheck:${DOCKER_TAG} echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..." docker pull ${FUNCTEST_IMAGE}>/dev/null - cmd="docker run --rm --privileged=true ${volumes} ${FUNCTEST_IMAGE} check_deployment" + cmd="docker run --rm ${volumes} ${FUNCTEST_IMAGE} check_deployment" echo "Checking deployment, CMD: ${cmd}" eval ${cmd} ret_value=$? @@ -34,10 +35,10 @@ run_tiers() { echo 0 > ${ret_val_file} for tier in ${tiers[@]}; do - FUNCTEST_IMAGE=opnfv/functest-${tier}:${DOCKER_TAG} + FUNCTEST_IMAGE=${REPO}/functest-${tier}:${DOCKER_TAG} echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..." docker pull ${FUNCTEST_IMAGE}>/dev/null - cmd="docker run --rm --privileged=true ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'" + cmd="docker run --rm ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'" echo "Running Functest tier '${tier}'. CMD: ${cmd}" eval ${cmd} ret_value=$? @@ -59,17 +60,17 @@ run_test() { # Determine which Functest image should be used for the test case case ${test_name} in connection_check|api_check|snaps_health_check) - FUNCTEST_IMAGE=opnfv/functest-healthcheck:${DOCKER_TAG} ;; - vping_ssh|vping_userdata|tempest_smoke_serial|rally_sanity|refstack_defcore|odl|odl_netvirt|snaps_smoke) - FUNCTEST_IMAGE=opnfv/functest-smoke:${DOCKER_TAG} ;; + FUNCTEST_IMAGE=${REPO}/functest-healthcheck:${DOCKER_TAG} ;; + vping_ssh|vping_userdata|cinder_test|tempest_smoke_serial|rally_sanity|refstack_defcore|patrole|odl|snaps_smoke|neutron_trunk) + FUNCTEST_IMAGE=${REPO}/functest-smoke:${DOCKER_TAG} ;; tempest_full_parallel|rally_full) - FUNCTEST_IMAGE=opnfv/functest-components:${DOCKER_TAG} ;; - cloudify_ims|orchestra_openims|orchestra_clearwaterims|vyos_vrouter) - FUNCTEST_IMAGE=opnfv/functest-vnf:${DOCKER_TAG} ;; - promise|doctor-notification|bgpvpn|functest-odl-sfc|domino-multinode|barometercollectd|fds) - FUNCTEST_IMAGE=opnfv/functest-features:${DOCKER_TAG} ;; + FUNCTEST_IMAGE=${REPO}/functest-components:${DOCKER_TAG} ;; + cloudify_ims|vyos_vrouter|juju_epc) + FUNCTEST_IMAGE=${REPO}/functest-vnf:${DOCKER_TAG} ;; + doctor-notification|bgpvpn|functest-odl-sfc|barometercollectd|fds) + FUNCTEST_IMAGE=${REPO}/functest-features:${DOCKER_TAG} ;; parser-basics) - FUNCTEST_IMAGE=opnfv/functest-parser:${DOCKER_TAG} ;; + FUNCTEST_IMAGE=${REPO}/functest-parser:${DOCKER_TAG} ;; *) echo "Unkown test case $test_name" exit 1 @@ -77,7 +78,7 @@ run_test() { esac echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..." docker pull ${FUNCTEST_IMAGE}>/dev/null - cmd="docker run --rm --privileged=true ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'" + cmd="docker run --rm ${envs} ${volumes} ${TESTCASE_OPTIONS} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'" echo "Running Functest test case '${test_name}'. CMD: ${cmd}" eval ${cmd} ret_value=$? @@ -108,11 +109,6 @@ fi rc_file_vol="-v ${rc_file}:${FUNCTEST_DIR}/conf/env_file" -# 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 -fi - echo "Functest: Start Docker and prepare environment" echo "Functest: Download images that will be used by test cases" @@ -173,9 +169,17 @@ elif [ ${FUNCTEST_MODE} == 'tier' ]; then run_tiers ${tiers} else if [ ${DEPLOY_TYPE} == 'baremetal' ] && [ "${HOST_ARCH}" != "aarch64" ]; then - tiers=(healthcheck smoke features vnf parser) + if [[ ${BRANCH} == "stable/fraser" ]]; then + tiers=(healthcheck smoke features vnf parser) + else + tiers=(healthcheck smoke features vnf) + fi else - tiers=(healthcheck smoke features parser) + if [[ ${BRANCH} == "stable/fraser" ]]; then + tiers=(healthcheck smoke features parser) + else + tiers=(healthcheck smoke features) + fi fi run_tiers ${tiers} fi diff --git a/jjb/functest/functest-daily-jobs.yaml b/jjb/functest/functest-daily-jobs.yaml index 4fc67e7f8..0300b99b2 100644 --- a/jjb/functest/functest-daily-jobs.yaml +++ b/jjb/functest/functest-daily-jobs.yaml @@ -237,7 +237,7 @@ - 'functest-{testsuite}-parameter' - string: name: DEPLOY_SCENARIO - default: 'os-odl_l2-nofeature-ha' + default: 'os-nosdn-nofeature-noha' - string: name: CLEAN_DOCKER_IMAGES default: 'false' @@ -281,25 +281,27 @@ - 'connection_check' - 'api_check' - 'snaps_health_check' - - 'vping_userdata' - 'vping_ssh' + - 'vping_userdata' + - 'cinder_test' - 'tempest_smoke_serial' - 'rally_sanity' + - 'refstack_defcore' + - 'patrole' - 'odl' - - 'odl_netvirt' - 'snaps_smoke' - - 'refstack_defcore' - - 'promise' - - 'doctor' + - 'neutron_trunk' + - 'doctor-notification' - 'bgpvpn' - - 'parser' - - 'security_scan' + - 'functest-odl-sfc' + - 'barometercollectd' + - 'fds' - 'tempest_full_parallel' - 'rally_full' - 'cloudify_ims' - - 'cloudify_vrouter' - - 'orchestra_openims' - - 'orchestra_clearwaterims' + - 'vyos_vrouter' + - 'juju_epc' + - 'parser' default: 'connection_check' - choice: name: FUNCTEST_TIER @@ -309,6 +311,7 @@ - 'features' - 'components' - 'vnf' + - 'parser' default: 'healthcheck' - string: name: TESTCASE_OPTIONS @@ -338,6 +341,10 @@ name: RC_FILE_PATH default: '' description: "Path to the OS credentials file if given" + - string: + name: REPO + default: "opnfv" + description: "Repository name for functest images" ######################## # trigger macros ######################## diff --git a/jjb/functest/functest-docker.yaml b/jjb/functest/functest-docker.yaml index 50c7c3816..74738f280 100644 --- a/jjb/functest/functest-docker.yaml +++ b/jjb/functest/functest-docker.yaml @@ -25,6 +25,7 @@ # yamllint disable rule:key-duplicates image: - 'core' + - 'tempest' - 'healthcheck' - 'features' - 'components' @@ -32,6 +33,12 @@ - 'smoke' - 'vnf' + exclude: + - stream: 'master' + image: 'parser' + - stream: 'fraser' + image: 'tempest' + # settings for jobs run in multijob phases build-job-settings: &build-job-settings current-parameters: false @@ -107,6 +114,20 @@ - name: 'functest-core-docker-manifest-{stream}' <<: *manifest-job-settings - multijob: + name: 'build functest-tempest images' + execution-type: PARALLEL + projects: + - name: 'functest-tempest-docker-build-amd64-{stream}' + <<: *build-job-settings + - name: 'functest-tempest-docker-build-arm64-{stream}' + <<: *build-job-settings + - multijob: + name: 'publish functest-tempest manifests' + execution-type: PARALLEL + projects: + - name: 'functest-tempest-docker-manifest-{stream}' + <<: *manifest-job-settings + - multijob: name: 'build all functest images' condition: SUCCESSFUL execution-type: PARALLEL diff --git a/jjb/releng/compass4nfv-docker.yaml b/jjb/releng/compass4nfv-docker.yaml index 7bfda552d..2a5453658 100644 --- a/jjb/releng/compass4nfv-docker.yaml +++ b/jjb/releng/compass4nfv-docker.yaml @@ -43,7 +43,6 @@ PUSH_IMAGE=$PUSH_IMAGE COMMIT_ID=$COMMIT_ID GERRIT_REFNAME=$GERRIT_REFNAME - DOCKERFILE=$DOCKERFILE kill-phase-on: FAILURE abort-all-jobs: false diff --git a/jjb/releng/opnfv-docker.yaml b/jjb/releng/opnfv-docker.yaml index b7d1ce66f..c73bae371 100644 --- a/jjb/releng/opnfv-docker.yaml +++ b/jjb/releng/opnfv-docker.yaml @@ -165,6 +165,36 @@ <<: *master <<: *other-receivers # projects with jobs for euphrates + - 'barometer-collectd': + project: 'barometer' + dockerdir: 'docker/barometer-collectd' + <<: *fraser + <<: *other-receivers + - 'barometer-grafana': + project: 'barometer' + dockerdir: 'docker/barometer-grafana' + <<: *fraser + <<: *other-receivers + - 'barometer-influxdb': + project: 'barometer' + dockerdir: 'docker/barometer-influxdb' + <<: *fraser + <<: *other-receivers + - 'barometer-kafka': + project: 'barometer' + dockerdir: 'docker/barometer-kafka' + <<: *fraser + <<: *other-receivers + - 'barometer-ves': + project: 'barometer' + dockerdir: 'docker/barometer-ves' + <<: *fraser + <<: *other-receivers + - 'barometer-snmp': + project: 'barometer' + dockerdir: 'docker/barometer-snmp' + <<: *fraser + <<: *other-receivers - 'bottlenecks': project: 'bottlenecks' <<: *euphrates diff --git a/jjb/releng/opnfv-repo-archiver.sh b/jjb/releng/opnfv-repo-archiver.sh index 6fa0aef50..b7ff3baa0 100644 --- a/jjb/releng/opnfv-repo-archiver.sh +++ b/jjb/releng/opnfv-repo-archiver.sh @@ -29,7 +29,7 @@ for PROJECT in "${PROJECT_LIST[@]}"; do git clone "https://gerrit.opnfv.org/gerrit/$PROJECT.git" $CLONE_PATH/$PROJECT else pushd "$CLONE_PATH/$PROJECT" &>/dev/null - git pull -f + git pull -f origin master popd &> /dev/null fi diff --git a/jjb/releng/releng-ci-jobs.yaml b/jjb/releng/releng-ci-jobs.yaml index f9a2bc232..790bd7eb4 100644 --- a/jjb/releng/releng-ci-jobs.yaml +++ b/jjb/releng/releng-ci-jobs.yaml @@ -11,5 +11,9 @@ jjb-version: '2.0.3' lftools-version: '<1.0.0' + rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-releng/38594/' + rtd-token: '291c6a0109493b4457e566d06141212452c65784' + jobs: - '{project-name}-ci-jobs' + - '{project-name}-rtd-jobs' diff --git a/jjb/xci/xci-verify-jobs.yaml b/jjb/xci/xci-verify-jobs.yaml index 2230cd56d..baff0c99e 100644 --- a/jjb/xci/xci-verify-jobs.yaml +++ b/jjb/xci/xci-verify-jobs.yaml @@ -20,7 +20,7 @@ unstable: false notbuilt: false - centos: - disabled: false + disabled: true successful: true failed: true unstable: true diff --git a/jjb/yardstick/yardstick-daily-jobs.yaml b/jjb/yardstick/yardstick-daily-jobs.yaml index 4df3f520d..c5a35086f 100644 --- a/jjb/yardstick/yardstick-daily-jobs.yaml +++ b/jjb/yardstick/yardstick-daily-jobs.yaml @@ -288,7 +288,7 @@ publishers: - email: - recipients: jean.gaoliang@huawei.com limingjiang@huawei.com ross.b.brattain@intel.com + recipients: jean.gaoliang@huawei.com limingjiang@huawei.com - email-jenkins-admins-on-failure ######################## |