@@ -508,16 +508,50 @@ jobs:
508508 echo UPGRADE_RESULT=1 >> $GITHUB_ENV
509509 fi
510510
511- - name : upgrade result
511+ - name : check upgrade result
512512 if : ${{ always() }}
513513 id : upgrade_kb_cloud
514514 run : |
515- upgrade_result="[FAILED]"
516- if [[ "${UPGRADE_RESULT}" == "1" ]]; then
517- echo "upgrade kb cloud success"
518- upgrade_result="[PASSED]"
515+ upgrade_result="[PASSED]"
516+ if [[ "${UPGRADE_RESULT}" != "1" ]]; then
517+ echo "upgrade KB Cloud failed"
518+ upgrade_result="[FAILED]"
519+ echo upgrade-result="${upgrade_result}" >> $GITHUB_OUTPUT
520+ exit 1
521+ fi
522+
523+ sleep 10
524+ check_status=0
525+ for i in {1..200}; do
526+ if ! (kubectl get pods -n kb-cloud --no-headers | grep -v "Running" | grep -v "Completed") ; then
527+ echo "KB Cloud is ready"
528+ check_status=1
529+ break
530+ fi
531+ echo "Waiting for KB Cloud to be ready..."
532+ kubectl get pods -n kb-cloud
533+ echo ""
534+ sleep 5
535+ done
536+
537+ if [[ $check_status -eq 0 ]]; then
538+ echo "KB Cloud is not ready"
539+ upgrade_result="[FAILED]"
540+ echo upgrade-result="${upgrade_result}" >> $GITHUB_OUTPUT
541+
542+ # logs kb-cloud error pod
543+ kb_cloud_error_pods=$(kubectl get pods -n kb-cloud --no-headers | grep -v "Completed" | grep -v "Running" | awk '{print $1}')
544+ echo "kb-cloud error pod: $kb_cloud_error_pods"
545+ for kb_cloud_error_pod in $(echo "${kb_cloud_error_pods}"); do
546+ echo "==================== pod ${kb_cloud_error_pod} logs ===================="
547+ kubectl logs --tail 100 -n kb-cloud ${kb_cloud_error_pod}
548+ echo ""
549+ done
550+
551+ exit 1
552+ else
553+ echo upgrade-result="${upgrade_result}" >> $GITHUB_OUTPUT
519554 fi
520- echo upgrade-result="${upgrade_result}" >> $GITHUB_OUTPUT
521555
522556 send-message :
523557 needs : [ get-cloud-branch, installer-test, upgrade-test ]
0 commit comments