From: mei mei Date: Mon, 26 Feb 2018 01:36:06 +0000 (+0000) Subject: Merge "Download 3 extra images and remove modification of fuel openrc file" X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=9146b1745bebcea1ae7c0ce76dc1cdf4f3f25bb2;hp=64516879524b66533be98adde2dac5098469a647;p=releng.git Merge "Download 3 extra images and remove modification of fuel openrc file" --- diff --git a/jjb/functest/functest-daily-jobs.yml b/jjb/functest/functest-daily-jobs.yml index 0f1ac351d..099d01a59 100644 --- a/jjb/functest/functest-daily-jobs.yml +++ b/jjb/functest/functest-daily-jobs.yml @@ -193,107 +193,22 @@ # <<: *master # ------------------------------- - functest-tier: - - 'healthcheck': - job-timeout: 20 - - 'smoke': - job-timeout: 180 - - 'components': - job-timeout: 240 - - 'vnf': - job-timeout: 240 - - features-suite: - - 'doctor-notification' - - 'promise' - - 'bgpvpn' - - 'functest-odl-sfc' - - 'domino-multinode' - - 'fds' - - 'barometercollectd' - - exclude: - - features-suite: 'promise' - stream: 'master' - - features-suite: 'domino-multinode' - stream: 'master' - - features-suite: 'fds' - stream: 'euphrates' - - build-job-settings: &build-job-settings - current-parameter: false - git-revision: true - node-parameters: false - kill-phase-on: FAILURE - abort-all-jobs: false - predefined-parameters: | - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_TIER=$FUNCTEST_TIER - - features-job-settings: &features-job-settings - current-parameter: false - git-revision: true - node-parameters: false - kill-phase-on: FAILURE - abort-all-jobs: false - predefined-parameters: | - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME + testsuite: + - 'suite': + job-timeout: 60 + - 'daily': + job-timeout: 300 + - 'arm-daily': + job-timeout: 300 jobs: - - 'functest-{installer}-{pod}-suite-{stream}' - - 'functest-{installer}-{pod}-daily-{stream}' - - 'functest-{installer}-{pod}-daily-{functest-tier}-{stream}' - - 'functest-{installer}-{pod}-daily-features-{features-suite}-{stream}' + - 'functest-{installer}-{pod}-{testsuite}-{stream}' + ################################ # job template ################################ - job-template: - - name: 'functest-{installer}-{pod}-daily-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - functest-parameter: - gs-pathname: '{gs-pathname}' - - builders: - - multijob: - name: 'Run functest tests' - execution-type: SEQUENTIAL - projects: - - name: 'functest-{installer}-{pod}-daily-healthcheck-{stream}' - <<: *build-job-settings - - name: 'functest-{installer}-{pod}-daily-smoke-{stream}' - <<: *build-job-settings - - name: 'functest-{installer}-{pod}-daily-vnf-{stream}' - <<: *build-job-settings - - name: 'functest-{installer}-{pod}-daily-features-doctor-notification-{stream}' - <<: *features-job-settings - - name: 'functest-{installer}-{pod}-daily-features-bgpvpn-{stream}' - <<: *features-job-settings - - name: 'functest-{installer}-{pod}-daily-features-functest-odl-sfc-{stream}' - <<: *features-job-settings - - name: 'functest-{installer}-{pod}-daily-features-barometercollectd-{stream}' - <<: *features-job-settings - - name: 'functest-{installer}-{pod}-daily-features-fds-{stream}' - <<: *features-job-settings - - name: 'functest-{installer}-{pod}-daily-features-promise-{stream}' - <<: *features-job-settings - - name: 'functest-{installer}-{pod}-daily-features-domino-multinode-{stream}' - <<: *features-job-settings - -- job-template: &functest-installer-tier-job - - name: 'functest-{installer}-{pod}-daily-{functest-tier}-{stream}' + name: 'functest-{installer}-{pod}-{testsuite}-{stream}' concurrent: true @@ -317,15 +232,10 @@ branch: '{branch}' - '{installer}-defaults' - '{slave-label}-defaults' - - string: - name: FUNCTEST_MODE - default: 'tier' - - string: - name: FUNCTEST_TIER - default: '{functest-tier}' + - 'functest-{testsuite}-parameter' - string: name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' + default: 'os-odl_l2-nofeature-ha' - string: name: CLEAN_DOCKER_IMAGES default: 'false' @@ -339,93 +249,7 @@ builders: - description-setter: description: "Built on $NODE_NAME" - - 'functest-daily-builder' - - publishers: - - 'functest-recipients' - - 'fuel-recipients' - -- job-template: - - name: 'functest-{installer}-{pod}-suite-{stream}' - <<: *functest-installer-tier-job - - wrappers: - - build-name: - name: '$BUILD_NUMBER Suite: $FUNCTEST_MODE Scenario: $DEPLOY_SCENARIO' - - timeout: - timeout: '60' - abort: true - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - 'functest-suite-parameter' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' - - string: - name: CLEAN_DOCKER_IMAGES - default: 'false' - description: 'Remove downloaded docker images (opnfv/functest*:*)' - - functest-parameter: - gs-pathname: '{gs-pathname}' - - builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'functest-suite-builder' - -- job-template: - - name: 'functest-{installer}-{pod}-daily-features-{features-suite}-{stream}' - concurrent: true - properties: - - logrotate-default - - throttle: - enabled: true - max-per-node: 1 - option: 'project' - wrappers: - - build-name: - name: '$BUILD_NUMBER Suite: $FUNCTEST_MODE Scenario: $DEPLOY_SCENARIO' - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{installer}-defaults' - - '{slave-label}-defaults' - - string: - name: FUNCTEST_MODE - default: 'testcase' - - string: - name: FUNCTEST_SUITE_NAME - default: '{features-suite}' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' - - string: - name: CLEAN_DOCKER_IMAGES - default: 'false' - description: 'Remove downloaded docker images (opnfv/functest*:*)' - - functest-parameter: - gs-pathname: '{gs-pathname}' - - scm: - - git-scm - - builders: - - description-setter: - description: "Built on $NODE_NAME" - - 'functest-daily-builder' - - publishers: - - 'functest-features-recipients' - - 'functest-recipients' - - 'fuel-recipients' + - 'functest-{testsuite}-builder' ######################## @@ -439,6 +263,14 @@ 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" + - parameter: name: functest-suite-parameter parameters: @@ -531,6 +363,14 @@ - 'functest-store-results' - 'functest-exit' +- builder: + name: functest-arm-daily-builder + builders: + - 'functest-cleanup' + - 'functest-arm-daily' + - 'functest-store-results' + - 'functest-exit' + - builder: name: functest-suite-builder builders: @@ -563,6 +403,17 @@ - ../../utils/fetch_k8_conf.sh - ./functest-k8.sh +# yamllint enable rule:indentation +- builder: + name: functest-arm-daily + builders: + # 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 @@ -581,30 +432,3 @@ builders: - shell: !include-raw: ./functest-exit.sh - - -- publisher: - name: 'functest-features-recipients' - publishers: - - email: - recipients: - -- publisher: - name: 'functest-recipients' - publishers: - - email: - recipients: > - jalausuch@suse.com morgan.richomme@orange.com - cedric.ollivier@orange.com feng.xiaowei@zte.com.cn - juha.kosonen@nokia.com wangwulin@huawei.com - delia.popescu@enea.com cristina.pauna@enea.com - valentin.boucher@kontron.com - - email-jenkins-admins-on-failure - -- publisher: - name: 'fuel-recipients' - publishers: - - email: - recipients: > - peter.barabas@ericsson.com mpolenchuck@mirantis.com - alexandru.avadanii@enea.com guillermo.herrero@enea.com diff --git a/jjb/global/releng-macros.yml b/jjb/global/releng-macros.yml index e58e1cfee..3433cee5f 100644 --- a/jjb/global/releng-macros.yml +++ b/jjb/global/releng-macros.yml @@ -965,6 +965,7 @@ - shell: !include-raw-escape: installer-report.sh - postbuildscript: + script-only-if-succeeded: false script-only-if-failed: true builders: - shell: | diff --git a/jjb/releng/opnfv-utils.yml b/jjb/releng/opnfv-utils.yml index 93b3615ef..fb3bab42b 100644 --- a/jjb/releng/opnfv-utils.yml +++ b/jjb/releng/opnfv-utils.yml @@ -89,7 +89,6 @@ name: 'check-status-of-slaves' disabled: false - concurrent: true parameters: @@ -97,17 +96,23 @@ name: SLAVE_NAME description: 'script lives on master node' default-slaves: - - master + - lf-build1 allowed-multiselect: false ignore-offline-nodes: true + - project-parameter: + project: releng + branch: master + + scm: + - git-scm triggers: - timed: '@midnight' builders: - shell: | - cd /opt/jenkins-ci/slavemonitor - bash slave-monitor-0.1.sh | sort + cd $WORKSPACE/utils/ + bash slave-monitor-0.1.sh - job-template: name: 'ansible-build-server' @@ -162,7 +167,7 @@ builders: - shell: | # run playbook - sudo ansible-playbook -C -D -i \ + sudo ansible-playbook -i \ $WORKSPACE/utils/build-server-ansible/inventory.ini \ $WORKSPACE/utils/build-server-ansible/main.yml diff --git a/jjb/xci/xci-start-new-vm.sh b/jjb/xci/xci-start-new-vm.sh index 2c6ec3fad..b38ebe510 100755 --- a/jjb/xci/xci-start-new-vm.sh +++ b/jjb/xci/xci-start-new-vm.sh @@ -35,6 +35,7 @@ cd $WORKSPACE # yourself. cat > xci_test.sh</dev/null #Yes I know about jq curlcommand() { @@ -25,74 +24,66 @@ curl -s "https://build.opnfv.org/ci/computer/api/json?tree=computer\[displayName | sed s,\",,g } -if [ -f podoutput-current ]; then - cp podoutput-current podoutput-lastiteration -fi - -curlcommand > podoutput-current +curlcommand > /tmp/podoutput-current -declare -A slavescurrent slaveslastiteration +declare -A slavescurrent while read -r name status ; do slavescurrent["$name"]="$status" -done < <(cat podoutput-current) - -while read -r name status ; do - slaveslastiteration["$name"]=$status -done < <(cat podoutput-lastiteration) - +done < <(cat /tmp/podoutput-current) + +#haste bin stopped allowing post :( +#files=(*online) +#for ((i=0; i<${#files[@]}; i+=9)); do +#./eplot -d -r [-1:74][-1:30] -m ${files[i]} ${files[i+1]} ${files[i+2]} ${files[i+3]} ${files[i+4]} ${files[i+5]} ${files[i+6]} ${files[i+7]} ${files[i+8]} ${files[i+9]} +#done | ./haste.bash +## main () { + for slavename in "${!slavescurrent[@]}"; do - #Slave is online. Mark it down. + + #Slave is online. Mark it down. if [ "${slavescurrent[$slavename]}" == "false" ]; then - if [ -f "$slavename"-offline ]; then - echo "removing offline status from $slavename slave was offline for $(cat "$slavename"-offline ) iterations" - rm "$slavename"-offline - fi - - if ! [ -f "$slavename"-online ]; then - echo "1" > "$slavename"-online - elif [ -f "$slavename"-online ]; then - #read and increment slavename - read -r -d $'\x04' var < "$slavename"-online - ((var++)) - echo -n "ONLINE $slavename " - echo "for $var iterations" - echo "$var" > "$slavename"-online - fi - fi + if ! [ -f /tmp/"$slavename"-online ]; then + echo "1" > /tmp/"$slavename"-online + echo "new online slave file created $slavename ${slavescurrent[$slavename]} up for 1 iterations" + fi - #went offline since last iteration. - if [ "${slavescurrent[$slavename]}" == "false" ] && [ "${slaveslastiteration[$slavename]}" == "true" ]; then - echo "JUST WENT OFFLINE $slavename " - if [ -f "$slavename"-online ]; then - echo "removing online status from $slavename. slave was online for $(cat "$slavename"-online ) iterations" - rm "$slavename"-online - fi + #read and increment slavename + var="$(cat /tmp/"$slavename"-online |tail -n 1)" + if [[ "$var" == "0" ]]; then + echo "slave $slavename ${slavescurrent[$slavename]} back up for $var iterations" + fi + ((var++)) + echo "$var" >> /tmp/"$slavename"-online + unset var + echo "$slavename up $(cat /tmp/$slavename-online | tail -n 10 | xargs)" fi - #slave is offline + #slave is offline remove all points if [ "${slavescurrent[$slavename]}" == "true" ]; then - if ! [ -f "$slavename"-offline ]; then - echo "1" > "$slavename"-offline - fi - - if [ -f "$slavename"-offline ]; then - #read and increment slavename - read -r -d $'\x04' var < "$slavename"-offline - ((var++)) - echo "$var" > "$slavename"-offline - if [ "$var" -gt "30" ]; then - echo "OFFLINE FOR $var ITERATIONS REMOVE $slavename " - else - echo "OFFLINE $slavename FOR $var ITERATIONS " - fi - fi + if ! [ -f /tmp/"$slavename"-online ]; then + echo "0" > /tmp/"$slavename"-online + echo "new offline slave file created $slavename ${slavescurrent[$slavename]} up for 0 iterations" + + fi + var="$(cat /tmp/"$slavename"-online |tail -n 1)" + + if [[ "$var" != "0" ]]; then + echo "slave $slavename ${slavescurrent[$slavename]} was up for $var iterations" + echo "slave $slavename ${slavescurrent[$slavename]} has gone offline, was $var iterations now reset to 0" + fi + + echo "0" >> /tmp/"$slavename"-online + echo "$slavename down $(cat /tmp/$slavename-online | tail -n 10 | xargs)" + unset var + fi + done } -main +main | sort | column -t