Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/logs/demand-backup-if-unhealthy.log Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 + create_infra demand-backup-if-unhealthy-9516 + local ns=demand-backup-if-unhealthy-9516 + echo demand-backup-if-unhealthy-9516 + [[ 0 == 1 ]] + '[' -n psmdb-operator ']' + create_namespace psmdb-operator + local namespace=psmdb-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ awk '{print $1}' ++ grep validate-auth + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' ++ mktemp + desc 'cleaned up old namespaces psmdb-operator' + xargs kubectl delete ns + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.TlJjJTxGqg ++ mktemp + local LAST_OUT=/tmp/tmp.OA1WcUTYKO ++ mktemp + local LAST_ERR=/tmp/tmp.a6jgP81N3Z + local exit_status=0 + local timeout=4 + local LAST_ERR=/tmp/tmp.h79sEYeb0T + local exit_status=0 + local timeout=4 ++ seq 0 2 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + for i in $(seq 0 2) + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OA1WcUTYKO + cat /tmp/tmp.h79sEYeb0T + rm /tmp/tmp.OA1WcUTYKO /tmp/tmp.h79sEYeb0T + return 0 error: resource(s) were provided, but no name was specified + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.TlJjJTxGqg + cat /tmp/tmp.a6jgP81N3Z + rm /tmp/tmp.TlJjJTxGqg /tmp/tmp.a6jgP81N3Z + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.W213O2NnVz ++ mktemp + local LAST_ERR=/tmp/tmp.ILQJ30Hy7t + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.W213O2NnVz + cat /tmp/tmp.ILQJ30Hy7t + rm /tmp/tmp.W213O2NnVz /tmp/tmp.ILQJ30Hy7t + return 0 + desc 'create namespace psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- create namespace psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin create namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.ZWeIRIpqPR ++ mktemp + local LAST_ERR=/tmp/tmp.xJbrqwI2g6 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ZWeIRIpqPR namespace/psmdb-operator created + cat /tmp/tmp.xJbrqwI2g6 + rm /tmp/tmp.ZWeIRIpqPR /tmp/tmp.xJbrqwI2g6 + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.BsZlgR3tgz +++ mktemp ++ local LAST_ERR=/tmp/tmp.FUuANkTp57 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.BsZlgR3tgz ++ cat /tmp/tmp.FUuANkTp57 ++ rm /tmp/tmp.BsZlgR3tgz /tmp/tmp.FUuANkTp57 ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster13 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.WkdQkRhm0I ++ mktemp + local LAST_ERR=/tmp/tmp.tUsv2mismA + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster13 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.WkdQkRhm0I Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster13" modified. + cat /tmp/tmp.tUsv2mismA + rm /tmp/tmp.WkdQkRhm0I /tmp/tmp.tUsv2mismA + return 0 + deploy_operator + desc 'start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.oCknARwG2P ++ mktemp + local LAST_ERR=/tmp/tmp.E5YcLBwnaf + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.oCknARwG2P customresourcedefinition.apiextensions.k8s.io/perconaservermongodbbackups.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbrestores.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbs.psmdb.percona.com serverside-applied + cat /tmp/tmp.E5YcLBwnaf + rm /tmp/tmp.oCknARwG2P /tmp/tmp.E5YcLBwnaf + return 0 + '[' -n psmdb-operator ']' + apply_rbac cw-rbac + local operator_namespace=psmdb-operator + local rbac=cw-rbac + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.wbavxuGtN3 ++ mktemp + local LAST_ERR=/tmp/tmp.d40qOyZmYp + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -n psmdb-operator -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wbavxuGtN3 clusterrole.rbac.authorization.k8s.io/percona-server-mongodb-operator created serviceaccount/percona-server-mongodb-operator created clusterrolebinding.rbac.authorization.k8s.io/service-account-percona-server-mongodb-operator created + cat /tmp/tmp.d40qOyZmYp + rm /tmp/tmp.wbavxuGtN3 /tmp/tmp.d40qOyZmYp + return 0 + yq eval $'\n\t\t\t(.spec.template.spec.containers[].image = "docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187") |\n\t\t\t((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") |\n\t\t\t((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.dq1z7LIwcp ++ mktemp + local LAST_ERR=/tmp/tmp.wl2pRJcMgD + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -n psmdb-operator -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.dq1z7LIwcp deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.wl2pRJcMgD + rm /tmp/tmp.dq1z7LIwcp /tmp/tmp.wl2pRJcMgD + return 0 + sleep 20 ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator +++ mktemp ++ local LAST_OUT=/tmp/tmp.GFa6TlzP5B +++ mktemp ++ local LAST_ERR=/tmp/tmp.fddqY2D8dc ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.GFa6TlzP5B ++ cat /tmp/tmp.fddqY2D8dc ++ rm /tmp/tmp.GFa6TlzP5B /tmp/tmp.fddqY2D8dc ++ return 0 + wait_operator_pod percona-server-mongodb-operator-859f4bc6d7-66jx7 + local pod=percona-server-mongodb-operator-859f4bc6d7-66jx7 + set +o xtrace waiting for pod/percona-server-mongodb-operator-859f4bc6d7-66jx7 to be ready.OK + echo 'Print operator info from log' Print operator info from log ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator + grep 'Manager starting up' +++ mktemp ++ local LAST_OUT=/tmp/tmp.h2jEPUqa3i +++ mktemp ++ local LAST_ERR=/tmp/tmp.9Yb69q9aCL ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.h2jEPUqa3i ++ cat /tmp/tmp.9Yb69q9aCL ++ rm /tmp/tmp.h2jEPUqa3i /tmp/tmp.9Yb69q9aCL ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-859f4bc6d7-66jx7 ++ mktemp + local LAST_OUT=/tmp/tmp.haYZvPSglg ++ mktemp + local LAST_ERR=/tmp/tmp.5JOtMOCF96 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs -n psmdb-operator percona-server-mongodb-operator-859f4bc6d7-66jx7 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.haYZvPSglg + cat /tmp/tmp.5JOtMOCF96 + rm /tmp/tmp.haYZvPSglg /tmp/tmp.5JOtMOCF96 + return 0 2026-06-09T07:35:00.370Z INFO setup Manager starting up {"gitCommit": "fb8cc718776dc8f9e011cd5f23fe48cf7f65143e", "gitBranch": "PR-2058-fb8cc7187", "buildTime": "", "goVersion": "go1.26.4", "os": "linux", "arch": "amd64"} + create_namespace demand-backup-if-unhealthy-9516 + local namespace=demand-backup-if-unhealthy-9516 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ grep validate-auth ++ kubectl get ValidatingWebhookConfiguration ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ grep chaos-mesh ++ kubectl api-resources ++ awk '{print $1}' ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' + desc 'cleaned up old namespaces demand-backup-if-unhealthy-9516' + set +o xtrace + xargs kubectl delete ns ----------------------------------------------------------------------------------- cleaned up old namespaces demand-backup-if-unhealthy-9516 ----------------------------------------------------------------------------------- ++ mktemp + kubectl_bin delete namespace demand-backup-if-unhealthy-9516 --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.APwrdRoih9 ++ mktemp + local LAST_OUT=/tmp/tmp.HfQa7QDhRZ + local LAST_ERR=/tmp/tmp.0ayQWP3Ylb ++ mktemp + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.XcJHQsMU6i + local exit_status=0 + local timeout=4 + for i in $(seq 0 2) + set +e + kubectl get ns ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace demand-backup-if-unhealthy-9516 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.APwrdRoih9 + cat /tmp/tmp.0ayQWP3Ylb + rm /tmp/tmp.APwrdRoih9 /tmp/tmp.0ayQWP3Ylb + return 0 error: resource(s) were provided, but no name was specified + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.HfQa7QDhRZ + cat /tmp/tmp.XcJHQsMU6i + rm /tmp/tmp.HfQa7QDhRZ /tmp/tmp.XcJHQsMU6i + return 0 + kubectl_bin wait --for=delete namespace demand-backup-if-unhealthy-9516 ++ mktemp + local LAST_OUT=/tmp/tmp.lTlBvbD5Um ++ mktemp + local LAST_ERR=/tmp/tmp.X3KZcf1hAq + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace demand-backup-if-unhealthy-9516 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.lTlBvbD5Um + cat /tmp/tmp.X3KZcf1hAq + rm /tmp/tmp.lTlBvbD5Um /tmp/tmp.X3KZcf1hAq + return 0 + desc 'create namespace demand-backup-if-unhealthy-9516' + set +o xtrace ----------------------------------------------------------------------------------- create namespace demand-backup-if-unhealthy-9516 ----------------------------------------------------------------------------------- + kubectl_bin create namespace demand-backup-if-unhealthy-9516 ++ mktemp + local LAST_OUT=/tmp/tmp.3TE5xQK262 ++ mktemp + local LAST_ERR=/tmp/tmp.wtcOblHYvU + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace demand-backup-if-unhealthy-9516 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.3TE5xQK262 namespace/demand-backup-if-unhealthy-9516 created + cat /tmp/tmp.wtcOblHYvU + rm /tmp/tmp.3TE5xQK262 /tmp/tmp.wtcOblHYvU + return 0 + set_kube_ctx demand-backup-if-unhealthy-9516 + local namespace=demand-backup-if-unhealthy-9516 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.ET7UG0HN2N +++ mktemp ++ local LAST_ERR=/tmp/tmp.1jqQpTQvLm ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ET7UG0HN2N ++ cat /tmp/tmp.1jqQpTQvLm ++ rm /tmp/tmp.ET7UG0HN2N /tmp/tmp.1jqQpTQvLm ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster13 --namespace=demand-backup-if-unhealthy-9516 ++ mktemp + local LAST_OUT=/tmp/tmp.lw9vwsW1Yy ++ mktemp + local LAST_ERR=/tmp/tmp.NozKQdaGE3 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster13 --namespace=demand-backup-if-unhealthy-9516 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.lw9vwsW1Yy Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster13" modified. + cat /tmp/tmp.NozKQdaGE3 + rm /tmp/tmp.lw9vwsW1Yy /tmp/tmp.NozKQdaGE3 + return 0 + deploy_minio + local cert_secret= + local service_name=minio-service + desc 'install MinIO: minio-service' + set +o xtrace ----------------------------------------------------------------------------------- install MinIO: minio-service ----------------------------------------------------------------------------------- + helm uninstall minio-service + : + helm repo remove minio "minio" has been removed from your repositories + helm repo add minio https://charts.min.io/ "minio" has been added to your repositories + local endpoint=http://minio-service:9000 + minio_args=('--version' '5.4.0' '--set' 'replicas=1' '--set' 'mode=standalone' '--set' 'resources.requests.memory=256Mi' '--set' 'rootUser=rootuser' '--set' 'rootPassword=rootpass123' '--set' 'users[0].accessKey=some-access-key' '--set' 'users[0].secretKey=some-secret-key' '--set' 'users[0].policy=consoleAdmin' '--set' 'service.type=ClusterIP' '--set' 'configPathmc=/tmp/' '--set' 'securityContext.enabled=false' '--set' 'persistence.size=2G' '--set' 'fullnameOverride=minio-service' '--set' 'serviceAccount.create=true' '--set' 'serviceAccount.name=minio-service-sa') + local minio_args + [[ -n '' ]] + retry 10 60 helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G --set fullnameOverride=minio-service --set serviceAccount.create=true --set serviceAccount.name=minio-service-sa minio/minio + local max=10 + local delay=60 + shift 2 + local n=1 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G --set fullnameOverride=minio-service --set serviceAccount.create=true --set serviceAccount.name=minio-service-sa minio/minio NAME: minio-service LAST DEPLOYED: Tue Jun 9 07:35:36 2026 NAMESPACE: demand-backup-if-unhealthy-9516 STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: MinIO can be accessed via port 9000 on the following DNS name from within your cluster: minio-service.demand-backup-if-unhealthy-9516.cluster.local To access MinIO from localhost, run the below commands: 1. export POD_NAME=$(kubectl get pods --namespace demand-backup-if-unhealthy-9516 -l "release=minio-service" -o jsonpath="{.items[0].metadata.name}") 2. kubectl port-forward $POD_NAME 9000 --namespace demand-backup-if-unhealthy-9516 Read more about port forwarding here: http://kubernetes.io/docs/user-guide/kubectl/kubectl_port-forward/ You can now access MinIO server on http://localhost:9000. Follow the below steps to connect to MinIO server with mc client: 1. Download the MinIO mc client - https://min.io/docs/minio/linux/reference/minio-mc.html#quickstart 2. export MC_HOST_minio-service-local=http://$(kubectl get secret --namespace demand-backup-if-unhealthy-9516 minio-service -o jsonpath="{.data.rootUser}" | base64 --decode):$(kubectl get secret --namespace demand-backup-if-unhealthy-9516 minio-service -o jsonpath="{.data.rootPassword}" | base64 --decode)@localhost:9000 3. mc ls minio-service-local ++ kubectl_bin get pods --selector=release=minio-service -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.BDH2IXsGdf +++ mktemp ++ local LAST_ERR=/tmp/tmp.gh0cwz4Woo ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=release=minio-service -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.BDH2IXsGdf ++ cat /tmp/tmp.gh0cwz4Woo ++ rm /tmp/tmp.BDH2IXsGdf /tmp/tmp.gh0cwz4Woo ++ return 0 + local MINIO_POD=minio-service-6d5f646cdc-6scrp + wait_pod minio-service-6d5f646cdc-6scrp + local pod=minio-service-6d5f646cdc-6scrp + set +o xtrace waiting for pod/minio-service-6d5f646cdc-6scrp to be ready.OK + '[' -n psmdb-operator ']' + kubectl_bin create svc -n psmdb-operator externalname minio-service --external-name=minio-service.demand-backup-if-unhealthy-9516.svc.cluster.local --tcp=9000 service/minio-service created + create_minio_bucket operator-testing http://minio-service:9000 + local bucket=operator-testing + local endpoint=http://minio-service:9000 + kubectl_bin run -i --rm aws-cli --image=docker.io/perconalab/awscli --restart=Never -- bash -c $'AWS_ACCESS_KEY_ID=some-access-key \t\tAWS_SECRET_ACCESS_KEY=some-secret-key \t\tAWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --no-verify-ssl --endpoint-url http://minio-service:9000 s3 mb s3://operator-testing' ++ mktemp + local LAST_OUT=/tmp/tmp.HXe7eHd7ee ++ mktemp + local LAST_ERR=/tmp/tmp.Zug1pDfKBb + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl run -i --rm aws-cli --image=docker.io/perconalab/awscli --restart=Never -- bash -c $'AWS_ACCESS_KEY_ID=some-access-key \t\tAWS_SECRET_ACCESS_KEY=some-secret-key \t\tAWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --no-verify-ssl --endpoint-url http://minio-service:9000 s3 mb s3://operator-testing' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.HXe7eHd7ee make_bucket: operator-testing pod "aws-cli" deleted from demand-backup-if-unhealthy-9516 namespace + cat /tmp/tmp.Zug1pDfKBb All commands and output from this session will be recorded in container logs, including credentials and sensitive information passed through the command prompt. If you don't see a command prompt, try pressing enter. + rm /tmp/tmp.HXe7eHd7ee /tmp/tmp.Zug1pDfKBb + return 0 + create_secrets + echo 'Creating secrets and start client' Creating secrets and start client + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.eI0mSg9nic ++ mktemp + local LAST_ERR=/tmp/tmp.Z4DYdJ6SY9 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/client.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.eI0mSg9nic secret/some-users created deployment.apps/psmdb-client created + cat /tmp/tmp.Z4DYdJ6SY9 + rm /tmp/tmp.eI0mSg9nic /tmp/tmp.Z4DYdJ6SY9 + return 0 + apply_s3_storage_secrets + desc 'create secrets for cloud storages' + set +o xtrace ----------------------------------------------------------------------------------- create secrets for cloud storages ----------------------------------------------------------------------------------- + '[' -z '' ']' + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.0XAlSgzly3 ++ mktemp + local LAST_ERR=/tmp/tmp.Xmj3wpt7lM + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.0XAlSgzly3 secret/minio-secret created secret/aws-s3-secret created secret/alibaba-cloud-secret created secret/gcp-cs-secret created secret/azure-secret created secret/gcp-cs-sa-key-secret created + cat /tmp/tmp.Xmj3wpt7lM + rm /tmp/tmp.0XAlSgzly3 /tmp/tmp.Xmj3wpt7lM + return 0 + cluster=some-name + desc 'create PSMDB cluster some-name' + set +o xtrace ----------------------------------------------------------------------------------- create PSMDB cluster some-name ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/some-name.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/some-name.yml + kubectl_bin apply -f - + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/some-name.yml + /usr/sbin/sed -e s/NAME_SPACE/demand-backup-if-unhealthy-9516/g + yq eval '.spec.upgradeOptions.apply="Never"' ++ mktemp + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187"' + local LAST_OUT=/tmp/tmp.J28yHgptMu ++ mktemp + local LAST_ERR=/tmp/tmp.ZloXtLTBKS + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.J28yHgptMu perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.ZloXtLTBKS + rm /tmp/tmp.J28yHgptMu /tmp/tmp.ZloXtLTBKS + return 0 + wait_for_cluster_state some-name ready + local cluster_name=some-name + local target_state=ready + echo -n 'Waiting for psmdb/some-name to reach ready state' Waiting for psmdb/some-name to reach ready state+ local timeout=0 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.VOPKty7YOa +++ mktemp ++ local LAST_ERR=/tmp/tmp.2rQ9tt1rcD ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.VOPKty7YOa ++ cat /tmp/tmp.2rQ9tt1rcD ++ rm /tmp/tmp.VOPKty7YOa /tmp/tmp.2rQ9tt1rcD ++ return 0 + [[ '' =~ ready ]] + sleep 1 + timeout=1 + echo -n . .+ [[ 1 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.9rDBatC5lD +++ mktemp ++ local LAST_ERR=/tmp/tmp.GcNI2SfUNT ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.9rDBatC5lD ++ cat /tmp/tmp.GcNI2SfUNT ++ rm /tmp/tmp.9rDBatC5lD /tmp/tmp.GcNI2SfUNT ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=2 + echo -n . .+ [[ 2 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.VO17jlDW1b +++ mktemp ++ local LAST_ERR=/tmp/tmp.jWnrrQsOfH ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.VO17jlDW1b ++ cat /tmp/tmp.jWnrrQsOfH ++ rm /tmp/tmp.VO17jlDW1b /tmp/tmp.jWnrrQsOfH ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=3 + echo -n . .+ [[ 3 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ldSA2jmloN +++ mktemp ++ local LAST_ERR=/tmp/tmp.Q7E3CTik2b ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ldSA2jmloN ++ cat /tmp/tmp.Q7E3CTik2b ++ rm /tmp/tmp.ldSA2jmloN /tmp/tmp.Q7E3CTik2b ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=4 + echo -n . .+ [[ 4 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.5zstYlimQ3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.K7hz7y4Yyf ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.5zstYlimQ3 ++ cat /tmp/tmp.K7hz7y4Yyf ++ rm /tmp/tmp.5zstYlimQ3 /tmp/tmp.K7hz7y4Yyf ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=5 + echo -n . .+ [[ 5 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.P7myOm8hOY +++ mktemp ++ local LAST_ERR=/tmp/tmp.Kl8lhcBzb5 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.P7myOm8hOY ++ cat /tmp/tmp.Kl8lhcBzb5 ++ rm /tmp/tmp.P7myOm8hOY /tmp/tmp.Kl8lhcBzb5 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=6 + echo -n . .+ [[ 6 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.MASroQBW6a +++ mktemp ++ local LAST_ERR=/tmp/tmp.3esxSYLBjY ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.MASroQBW6a ++ cat /tmp/tmp.3esxSYLBjY ++ rm /tmp/tmp.MASroQBW6a /tmp/tmp.3esxSYLBjY ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=7 + echo -n . .+ [[ 7 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.AL0OTKaPx6 +++ mktemp ++ local LAST_ERR=/tmp/tmp.SEYPKo6O9e ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.AL0OTKaPx6 ++ cat /tmp/tmp.SEYPKo6O9e ++ rm /tmp/tmp.AL0OTKaPx6 /tmp/tmp.SEYPKo6O9e ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=8 + echo -n . .+ [[ 8 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.lT7iHqwyv7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.xuHrQsdNVb ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.lT7iHqwyv7 ++ cat /tmp/tmp.xuHrQsdNVb ++ rm /tmp/tmp.lT7iHqwyv7 /tmp/tmp.xuHrQsdNVb ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=9 + echo -n . .+ [[ 9 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ysv85lQEAf +++ mktemp ++ local LAST_ERR=/tmp/tmp.U8A7wTZIxs ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ysv85lQEAf ++ cat /tmp/tmp.U8A7wTZIxs ++ rm /tmp/tmp.ysv85lQEAf /tmp/tmp.U8A7wTZIxs ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=10 + echo -n . .+ [[ 10 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.vZOi16flmy +++ mktemp ++ local LAST_ERR=/tmp/tmp.98WxMyUZOU ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.vZOi16flmy ++ cat /tmp/tmp.98WxMyUZOU ++ rm /tmp/tmp.vZOi16flmy /tmp/tmp.98WxMyUZOU ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=11 + echo -n . .+ [[ 11 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.V9nlT3DMhG +++ mktemp ++ local LAST_ERR=/tmp/tmp.AS4RQoBJD2 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.V9nlT3DMhG ++ cat /tmp/tmp.AS4RQoBJD2 ++ rm /tmp/tmp.V9nlT3DMhG /tmp/tmp.AS4RQoBJD2 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=12 + echo -n . .+ [[ 12 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.GSuf1Gsa2Y +++ mktemp ++ local LAST_ERR=/tmp/tmp.UeUsPRzsDX ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.GSuf1Gsa2Y ++ cat /tmp/tmp.UeUsPRzsDX ++ rm /tmp/tmp.GSuf1Gsa2Y /tmp/tmp.UeUsPRzsDX ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=13 + echo -n . .+ [[ 13 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.g1P7t3XGOc +++ mktemp ++ local LAST_ERR=/tmp/tmp.vqLN3wP08Y ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.g1P7t3XGOc ++ cat /tmp/tmp.vqLN3wP08Y ++ rm /tmp/tmp.g1P7t3XGOc /tmp/tmp.vqLN3wP08Y ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=14 + echo -n . .+ [[ 14 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.EzP9AnYBdu +++ mktemp ++ local LAST_ERR=/tmp/tmp.oZ12Vprkui ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.EzP9AnYBdu ++ cat /tmp/tmp.oZ12Vprkui ++ rm /tmp/tmp.EzP9AnYBdu /tmp/tmp.oZ12Vprkui ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=15 + echo -n . .+ [[ 15 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.uiI6PRNE9K +++ mktemp ++ local LAST_ERR=/tmp/tmp.Q5t4rMm9nO ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.uiI6PRNE9K ++ cat /tmp/tmp.Q5t4rMm9nO ++ rm /tmp/tmp.uiI6PRNE9K /tmp/tmp.Q5t4rMm9nO ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=16 + echo -n . .+ [[ 16 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.yTRqxRaE6P +++ mktemp ++ local LAST_ERR=/tmp/tmp.AFke5Yffs2 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.yTRqxRaE6P ++ cat /tmp/tmp.AFke5Yffs2 ++ rm /tmp/tmp.yTRqxRaE6P /tmp/tmp.AFke5Yffs2 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=17 + echo -n . .+ [[ 17 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.PsW1JwTc97 +++ mktemp ++ local LAST_ERR=/tmp/tmp.tIQUuSA4un ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.PsW1JwTc97 ++ cat /tmp/tmp.tIQUuSA4un ++ rm /tmp/tmp.PsW1JwTc97 /tmp/tmp.tIQUuSA4un ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=18 + echo -n . .+ [[ 18 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.AkJ7ofZ9ky +++ mktemp ++ local LAST_ERR=/tmp/tmp.MyEeFJnBgR ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.AkJ7ofZ9ky ++ cat /tmp/tmp.MyEeFJnBgR ++ rm /tmp/tmp.AkJ7ofZ9ky /tmp/tmp.MyEeFJnBgR ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=19 + echo -n . .+ [[ 19 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CxKI7G08Gk +++ mktemp ++ local LAST_ERR=/tmp/tmp.Dx0JisEa1Q ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.CxKI7G08Gk ++ cat /tmp/tmp.Dx0JisEa1Q ++ rm /tmp/tmp.CxKI7G08Gk /tmp/tmp.Dx0JisEa1Q ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=20 + echo -n . .+ [[ 20 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.iVVgOgljZp +++ mktemp ++ local LAST_ERR=/tmp/tmp.GRVP4TV3S0 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.iVVgOgljZp ++ cat /tmp/tmp.GRVP4TV3S0 ++ rm /tmp/tmp.iVVgOgljZp /tmp/tmp.GRVP4TV3S0 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=21 + echo -n . .+ [[ 21 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Cw0jwabs7J +++ mktemp ++ local LAST_ERR=/tmp/tmp.HYQSdDSqqp ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Cw0jwabs7J ++ cat /tmp/tmp.HYQSdDSqqp ++ rm /tmp/tmp.Cw0jwabs7J /tmp/tmp.HYQSdDSqqp ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=22 + echo -n . .+ [[ 22 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.gy7yzQFUzc +++ mktemp ++ local LAST_ERR=/tmp/tmp.MfBXGLiZi9 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.gy7yzQFUzc ++ cat /tmp/tmp.MfBXGLiZi9 ++ rm /tmp/tmp.gy7yzQFUzc /tmp/tmp.MfBXGLiZi9 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=23 + echo -n . .+ [[ 23 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.h4RJJYE9uo +++ mktemp ++ local LAST_ERR=/tmp/tmp.dvyIes5yLX ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.h4RJJYE9uo ++ cat /tmp/tmp.dvyIes5yLX ++ rm /tmp/tmp.h4RJJYE9uo /tmp/tmp.dvyIes5yLX ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=24 + echo -n . .+ [[ 24 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.wPOkp2pEiv +++ mktemp ++ local LAST_ERR=/tmp/tmp.7tElYxINQt ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.wPOkp2pEiv ++ cat /tmp/tmp.7tElYxINQt ++ rm /tmp/tmp.wPOkp2pEiv /tmp/tmp.7tElYxINQt ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=25 + echo -n . .+ [[ 25 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xt0BsNFJL5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.7I1dehdqFe ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.xt0BsNFJL5 ++ cat /tmp/tmp.7I1dehdqFe ++ rm /tmp/tmp.xt0BsNFJL5 /tmp/tmp.7I1dehdqFe ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=26 + echo -n . .+ [[ 26 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.sNmLII5yv3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.5e2hh0e83l ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.sNmLII5yv3 ++ cat /tmp/tmp.5e2hh0e83l ++ rm /tmp/tmp.sNmLII5yv3 /tmp/tmp.5e2hh0e83l ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=27 + echo -n . .+ [[ 27 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Z0mJfXnLiy +++ mktemp ++ local LAST_ERR=/tmp/tmp.x0MbMxMnaD ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Z0mJfXnLiy ++ cat /tmp/tmp.x0MbMxMnaD ++ rm /tmp/tmp.Z0mJfXnLiy /tmp/tmp.x0MbMxMnaD ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=28 + echo -n . .+ [[ 28 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.z9M53wFV1p +++ mktemp ++ local LAST_ERR=/tmp/tmp.WWgMtxLxkD ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.z9M53wFV1p ++ cat /tmp/tmp.WWgMtxLxkD ++ rm /tmp/tmp.z9M53wFV1p /tmp/tmp.WWgMtxLxkD ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=29 + echo -n . .+ [[ 29 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6n2WTHPYRM +++ mktemp ++ local LAST_ERR=/tmp/tmp.jJD1lR5UpO ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6n2WTHPYRM ++ cat /tmp/tmp.jJD1lR5UpO ++ rm /tmp/tmp.6n2WTHPYRM /tmp/tmp.jJD1lR5UpO ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=30 + echo -n . .+ [[ 30 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.rdjApd2VuH +++ mktemp ++ local LAST_ERR=/tmp/tmp.dd08os7TQV ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.rdjApd2VuH ++ cat /tmp/tmp.dd08os7TQV ++ rm /tmp/tmp.rdjApd2VuH /tmp/tmp.dd08os7TQV ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=31 + echo -n . .+ [[ 31 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.b64U5PEIVg +++ mktemp ++ local LAST_ERR=/tmp/tmp.tscqwrMlJG ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.b64U5PEIVg ++ cat /tmp/tmp.tscqwrMlJG ++ rm /tmp/tmp.b64U5PEIVg /tmp/tmp.tscqwrMlJG ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=32 + echo -n . .+ [[ 32 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.BLVaKg0N8n +++ mktemp ++ local LAST_ERR=/tmp/tmp.LWIYzCOjxM ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.BLVaKg0N8n ++ cat /tmp/tmp.LWIYzCOjxM ++ rm /tmp/tmp.BLVaKg0N8n /tmp/tmp.LWIYzCOjxM ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=33 + echo -n . .+ [[ 33 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.9RqNW5qinD +++ mktemp ++ local LAST_ERR=/tmp/tmp.NqlQH2tRv2 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.9RqNW5qinD ++ cat /tmp/tmp.NqlQH2tRv2 ++ rm /tmp/tmp.9RqNW5qinD /tmp/tmp.NqlQH2tRv2 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=34 + echo -n . .+ [[ 34 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.K2yfQeFQIx +++ mktemp ++ local LAST_ERR=/tmp/tmp.P4qMFRalBV ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.K2yfQeFQIx ++ cat /tmp/tmp.P4qMFRalBV ++ rm /tmp/tmp.K2yfQeFQIx /tmp/tmp.P4qMFRalBV ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=35 + echo -n . .+ [[ 35 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0EhanxoTSK +++ mktemp ++ local LAST_ERR=/tmp/tmp.4ZE1DulDL6 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0EhanxoTSK ++ cat /tmp/tmp.4ZE1DulDL6 ++ rm /tmp/tmp.0EhanxoTSK /tmp/tmp.4ZE1DulDL6 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=36 + echo -n . .+ [[ 36 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.2OkpBuXiDd +++ mktemp ++ local LAST_ERR=/tmp/tmp.t1DJhU7h5E ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.2OkpBuXiDd ++ cat /tmp/tmp.t1DJhU7h5E ++ rm /tmp/tmp.2OkpBuXiDd /tmp/tmp.t1DJhU7h5E ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=37 + echo -n . .+ [[ 37 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ro6vjfZZJl +++ mktemp ++ local LAST_ERR=/tmp/tmp.wEvIf1DEI7 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Ro6vjfZZJl ++ cat /tmp/tmp.wEvIf1DEI7 ++ rm /tmp/tmp.Ro6vjfZZJl /tmp/tmp.wEvIf1DEI7 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=38 + echo -n . .+ [[ 38 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6F4dgoy8Jy +++ mktemp ++ local LAST_ERR=/tmp/tmp.Wwhg43paEr ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6F4dgoy8Jy ++ cat /tmp/tmp.Wwhg43paEr ++ rm /tmp/tmp.6F4dgoy8Jy /tmp/tmp.Wwhg43paEr ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=39 + echo -n . .+ [[ 39 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Y2sYBaYbKx +++ mktemp ++ local LAST_ERR=/tmp/tmp.mEVUXq0Klo ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Y2sYBaYbKx ++ cat /tmp/tmp.mEVUXq0Klo ++ rm /tmp/tmp.Y2sYBaYbKx /tmp/tmp.mEVUXq0Klo ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=40 + echo -n . .+ [[ 40 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.8lkHbbVW6j +++ mktemp ++ local LAST_ERR=/tmp/tmp.ZM4i3cJTgu ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.8lkHbbVW6j ++ cat /tmp/tmp.ZM4i3cJTgu ++ rm /tmp/tmp.8lkHbbVW6j /tmp/tmp.ZM4i3cJTgu ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=41 + echo -n . .+ [[ 41 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qcokeHVGyh +++ mktemp ++ local LAST_ERR=/tmp/tmp.rH4tTm8z3u ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.qcokeHVGyh ++ cat /tmp/tmp.rH4tTm8z3u ++ rm /tmp/tmp.qcokeHVGyh /tmp/tmp.rH4tTm8z3u ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=42 + echo -n . .+ [[ 42 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.gXcAt3pRbw +++ mktemp ++ local LAST_ERR=/tmp/tmp.bFzSmywfLP ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.gXcAt3pRbw ++ cat /tmp/tmp.bFzSmywfLP ++ rm /tmp/tmp.gXcAt3pRbw /tmp/tmp.bFzSmywfLP ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=43 + echo -n . .+ [[ 43 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.4QVIrV49y0 +++ mktemp ++ local LAST_ERR=/tmp/tmp.XP5XNQSpa8 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.4QVIrV49y0 ++ cat /tmp/tmp.XP5XNQSpa8 ++ rm /tmp/tmp.4QVIrV49y0 /tmp/tmp.XP5XNQSpa8 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=44 + echo -n . .+ [[ 44 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xtzz0Z2Zvy +++ mktemp ++ local LAST_ERR=/tmp/tmp.Ph2Z0OTY7L ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.xtzz0Z2Zvy ++ cat /tmp/tmp.Ph2Z0OTY7L ++ rm /tmp/tmp.xtzz0Z2Zvy /tmp/tmp.Ph2Z0OTY7L ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=45 + echo -n . .+ [[ 45 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.cpeMceipQz +++ mktemp ++ local LAST_ERR=/tmp/tmp.h5NjQsDzkv ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.cpeMceipQz ++ cat /tmp/tmp.h5NjQsDzkv ++ rm /tmp/tmp.cpeMceipQz /tmp/tmp.h5NjQsDzkv ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=46 + echo -n . .+ [[ 46 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CExuqjWhbk +++ mktemp ++ local LAST_ERR=/tmp/tmp.WFCxxnVcBd ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.CExuqjWhbk ++ cat /tmp/tmp.WFCxxnVcBd ++ rm /tmp/tmp.CExuqjWhbk /tmp/tmp.WFCxxnVcBd ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=47 + echo -n . .+ [[ 47 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.iAsP78XCkJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.KTCBjs8GAS ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.iAsP78XCkJ ++ cat /tmp/tmp.KTCBjs8GAS ++ rm /tmp/tmp.iAsP78XCkJ /tmp/tmp.KTCBjs8GAS ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=48 + echo -n . .+ [[ 48 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.oMdTltL7KT +++ mktemp ++ local LAST_ERR=/tmp/tmp.qwYW19ufx2 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.oMdTltL7KT ++ cat /tmp/tmp.qwYW19ufx2 ++ rm /tmp/tmp.oMdTltL7KT /tmp/tmp.qwYW19ufx2 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=49 + echo -n . .+ [[ 49 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.TI1inaPrOG +++ mktemp ++ local LAST_ERR=/tmp/tmp.PPqbycwa5S ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.TI1inaPrOG ++ cat /tmp/tmp.PPqbycwa5S ++ rm /tmp/tmp.TI1inaPrOG /tmp/tmp.PPqbycwa5S ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=50 + echo -n . .+ [[ 50 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.7B6Y6raL8p +++ mktemp ++ local LAST_ERR=/tmp/tmp.X2HWoAMqE3 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.7B6Y6raL8p ++ cat /tmp/tmp.X2HWoAMqE3 ++ rm /tmp/tmp.7B6Y6raL8p /tmp/tmp.X2HWoAMqE3 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=51 + echo -n . .+ [[ 51 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ieQN2SodsU +++ mktemp ++ local LAST_ERR=/tmp/tmp.QyfCwPqigI ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ieQN2SodsU ++ cat /tmp/tmp.QyfCwPqigI ++ rm /tmp/tmp.ieQN2SodsU /tmp/tmp.QyfCwPqigI ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=52 + echo -n . .+ [[ 52 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.nGpil8jInL +++ mktemp ++ local LAST_ERR=/tmp/tmp.BtWoNnoIh7 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.nGpil8jInL ++ cat /tmp/tmp.BtWoNnoIh7 ++ rm /tmp/tmp.nGpil8jInL /tmp/tmp.BtWoNnoIh7 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=53 + echo -n . .+ [[ 53 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.em34phYsSW +++ mktemp ++ local LAST_ERR=/tmp/tmp.0CvygNYxFO ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.em34phYsSW ++ cat /tmp/tmp.0CvygNYxFO ++ rm /tmp/tmp.em34phYsSW /tmp/tmp.0CvygNYxFO ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=54 + echo -n . .+ [[ 54 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.PKADWo0Bta +++ mktemp ++ local LAST_ERR=/tmp/tmp.LcvHkTBAZR ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.PKADWo0Bta ++ cat /tmp/tmp.LcvHkTBAZR ++ rm /tmp/tmp.PKADWo0Bta /tmp/tmp.LcvHkTBAZR ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=55 + echo -n . .+ [[ 55 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ibz9KXnkhd +++ mktemp ++ local LAST_ERR=/tmp/tmp.B8bSEMhB14 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ibz9KXnkhd ++ cat /tmp/tmp.B8bSEMhB14 ++ rm /tmp/tmp.ibz9KXnkhd /tmp/tmp.B8bSEMhB14 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=56 + echo -n . .+ [[ 56 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.7kypFVW1Ss +++ mktemp ++ local LAST_ERR=/tmp/tmp.87aWcL281z ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.7kypFVW1Ss ++ cat /tmp/tmp.87aWcL281z ++ rm /tmp/tmp.7kypFVW1Ss /tmp/tmp.87aWcL281z ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=57 + echo -n . .+ [[ 57 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.3LrViEuR7n +++ mktemp ++ local LAST_ERR=/tmp/tmp.PVewqruwjv ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.3LrViEuR7n ++ cat /tmp/tmp.PVewqruwjv ++ rm /tmp/tmp.3LrViEuR7n /tmp/tmp.PVewqruwjv ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=58 + echo -n . .+ [[ 58 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.mc0epjqso5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.cFBNG819ra ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.mc0epjqso5 ++ cat /tmp/tmp.cFBNG819ra ++ rm /tmp/tmp.mc0epjqso5 /tmp/tmp.cFBNG819ra ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=59 + echo -n . .+ [[ 59 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.hAchyv1pon +++ mktemp ++ local LAST_ERR=/tmp/tmp.iMtWgDMaCN ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.hAchyv1pon ++ cat /tmp/tmp.iMtWgDMaCN ++ rm /tmp/tmp.hAchyv1pon /tmp/tmp.iMtWgDMaCN ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=60 + echo -n . .+ [[ 60 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0LeafDIvkg +++ mktemp ++ local LAST_ERR=/tmp/tmp.mdCPpzOh79 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0LeafDIvkg ++ cat /tmp/tmp.mdCPpzOh79 ++ rm /tmp/tmp.0LeafDIvkg /tmp/tmp.mdCPpzOh79 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=61 + echo -n . .+ [[ 61 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.B09kFntYud +++ mktemp ++ local LAST_ERR=/tmp/tmp.1kXbihdUIe ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.B09kFntYud ++ cat /tmp/tmp.1kXbihdUIe ++ rm /tmp/tmp.B09kFntYud /tmp/tmp.1kXbihdUIe ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=62 + echo -n . .+ [[ 62 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ki7fdm4OJ8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.mGwmXXYfGp ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Ki7fdm4OJ8 ++ cat /tmp/tmp.mGwmXXYfGp ++ rm /tmp/tmp.Ki7fdm4OJ8 /tmp/tmp.mGwmXXYfGp ++ return 0 + [[ ready =~ ready ]] + echo + log 'psmdb/some-name is ready: OK' + set +o xtrace [2026-06-09T07:38:33+0000] psmdb/some-name is ready: OK + desc 'Adding new user' + set +o xtrace ----------------------------------------------------------------------------------- Adding new user ----------------------------------------------------------------------------------- + run_mongo 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516 + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb+srv + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.8DyjzYP4yc +++ mktemp ++ local LAST_ERR=/tmp/tmp.p62zflDy8P ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.8DyjzYP4yc ++ cat /tmp/tmp.p62zflDy8P ++ rm /tmp/tmp.8DyjzYP4yc /tmp/tmp.p62zflDy8P ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.DybU1QjLX8 ++ mktemp + local LAST_ERR=/tmp/tmp.a3w2wP3MM7 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DybU1QjLX8 Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017,some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("4b7bdcd5-ca09-47d6-b6e8-e82adcd6a34b") } Percona Server for MongoDB server version: v8.0.23-10 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.a3w2wP3MM7 + rm /tmp/tmp.DybU1QjLX8 /tmp/tmp.a3w2wP3MM7 + return 0 + echo -n 'Verifying user creation...' Verifying user creation...+ until_with_timeout 10 check_user + local timeout=10 + shift + local elapsed=0 + check_user + run_mongo 'db.getUser("myApp")' userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516 + grep -q '"user" : "myApp"' + local 'command=db.getUser("myApp")' + local uri=userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb+srv + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.456zE5Mh4Y +++ mktemp ++ local LAST_ERR=/tmp/tmp.IbT1Xbshme ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.456zE5Mh4Y ++ cat /tmp/tmp.IbT1Xbshme ++ rm /tmp/tmp.456zE5Mh4Y /tmp/tmp.IbT1Xbshme ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''db.getUser("myApp")\n'\'' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.9MCQeVmvZP ++ mktemp + local LAST_ERR=/tmp/tmp.xuwjxQ577R + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''db.getUser("myApp")\n'\'' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.9MCQeVmvZP + cat /tmp/tmp.xuwjxQ577R + rm /tmp/tmp.9MCQeVmvZP /tmp/tmp.xuwjxQ577R + return 0 + return 0 + desc 'Testing logical backup with an unhealthy container' + set +o xtrace ----------------------------------------------------------------------------------- Testing logical backup with an unhealthy container ----------------------------------------------------------------------------------- + type=logical + write_data 'This is some data for backup if unhealthy' + local 'data=This is some data for backup if unhealthy' + local find_prefix= + run_mongo 'use myApp\n db.test.insert({ x: "This is some data for backup if unhealthy" })' myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 + local 'command=use myApp\n db.test.insert({ x: "This is some data for backup if unhealthy" })' + local uri=myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb+srv + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.LdUGVyW8FZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.I3JiF6yKhl ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.LdUGVyW8FZ ++ cat /tmp/tmp.I3JiF6yKhl ++ rm /tmp/tmp.LdUGVyW8FZ /tmp/tmp.I3JiF6yKhl ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.insert({ x: "This is some data for backup if unhealthy" })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.PEuuO8RoQL ++ mktemp + local LAST_ERR=/tmp/tmp.HxUUWokmu8 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.insert({ x: "This is some data for backup if unhealthy" })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.PEuuO8RoQL Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017,some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017,some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("70ec38a7-1db6-43f0-a72c-79054d47f47c") } Percona Server for MongoDB server version: v8.0.23-10 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.HxUUWokmu8 + rm /tmp/tmp.PEuuO8RoQL /tmp/tmp.HxUUWokmu8 + return 0 + compare_mongo_cmd find myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 '' .svc.cluster.local myApp test + local command=find + local uri=myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 + local postfix= + local suffix=.svc.cluster.local + local database=myApp + local collection=test + local sort= + local tls=false + local replicaset= + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2026-06-09T07:38:42+0000] running db.test.find() in myApp + [[ false == true ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 mongodb .svc.cluster.local '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] + grep -E -v 'I NETWORK|W NETWORK|F NETWORK|"c":"NETWORK"|Error saving history file|Percona Server for MongoDB|connecting to:|Unable to reach primary for set|Implicit session:|versions do not match|Error saving history file:|Started a new thread for the timer service' + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.KwIRvUbTMX +++ mktemp ++ local LAST_ERR=/tmp/tmp.iTQnMqBj4z ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.KwIRvUbTMX ++ cat /tmp/tmp.iTQnMqBj4z ++ rm /tmp/tmp.KwIRvUbTMX /tmp/tmp.iTQnMqBj4z ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.9DwXAqHnNH ++ mktemp + local LAST_ERR=/tmp/tmp.09ktjC7IV4 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.9DwXAqHnNH + cat /tmp/tmp.09ktjC7IV4 + rm /tmp/tmp.9DwXAqHnNH /tmp/tmp.09ktjC7IV4 + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/compare/find.json /tmp/tmp.auPFCQZrKd/find + wait_sts_to_become_not_ready + local sts_name=some-name-rs0 + local timeout=60 + local pod_name=some-name-rs0-1 + local interval=2 + local elapsed=0 + echo 'Updating cluster with invalid image...' Updating cluster with invalid image... + update_with_invalid_db_image + local cluster_name=some-name + yq /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/some-name.yml + yq '.spec.image="invalid-image:invalid-tag"' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.HsuzJ5irpG ++ mktemp + local LAST_ERR=/tmp/tmp.OI39wU0WtF + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.HsuzJ5irpG perconaservermongodb.psmdb.percona.com/some-name configured + cat /tmp/tmp.OI39wU0WtF + rm /tmp/tmp.HsuzJ5irpG /tmp/tmp.OI39wU0WtF + return 0 + echo -n 'Wait for statefulset some-name-rs0 to become not ready...' Wait for statefulset some-name-rs0 to become not ready...+ is_sts_ready some-name-rs0 + local sts_name=some-name-rs0 + local replicas ready_replicas + kubectl_bin get sts some-name-rs0 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.XzVkg1wacV +++ mktemp ++ local LAST_ERR=/tmp/tmp.CutssXrCyr ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.XzVkg1wacV ++ cat /tmp/tmp.CutssXrCyr ++ rm /tmp/tmp.XzVkg1wacV /tmp/tmp.CutssXrCyr ++ return 0 + replicas=3 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ra6pO0Yc3c +++ mktemp ++ local LAST_ERR=/tmp/tmp.LjfqLeozkZ ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ra6pO0Yc3c ++ cat /tmp/tmp.LjfqLeozkZ ++ rm /tmp/tmp.ra6pO0Yc3c /tmp/tmp.LjfqLeozkZ ++ return 0 + ready_replicas=3 + [[ 3 -eq 3 ]] + (( elapsed >= timeout )) + sleep 2 + (( elapsed += interval )) + echo -n . .+ is_sts_ready some-name-rs0 + local sts_name=some-name-rs0 + local replicas ready_replicas + kubectl_bin get sts some-name-rs0 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.LDQYBDxd7W +++ mktemp ++ local LAST_ERR=/tmp/tmp.YfdJNXqsX9 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.LDQYBDxd7W ++ cat /tmp/tmp.YfdJNXqsX9 ++ rm /tmp/tmp.LDQYBDxd7W /tmp/tmp.YfdJNXqsX9 ++ return 0 + replicas=3 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.oIV2LJUKC4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.OF38HhrzqH ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.oIV2LJUKC4 ++ cat /tmp/tmp.OF38HhrzqH ++ rm /tmp/tmp.oIV2LJUKC4 /tmp/tmp.OF38HhrzqH ++ return 0 + ready_replicas=3 + [[ 3 -eq 3 ]] + (( elapsed >= timeout )) + sleep 2 + (( elapsed += interval )) + echo -n . .+ is_sts_ready some-name-rs0 + local sts_name=some-name-rs0 + local replicas ready_replicas + kubectl_bin get sts some-name-rs0 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0CQWEsVQjr +++ mktemp ++ local LAST_ERR=/tmp/tmp.WBmZxtdTjB ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0CQWEsVQjr ++ cat /tmp/tmp.WBmZxtdTjB ++ rm /tmp/tmp.0CQWEsVQjr /tmp/tmp.WBmZxtdTjB ++ return 0 + replicas=3 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.jbCtAz2LXk +++ mktemp ++ local LAST_ERR=/tmp/tmp.LuYImNfqUq ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.jbCtAz2LXk ++ cat /tmp/tmp.LuYImNfqUq ++ rm /tmp/tmp.jbCtAz2LXk /tmp/tmp.LuYImNfqUq ++ return 0 + ready_replicas=3 + [[ 3 -eq 3 ]] + (( elapsed >= timeout )) + sleep 2 + (( elapsed += interval )) + echo -n . .+ is_sts_ready some-name-rs0 + local sts_name=some-name-rs0 + local replicas ready_replicas + kubectl_bin get sts some-name-rs0 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.mVkalvzIQz +++ mktemp ++ local LAST_ERR=/tmp/tmp.eTuUy8rlTH ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.mVkalvzIQz ++ cat /tmp/tmp.eTuUy8rlTH ++ rm /tmp/tmp.mVkalvzIQz /tmp/tmp.eTuUy8rlTH ++ return 0 + replicas=3 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.wrHcQ5pKlp +++ mktemp ++ local LAST_ERR=/tmp/tmp.Ph3eOaUKdr ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.wrHcQ5pKlp ++ cat /tmp/tmp.Ph3eOaUKdr ++ rm /tmp/tmp.wrHcQ5pKlp /tmp/tmp.Ph3eOaUKdr ++ return 0 + ready_replicas=2 + [[ 3 -eq 2 ]] + wait_for_cluster_state some-name 'initializing|error' + local cluster_name=some-name + local 'target_state=initializing|error' + echo -n 'Waiting for psmdb/some-name to reach initializing|error state' Waiting for psmdb/some-name to reach initializing|error state+ local timeout=0 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.UVamlSbSzL +++ mktemp ++ local LAST_ERR=/tmp/tmp.60bYFnciA3 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.UVamlSbSzL ++ cat /tmp/tmp.60bYFnciA3 ++ rm /tmp/tmp.UVamlSbSzL /tmp/tmp.60bYFnciA3 ++ return 0 + [[ initializing =~ initializing|error ]] + echo + log 'psmdb/some-name is initializing|error: OK' + set +o xtrace [2026-06-09T07:39:10+0000] psmdb/some-name is initializing|error: OK + backup_name_minio=backup-minio-logical + run_backup minio backup-minio-logical logical + local storage=minio + local backup_name=backup-minio-logical + local type=logical + log 'running backup backup-minio-logical' + set +o xtrace [2026-06-09T07:39:10+0000] running backup backup-minio-logical + yq eval $'.metadata.name = "backup-minio-logical"\n\t\t\t| .spec.storageName = "minio"\n\t\t\t| .spec.type = "logical"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/backup-minio.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.QmQk1Fi7CN ++ mktemp + local LAST_ERR=/tmp/tmp.RB2VnVvNDf + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.QmQk1Fi7CN perconaservermongodbbackup.psmdb.percona.com/backup-minio-logical created + cat /tmp/tmp.RB2VnVvNDf + rm /tmp/tmp.QmQk1Fi7CN /tmp/tmp.RB2VnVvNDf + return 0 + verify_sts_not_ready + local sts_name=some-name-rs0 + is_sts_ready some-name-rs0 + local sts_name=some-name-rs0 + local replicas ready_replicas + kubectl_bin get sts some-name-rs0 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ajh9gwYohE +++ mktemp ++ local LAST_ERR=/tmp/tmp.wjKtQLl19o ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Ajh9gwYohE ++ cat /tmp/tmp.wjKtQLl19o ++ rm /tmp/tmp.Ajh9gwYohE /tmp/tmp.wjKtQLl19o ++ return 0 + replicas=3 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.rTGsRMbBrJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.EDMbeYIXe7 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.rTGsRMbBrJ ++ cat /tmp/tmp.EDMbeYIXe7 ++ rm /tmp/tmp.rTGsRMbBrJ /tmp/tmp.EDMbeYIXe7 ++ return 0 + ready_replicas=2 + [[ 3 -eq 2 ]] + wait_for_cluster_state some-name 'initializing|error' + local cluster_name=some-name + local 'target_state=initializing|error' + echo -n 'Waiting for psmdb/some-name to reach initializing|error state' Waiting for psmdb/some-name to reach initializing|error state+ local timeout=0 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.gzRZWVqgtp +++ mktemp ++ local LAST_ERR=/tmp/tmp.WKgxyCOW7m ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.gzRZWVqgtp ++ cat /tmp/tmp.WKgxyCOW7m ++ rm /tmp/tmp.gzRZWVqgtp /tmp/tmp.WKgxyCOW7m ++ return 0 + [[ initializing =~ initializing|error ]] + echo + log 'psmdb/some-name is initializing|error: OK' + set +o xtrace [2026-06-09T07:39:17+0000] psmdb/some-name is initializing|error: OK + desc 'Verifying backup-minio-logical and update cluster back to ready state' + set +o xtrace ----------------------------------------------------------------------------------- Verifying backup-minio-logical and update cluster back to ready state ----------------------------------------------------------------------------------- + wait_backup backup-minio-logical ready + local backup_name=backup-minio-logical + local target_state=ready + set +o xtrace waiting for backup-minio-logical to reach ready state.....OK + verify_sts_not_ready + local sts_name=some-name-rs0 + is_sts_ready some-name-rs0 + local sts_name=some-name-rs0 + local replicas ready_replicas + kubectl_bin get sts some-name-rs0 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.FYew3RIDg6 +++ mktemp ++ local LAST_ERR=/tmp/tmp.5wp2oxWmeS ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.spec.replicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.FYew3RIDg6 ++ cat /tmp/tmp.5wp2oxWmeS ++ rm /tmp/tmp.FYew3RIDg6 /tmp/tmp.5wp2oxWmeS ++ return 0 + replicas=3 ++ kubectl_bin get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.yAk11co75k +++ mktemp ++ local LAST_ERR=/tmp/tmp.VkpQlYYBHy ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get sts some-name-rs0 -o 'jsonpath={.status.readyReplicas}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.yAk11co75k ++ cat /tmp/tmp.VkpQlYYBHy ++ rm /tmp/tmp.yAk11co75k /tmp/tmp.VkpQlYYBHy ++ return 0 + ready_replicas=2 + [[ 3 -eq 2 ]] + wait_for_cluster_state some-name 'initializing|error' + local cluster_name=some-name + local 'target_state=initializing|error' + echo -n 'Waiting for psmdb/some-name to reach initializing|error state' Waiting for psmdb/some-name to reach initializing|error state+ local timeout=0 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.MKKe2T8kk4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.ZjBh7h63R1 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.MKKe2T8kk4 ++ cat /tmp/tmp.ZjBh7h63R1 ++ rm /tmp/tmp.MKKe2T8kk4 /tmp/tmp.ZjBh7h63R1 ++ return 0 + [[ initializing =~ initializing|error ]] + echo + log 'psmdb/some-name is initializing|error: OK' + set +o xtrace [2026-06-09T07:39:29+0000] psmdb/some-name is initializing|error: OK + rollback_invalid_image + local cluster_name=some-name + local timeout= + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/some-name.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/some-name.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/some-name.yml + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0"' ++ mktemp + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187"' + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' + /usr/sbin/sed -e s/NAME_SPACE/demand-backup-if-unhealthy-9516/g + local LAST_OUT=/tmp/tmp.wJAUrxJzr5 + yq eval '.spec.upgradeOptions.apply="Never"' ++ mktemp + local LAST_ERR=/tmp/tmp.wZsdBFp4FK + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wJAUrxJzr5 perconaservermongodb.psmdb.percona.com/some-name configured + cat /tmp/tmp.wZsdBFp4FK + rm /tmp/tmp.wJAUrxJzr5 /tmp/tmp.wZsdBFp4FK + return 0 + echo -n 'Waiting new statefulset version...' Waiting new statefulset version...+ kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.TpvsLebX8y ++ mktemp + local LAST_ERR=/tmp/tmp.oUp6CVXJ7c + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.TpvsLebX8y + cat /tmp/tmp.oUp6CVXJ7c + rm /tmp/tmp.TpvsLebX8y /tmp/tmp.oUp6CVXJ7c + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.OpS0AidpYo ++ mktemp + local LAST_ERR=/tmp/tmp.mjBntQPN3O + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OpS0AidpYo + cat /tmp/tmp.mjBntQPN3O + rm /tmp/tmp.OpS0AidpYo /tmp/tmp.mjBntQPN3O + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.8cHy1ep7RU ++ mktemp + local LAST_ERR=/tmp/tmp.xnNyAFKzI4 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.8cHy1ep7RU + cat /tmp/tmp.xnNyAFKzI4 + rm /tmp/tmp.8cHy1ep7RU /tmp/tmp.xnNyAFKzI4 + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.ttaEDbKZZo ++ mktemp + local LAST_ERR=/tmp/tmp.yacLgk3jS3 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ttaEDbKZZo + cat /tmp/tmp.yacLgk3jS3 + rm /tmp/tmp.ttaEDbKZZo /tmp/tmp.yacLgk3jS3 + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.z1BncwzqXU ++ mktemp + local LAST_ERR=/tmp/tmp.Wnshzu7o7h + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.z1BncwzqXU + cat /tmp/tmp.Wnshzu7o7h + rm /tmp/tmp.z1BncwzqXU /tmp/tmp.Wnshzu7o7h + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.it6cOX0mRw ++ mktemp + local LAST_ERR=/tmp/tmp.aJ5XGsJuLc + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.it6cOX0mRw + cat /tmp/tmp.aJ5XGsJuLc + rm /tmp/tmp.it6cOX0mRw /tmp/tmp.aJ5XGsJuLc + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.65qu1osiyy ++ mktemp + local LAST_ERR=/tmp/tmp.9xu7Y5rtBs + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.65qu1osiyy + cat /tmp/tmp.9xu7Y5rtBs + rm /tmp/tmp.65qu1osiyy /tmp/tmp.9xu7Y5rtBs + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.0PxGENINIE ++ mktemp + local LAST_ERR=/tmp/tmp.rj3gMsaYhV + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.0PxGENINIE + cat /tmp/tmp.rj3gMsaYhV + rm /tmp/tmp.0PxGENINIE /tmp/tmp.rj3gMsaYhV + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.rerJTGfPKq ++ mktemp + local LAST_ERR=/tmp/tmp.RYksYraz0Y + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.rerJTGfPKq + cat /tmp/tmp.RYksYraz0Y + rm /tmp/tmp.rerJTGfPKq /tmp/tmp.RYksYraz0Y + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.8lVuGPTAfu ++ mktemp + local LAST_ERR=/tmp/tmp.IwGmdZYHBn + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.8lVuGPTAfu + cat /tmp/tmp.IwGmdZYHBn + rm /tmp/tmp.8lVuGPTAfu /tmp/tmp.IwGmdZYHBn + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.fR40UeOvdk ++ mktemp + local LAST_ERR=/tmp/tmp.XTmkdd742X + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.fR40UeOvdk + cat /tmp/tmp.XTmkdd742X + rm /tmp/tmp.fR40UeOvdk /tmp/tmp.XTmkdd742X + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.Dui3sedbhs ++ mktemp + local LAST_ERR=/tmp/tmp.H2C6kdSjcu + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Dui3sedbhs + cat /tmp/tmp.H2C6kdSjcu + rm /tmp/tmp.Dui3sedbhs /tmp/tmp.H2C6kdSjcu + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.dZKpA7933v ++ mktemp + local LAST_ERR=/tmp/tmp.OcvIXdimE6 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.dZKpA7933v + cat /tmp/tmp.OcvIXdimE6 + rm /tmp/tmp.dZKpA7933v /tmp/tmp.OcvIXdimE6 + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.LA2mydeqds ++ mktemp + local LAST_ERR=/tmp/tmp.lvOYVVWUPO + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.LA2mydeqds + cat /tmp/tmp.lvOYVVWUPO + rm /tmp/tmp.LA2mydeqds /tmp/tmp.lvOYVVWUPO + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.RoH2Qf80FE ++ mktemp + local LAST_ERR=/tmp/tmp.qwbX6oqCcw + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.RoH2Qf80FE + cat /tmp/tmp.qwbX6oqCcw + rm /tmp/tmp.RoH2Qf80FE /tmp/tmp.qwbX6oqCcw + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.B15sVc5ZkM ++ mktemp + local LAST_ERR=/tmp/tmp.hENk2kb9Du + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.B15sVc5ZkM + cat /tmp/tmp.hENk2kb9Du + rm /tmp/tmp.B15sVc5ZkM /tmp/tmp.hENk2kb9Du + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.XOvMzcK9Z9 ++ mktemp + local LAST_ERR=/tmp/tmp.UrjgneLyFF + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.XOvMzcK9Z9 + cat /tmp/tmp.UrjgneLyFF + rm /tmp/tmp.XOvMzcK9Z9 /tmp/tmp.UrjgneLyFF + return 0 + echo -n . .+ sleep 1 + grep -q invalid-image:invalid-tag + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' ++ mktemp + local LAST_OUT=/tmp/tmp.hUogG87BmC ++ mktemp + local LAST_ERR=/tmp/tmp.HvE3FbsARR + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.hUogG87BmC + cat /tmp/tmp.HvE3FbsARR + rm /tmp/tmp.hUogG87BmC /tmp/tmp.HvE3FbsARR + return 0 + echo -n . .+ sleep 1 + kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + grep -q invalid-image:invalid-tag ++ mktemp + local LAST_OUT=/tmp/tmp.umTzcaogOU ++ mktemp + local LAST_ERR=/tmp/tmp.2KC1Ik7D8K + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get statefulset some-name-rs0 -o 'jsonpath={range .spec.template.spec.containers[*]}{.image}{"\n"}{end}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.umTzcaogOU + cat /tmp/tmp.2KC1Ik7D8K + rm /tmp/tmp.umTzcaogOU /tmp/tmp.2KC1Ik7D8K + return 0 + echo + echo 'Deleting crashing pod some-name-rs0-2' Deleting crashing pod some-name-rs0-2 + kubectl_bin delete pod some-name-rs0-2 --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.SViGzQpSSW ++ mktemp + local LAST_ERR=/tmp/tmp.JyHYAEeqsx + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete pod some-name-rs0-2 --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.SViGzQpSSW pod "some-name-rs0-2" deleted from demand-backup-if-unhealthy-9516 namespace + cat /tmp/tmp.JyHYAEeqsx + rm /tmp/tmp.SViGzQpSSW /tmp/tmp.JyHYAEeqsx + return 0 + wait_for_cluster_state some-name ready + local cluster_name=some-name + local target_state=ready + echo -n 'Waiting for psmdb/some-name to reach ready state' Waiting for psmdb/some-name to reach ready state+ local timeout=0 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Gsqg8ZxEMX +++ mktemp ++ local LAST_ERR=/tmp/tmp.1Ogkh1yp8o ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Gsqg8ZxEMX ++ cat /tmp/tmp.1Ogkh1yp8o ++ rm /tmp/tmp.Gsqg8ZxEMX /tmp/tmp.1Ogkh1yp8o ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=1 + echo -n . .+ [[ 1 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.poN15Jdoar +++ mktemp ++ local LAST_ERR=/tmp/tmp.FNtegN6hMc ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.poN15Jdoar ++ cat /tmp/tmp.FNtegN6hMc ++ rm /tmp/tmp.poN15Jdoar /tmp/tmp.FNtegN6hMc ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=2 + echo -n . .+ [[ 2 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.NxlBDYV2MG +++ mktemp ++ local LAST_ERR=/tmp/tmp.8xU6Sgp48G ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.NxlBDYV2MG ++ cat /tmp/tmp.8xU6Sgp48G ++ rm /tmp/tmp.NxlBDYV2MG /tmp/tmp.8xU6Sgp48G ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=3 + echo -n . .+ [[ 3 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.XISzhcsxLb +++ mktemp ++ local LAST_ERR=/tmp/tmp.GlNDHY7sx9 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.XISzhcsxLb ++ cat /tmp/tmp.GlNDHY7sx9 ++ rm /tmp/tmp.XISzhcsxLb /tmp/tmp.GlNDHY7sx9 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=4 + echo -n . .+ [[ 4 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.h2g6gWfcmn +++ mktemp ++ local LAST_ERR=/tmp/tmp.m9LY2DCZvI ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.h2g6gWfcmn ++ cat /tmp/tmp.m9LY2DCZvI ++ rm /tmp/tmp.h2g6gWfcmn /tmp/tmp.m9LY2DCZvI ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=5 + echo -n . .+ [[ 5 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.5ZhhKWeGLV +++ mktemp ++ local LAST_ERR=/tmp/tmp.2nmzRsy0nl ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.5ZhhKWeGLV ++ cat /tmp/tmp.2nmzRsy0nl ++ rm /tmp/tmp.5ZhhKWeGLV /tmp/tmp.2nmzRsy0nl ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=6 + echo -n . .+ [[ 6 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xHlNkMUD6R +++ mktemp ++ local LAST_ERR=/tmp/tmp.EpOOTwAzKs ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.xHlNkMUD6R ++ cat /tmp/tmp.EpOOTwAzKs ++ rm /tmp/tmp.xHlNkMUD6R /tmp/tmp.EpOOTwAzKs ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=7 + echo -n . .+ [[ 7 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.yjiGw4hbt7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.pCC5ChWZc6 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.yjiGw4hbt7 ++ cat /tmp/tmp.pCC5ChWZc6 ++ rm /tmp/tmp.yjiGw4hbt7 /tmp/tmp.pCC5ChWZc6 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=8 + echo -n . .+ [[ 8 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.PZNGCfnX2j +++ mktemp ++ local LAST_ERR=/tmp/tmp.qTO5zAsZR4 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.PZNGCfnX2j ++ cat /tmp/tmp.qTO5zAsZR4 ++ rm /tmp/tmp.PZNGCfnX2j /tmp/tmp.qTO5zAsZR4 ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=9 + echo -n . .+ [[ 9 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.vxeamGQjiI +++ mktemp ++ local LAST_ERR=/tmp/tmp.h6cAvrHerM ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.vxeamGQjiI ++ cat /tmp/tmp.h6cAvrHerM ++ rm /tmp/tmp.vxeamGQjiI /tmp/tmp.h6cAvrHerM ++ return 0 + [[ initializing =~ ready ]] + sleep 1 + timeout=10 + echo -n . .+ [[ 10 -gt 1500 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.uNoX8uIUVf +++ mktemp ++ local LAST_ERR=/tmp/tmp.fRXBRgQoPy ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.uNoX8uIUVf ++ cat /tmp/tmp.fRXBRgQoPy ++ rm /tmp/tmp.uNoX8uIUVf /tmp/tmp.fRXBRgQoPy ++ return 0 + [[ ready =~ ready ]] + echo + log 'psmdb/some-name is ready: OK' + set +o xtrace [2026-06-09T07:40:35+0000] psmdb/some-name is ready: OK + desc 'Delete data and run restore of backup-minio-logical' + set +o xtrace ----------------------------------------------------------------------------------- Delete data and run restore of backup-minio-logical ----------------------------------------------------------------------------------- + delete_data 'This is some data for backup if unhealthy' + local 'data=This is some data for backup if unhealthy' + run_mongo 'use myApp\n db.test.deleteOne({ x: "This is some data for backup if unhealthy" })' myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 + local 'command=use myApp\n db.test.deleteOne({ x: "This is some data for backup if unhealthy" })' + local uri=myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb+srv + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.FJWtzhQ4Ru +++ mktemp ++ local LAST_ERR=/tmp/tmp.TBJn3AHSEj ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.FJWtzhQ4Ru ++ cat /tmp/tmp.TBJn3AHSEj ++ rm /tmp/tmp.FJWtzhQ4Ru /tmp/tmp.TBJn3AHSEj ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.deleteOne({ x: "This is some data for backup if unhealthy" })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.ETD1PJDgvZ ++ mktemp + local LAST_ERR=/tmp/tmp.7BueOw9jXR + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.deleteOne({ x: "This is some data for backup if unhealthy" })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ETD1PJDgvZ Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017,some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("37431134-27e5-4822-b52d-211da4c0abfd") } Percona Server for MongoDB server version: v8.0.23-10 WARNING: shell and server versions do not match switched to db myApp { "acknowledged" : true, "deletedCount" : 1 } bye + cat /tmp/tmp.7BueOw9jXR + rm /tmp/tmp.ETD1PJDgvZ /tmp/tmp.7BueOw9jXR + return 0 + run_restore backup-minio-logical + local backup_name=backup-minio-logical + local restore_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/restore.yml + log 'running restore restore-backup-minio-logical' + set +o xtrace [2026-06-09T07:40:38+0000] running restore restore-backup-minio-logical + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-minio-logical/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-minio-logical/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.tEv4izj7Pi ++ mktemp + local LAST_ERR=/tmp/tmp.mO93JrH5aR + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.tEv4izj7Pi perconaservermongodbrestore.psmdb.percona.com/restore-backup-minio-logical created + cat /tmp/tmp.mO93JrH5aR + rm /tmp/tmp.tEv4izj7Pi /tmp/tmp.mO93JrH5aR + return 0 + wait_restore backup-minio-logical some-name + local backup_name=backup-minio-logical + local cluster_name=some-name + local target_state=ready + local wait_cluster_consistency=1 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio-logical object to be created.OK Waiting psmdb-restore/restore-backup-minio-logical to reach state "ready" .OK after 0 minutes + [[ 1 -eq 1 ]] + wait_cluster_consistency some-name + local cluster_name=some-name + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster readyness' waiting for cluster readyness++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.kGE3k5oRLc +++ mktemp ++ local LAST_ERR=/tmp/tmp.tg1Dtno82O ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.kGE3k5oRLc ++ cat /tmp/tmp.tg1Dtno82O ++ rm /tmp/tmp.kGE3k5oRLc /tmp/tmp.tg1Dtno82O ++ return 0 + [[ ready == ready ]] + echo .OK .OK + wait_for_cluster_state some-name ready + local cluster_name=some-name + local target_state=ready + echo -n 'Waiting for psmdb/some-name to reach ready state' Waiting for psmdb/some-name to reach ready state+ local timeout=0 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ub01Hgaigw +++ mktemp ++ local LAST_ERR=/tmp/tmp.jHeVSMojNA ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Ub01Hgaigw ++ cat /tmp/tmp.jHeVSMojNA ++ rm /tmp/tmp.Ub01Hgaigw /tmp/tmp.jHeVSMojNA ++ return 0 + [[ ready =~ ready ]] + echo + log 'psmdb/some-name is ready: OK' + set +o xtrace [2026-06-09T07:41:05+0000] psmdb/some-name is ready: OK + desc 'Verify data is back to the cluster' + set +o xtrace ----------------------------------------------------------------------------------- Verify data is back to the cluster ----------------------------------------------------------------------------------- + simple_data_check some-name 3 0 -rs0 + local cluster_name=some-name + let last_pod=3-1 + local isSharded=0 + local cluster_pfx=-rs0 + '[' 0 -eq 1 ']' ++ seq 0 2 + for i in $(seq 0 $last_pod) + compare_mongo_cmd find myApp:myPass@some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516 + local command=find + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local replicaset= + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2026-06-09T07:41:05+0000] running db.test.find() in myApp + [[ false == true ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516 mongodb '' '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ myApp:myPass@some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] + grep -E -v 'I NETWORK|W NETWORK|F NETWORK|"c":"NETWORK"|Error saving history file|Percona Server for MongoDB|connecting to:|Unable to reach primary for set|Implicit session:|versions do not match|Error saving history file:|Started a new thread for the timer service' + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.R9y3C3LcAJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.gEBVJx9FGz ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.R9y3C3LcAJ ++ cat /tmp/tmp.gEBVJx9FGz ++ rm /tmp/tmp.R9y3C3LcAJ /tmp/tmp.gEBVJx9FGz ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.nIJQscbgiW ++ mktemp + local LAST_ERR=/tmp/tmp.acaGuH693r + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.nIJQscbgiW + cat /tmp/tmp.acaGuH693r + rm /tmp/tmp.nIJQscbgiW /tmp/tmp.acaGuH693r + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/compare/find.json /tmp/tmp.auPFCQZrKd/find + for i in $(seq 0 $last_pod) + compare_mongo_cmd find myApp:myPass@some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516 + local command=find + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local replicaset= + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2026-06-09T07:41:08+0000] running db.test.find() in myApp + [[ false == true ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516 mongodb '' '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ myApp:myPass@some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] + grep -E -v 'I NETWORK|W NETWORK|F NETWORK|"c":"NETWORK"|Error saving history file|Percona Server for MongoDB|connecting to:|Unable to reach primary for set|Implicit session:|versions do not match|Error saving history file:|Started a new thread for the timer service' + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.XPaK1wuanX +++ mktemp ++ local LAST_ERR=/tmp/tmp.HlgQjOwKgC ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.XPaK1wuanX ++ cat /tmp/tmp.HlgQjOwKgC ++ rm /tmp/tmp.XPaK1wuanX /tmp/tmp.HlgQjOwKgC ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.oVvdaedesl ++ mktemp + local LAST_ERR=/tmp/tmp.2u90XpB4Gm + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.oVvdaedesl + cat /tmp/tmp.2u90XpB4Gm + rm /tmp/tmp.oVvdaedesl /tmp/tmp.2u90XpB4Gm + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/compare/find.json /tmp/tmp.auPFCQZrKd/find + for i in $(seq 0 $last_pod) + compare_mongo_cmd find myApp:myPass@some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516 + local command=find + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local replicaset= + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2026-06-09T07:41:10+0000] running db.test.find() in myApp + [[ false == true ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516 mongodb '' '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ myApp:myPass@some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516 == *cfg* ]] + grep -E -v 'I NETWORK|W NETWORK|F NETWORK|"c":"NETWORK"|Error saving history file|Percona Server for MongoDB|connecting to:|Unable to reach primary for set|Implicit session:|versions do not match|Error saving history file:|Started a new thread for the timer service' + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.e6Ckd971wY +++ mktemp ++ local LAST_ERR=/tmp/tmp.PLckbBDcuD ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.e6Ckd971wY ++ cat /tmp/tmp.PLckbBDcuD ++ rm /tmp/tmp.e6Ckd971wY /tmp/tmp.PLckbBDcuD ++ return 0 + local client_container=psmdb-client-bb8b97679-9jn2j + kubectl_bin exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.CcJp4m5M4Y ++ mktemp + local LAST_ERR=/tmp/tmp.O1s4WleVza + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-9jn2j -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.demand-backup-if-unhealthy-9516.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.CcJp4m5M4Y + cat /tmp/tmp.O1s4WleVza + rm /tmp/tmp.CcJp4m5M4Y /tmp/tmp.O1s4WleVza + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/demand-backup-if-unhealthy/compare/find.json /tmp/tmp.auPFCQZrKd/find + destroy demand-backup-if-unhealthy-9516 + local namespace=demand-backup-if-unhealthy-9516 + local ignore_logs=true + [[ 1 == 1 ]] + echo 'SKIP_DELETE=1, not destroying demand-backup-if-unhealthy-9516' SKIP_DELETE=1, not destroying demand-backup-if-unhealthy-9516 + return + desc 'test passed' + set +o xtrace ----------------------------------------------------------------------------------- test passed -----------------------------------------------------------------------------------