139
139
}
140
140
# ###################################
141
141
print_info (){
142
- # 解决异常退出-6的问题,CI中的偶现问题,无法复现
143
- if [[ $1 -ne 0 ]] && [[ $1 -ne 250 ]]; then
142
+ if [ $1 -eq 250 ]; then
143
+ # 解决异常退出-6的问题,CI中的偶现问题,无法复现
144
+ echo -e " \033[1;31m"
145
+ echo -e " \033[1;31m The CI execution encountered an abnormal termination with error code exit -6. \033[0m"
146
+ echo -e " \033[1;31m This is an intermittent issue. \033[0m"
147
+ echo -e " \033[1;31m Please re-run the CI. \033[0m"
148
+ echo -e " \033[1;31m"
149
+ exit 2
150
+ fi
151
+ if [[ $1 -ne 0 ]]; then
144
152
EXCODE=2
145
153
if [ ! -f ${log_path} /$2 ]; then
146
154
echo -e " \033[31m run $2 CI FAIL \033"
@@ -151,7 +159,7 @@ if [[ $1 -ne 0 ]] && [[ $1 -ne 250 ]];then
151
159
fi
152
160
exit $EXCODE
153
161
else
154
- echo -e " \033[32m run $3 CI SUCCESS \033"
162
+ echo -e " \033[32m The $3 CI has completed \033"
155
163
fi
156
164
}
157
165
# ###################################
@@ -174,24 +182,25 @@ function track_case_status() {
174
182
cd ${log_path} || { echo " Failed to enter log_path: $log_path " ; return 1; }
175
183
176
184
total_count=$( ls -1 " $prefix " * 2> /dev/null | wc -l)
177
- run_fail_count=$( ls -1 " $prefix " * _FAIL 2> /dev/null | wc -l)
178
- loss_fail_count=$( grep ' check failed! ' result.log | awk -v prefix=" $prefix_var " ' {if ($2 ~ "^" prefix) print $2}' | wc -l)
185
+ run_fail_count=$( ls -1 " $prefix " * _FAIL* 2> /dev/null | wc -l)
186
+ loss_fail_count=$( grep ' check failed! ' result.log | awk -v prefix=" $prefix " ' {if ($2 ~ "^" prefix) print $2}' | wc -l)
179
187
180
- # return original path
181
188
echo -e " \033[31m ---- $case_name total tests : $total_count \033"
182
189
if [ $run_fail_count -eq 0 ] && [ $loss_fail_count -eq 0 ]; then
183
- echo -e " \033[32m ---- $case_name all cases Success \033"
190
+ echo -e " \033[32m ---- all cases Success \033"
184
191
else
185
192
if [[ $run_fail_count -ne 0 ]] ; then
186
193
echo -e " \033[31m ---- $case_name runtime failed test : $run_fail_count \033"
187
- ls -1 " $prefix " * _FAIL 2> /dev/null
194
+ ls -1 " $prefix " * _FAIL* 2> /dev/null | awk -v OFS= " \t " ' {print "\t" $0 "(failed)"} '
188
195
fi
189
196
if [[ $loss_fail_count -ne 0 ]] ; then
190
- echo -e " \033[31m ---- $case_name loss verification failed test : $loss_fail_count \033"
191
- grep ' check failed! ' result.log | awk -v prefix=" $prefix_var " ' { if ($2 ~ "^" prefix) print $2 }'
197
+ echo -e " \033[31m ---- $case_name verification failed test : $loss_fail_count \033"
198
+ grep ' check failed! ' result.log | awk -v prefix=" $prefix " ' BEGIN {OFS="\t"} { if ($2 ~ "^" prefix) print "\t" $2 "(failed)" }'
192
199
fi
200
+ return 2
193
201
fi
194
202
cd " $original_path " || { echo " Failed to return to original path: $original_path " ; return 1; }
203
+ return 0
195
204
}
196
205
# ###################################
197
206
get_diff_TO_case # 获取待执行case列表
@@ -238,6 +247,7 @@ if [[ ${#case_list[*]} -ne 0 ]];then
238
247
echo -e " \033[31m ---- end run case \033"
239
248
240
249
track_case_status $FUNCNAME " "
250
+ EXCODE=$?
241
251
else
242
252
echo -e " \033[32m Changed Not CI case, Skips \033"
243
253
EXCODE=0
0 commit comments