@@ -233,14 +233,15 @@ wait_backup() {
233
233
echo -n .
234
234
let retry+=1
235
235
current_status=$( kubectl_bin get psmdb-backup $backup_name -o jsonpath=' {.status.state}' )
236
- if [[ $retry -ge 360 || ${current_status} == ' error' ]]; then
236
+ if [[ $retry -ge 600 || ${current_status} == ' error' ]]; then
237
237
kubectl_bin logs ${OPERATOR_NS: +-n $OPERATOR_NS } $( get_operator_pod) \
238
238
| grep -v ' level=info' \
239
239
| grep -v ' level=debug' \
240
240
| grep -v ' Getting tasks for pod' \
241
241
| grep -v ' Getting pods from source' \
242
- | tail -100
243
- echo " Backup object psmdb-backup/${backup_name} is in ${current_state} state."
242
+ | tail -200
243
+ kubectl_bin get psmdb-backup
244
+ echo " Backup object psmdb-backup/${backup_name} is in ${current_status} state."
244
245
echo something went wrong with operator or kubernetes cluster
245
246
exit 1
246
247
fi
@@ -379,35 +380,54 @@ wait_restore() {
379
380
local ok_if_ready=${6:- 0}
380
381
381
382
set +o xtrace
383
+ # We need to run wait till object is created, otherwise wait fails at once
384
+ echo -n " Waiting for the psmdb-restore/restore-$backup_name object to be created"
385
+ retry_object=0
386
+ until kubectl_bin get psmdb-restore restore-$backup_name > /dev/null 2>&1 ; do
387
+ echo -n .
388
+ let retry_object+=1
389
+ if [[ ${retry_object} -ge 60 ]]; then
390
+ echo " psmdb-restore/restore-$backup_name object was not created."
391
+ exit 1
392
+ fi
393
+ sleep 1
394
+ done
395
+ echo " OK"
396
+
397
+ echo -n " Waiting psmdb-restore/restore-${backup_name} to reach state \" ${target_state} \" "
382
398
retry=0
383
- echo -n " waiting psmdb-restore/restore-${backup_name} to reach ${target_state} state"
384
- local current_state=
385
- until [[ ${current_state} == ${target_state} ]]; do
386
- sleep 0.5
399
+ retry_count=$(( wait_time / 60 ))
400
+ until kubectl wait psmdb-restore restore-${backup_name} --for=jsonpath=' {.status.state}' =${target_state} --timeout=60s > /dev/null 2>&1 ; do
387
401
echo -n .
388
402
let retry+=1
389
403
current_state=$( kubectl_bin get psmdb-restore restore-$backup_name -o jsonpath=' {.status.state}' )
390
404
if [[ ${ok_if_ready} == 1 && ${current_state} == ' ready' ]]; then
391
405
echo " OK"
392
406
break
393
407
fi
394
- if [[ $retry -ge $wait_time || ${current_state} == ' error' ]]; then
395
- desc " operator logs:"
396
- kubectl_bin logs ${OPERATOR_NS: +-n $OPERATOR_NS } $( get_operator_pod) | tail -100
408
+ if [[ ${retry} -ge ${retry_count} || ${current_state} == ' error' ]]; then
409
+ kubectl_bin logs ${OPERATOR_NS: +-n $OPERATOR_NS } $( get_operator_pod) \
410
+ | grep -v ' level=info' \
411
+ | grep -v ' level=debug' \
412
+ | grep -v ' Getting tasks for pod' \
413
+ | grep -v ' Getting pods from source' \
414
+ | tail -100
397
415
398
416
if is_physical_backup ${backup_name} ; then
399
417
collect_physical_restore_logs
400
418
fi
401
419
402
420
kubectl_bin get psmdb-restore restore-${backup_name} -o yaml
403
- log " Restore object restore-${backup_name} is in ${current_state} state."
421
+
422
+ echo " Restore object restore-${backup_name} is in ${current_state} state."
423
+ echo something went wrong with operator or kubernetes cluster
404
424
exit 1
405
425
fi
406
426
done
407
427
echo " OK"
408
428
set_debug
409
429
410
- if [ $wait_cluster_consistency -eq 1 ]; then
430
+ if [[ $wait_cluster_consistency -eq 1 ] ]; then
411
431
wait_cluster_consistency " ${cluster_name} "
412
432
fi
413
433
}
@@ -1054,6 +1074,14 @@ delete_crd() {
1054
1074
kubectl_bin delete -f " ${src_dir} /deploy/$rbac_yaml " --ignore-not-found || true
1055
1075
}
1056
1076
1077
+ delete_backups () {
1078
+ desc ' Delete psmdb-backup'
1079
+ if [ $( kubectl_bin get psmdb-backup --no-headers | wc -l) != 0 ]; then
1080
+ kubectl_bin get psmdb-backup
1081
+ kubectl_bin delete psmdb-backup --all
1082
+ fi
1083
+ }
1084
+
1057
1085
destroy () {
1058
1086
local namespace=" $1 "
1059
1087
local ignore_logs=" ${2:- true} "
@@ -1074,6 +1102,8 @@ destroy() {
1074
1102
# TODO: maybe will be enabled later
1075
1103
# diff $test_dir/compare/operator.log $tmp_dir/operator.log
1076
1104
1105
+ delete_backups
1106
+
1077
1107
delete_crd
1078
1108
1079
1109
destroy_cert_manager || true
0 commit comments