Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/logs/scheduled-backup.log grep: warning: stray \ before - Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 + create_infra scheduled-backup-28065 + local ns=scheduled-backup-28065 + [[ 1 == 1 ]] + delete_crd + desc 'get and delete old CRDs and RBAC' + set +o xtrace ----------------------------------------------------------------------------------- get and delete old CRDs and RBAC ----------------------------------------------------------------------------------- + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.DQSxmDlCLf ++ mktemp + local LAST_ERR=/tmp/tmp.PU5QWynSHX + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DQSxmDlCLf customresourcedefinition.apiextensions.k8s.io "perconaservermongodbbackups.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbrestores.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbs.psmdb.percona.com" deleted + cat /tmp/tmp.PU5QWynSHX + rm /tmp/tmp.DQSxmDlCLf /tmp/tmp.PU5QWynSHX + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/crd.yaml ++ grep -v '\-\-\-' grep: warning: stray \ before - grep: warning: stray \ before - + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbbackups.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbbackups.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n scheduled-backup-16996 cron-some-name-20251114124900-c544z --type=merge -p '{"metadata":{"finalizers":[]}}' Error from server (NotFound): perconaservermongodbbackups.psmdb.percona.com "cron-some-name-20251114124900-c544z" not found + : + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.PJTPl6VQO8 ++ mktemp + local LAST_ERR=/tmp/tmp.PCVmKsVjYJ + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.PJTPl6VQO8 + cat /tmp/tmp.PCVmKsVjYJ + rm /tmp/tmp.PJTPl6VQO8 /tmp/tmp.PCVmKsVjYJ + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbrestores.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbrestores.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbrestores" + kubectl patch perconaservermongodbrestores.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbrestores" + : + kubectl_bin wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.xDAN0jBsue ++ mktemp + local LAST_ERR=/tmp/tmp.bXeHNZlCok + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.xDAN0jBsue + cat /tmp/tmp.bXeHNZlCok + rm /tmp/tmp.xDAN0jBsue /tmp/tmp.bXeHNZlCok + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbs.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbs.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbs" + kubectl patch perconaservermongodbs.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbs" + : + kubectl_bin wait --for=delete crd perconaservermongodbs.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.mpak7TqbdV ++ mktemp + local LAST_ERR=/tmp/tmp.ul8s9X0ffU + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.mpak7TqbdV + cat /tmp/tmp.ul8s9X0ffU + rm /tmp/tmp.mpak7TqbdV /tmp/tmp.ul8s9X0ffU + return 0 + local rbac_yaml=rbac.yaml + '[' -n psmdb-operator ']' + rbac_yaml=cw-rbac.yaml + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.6al6S7HYwg ++ mktemp + local LAST_ERR=/tmp/tmp.cGZE3DM3kt + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.6al6S7HYwg clusterrole.rbac.authorization.k8s.io "percona-server-mongodb-operator" deleted clusterrolebinding.rbac.authorization.k8s.io "service-account-percona-server-mongodb-operator" deleted + cat /tmp/tmp.cGZE3DM3kt + rm /tmp/tmp.6al6S7HYwg /tmp/tmp.cGZE3DM3kt + return 0 + check_crd_for_deletion PR-2044-cbb0b708 + local git_tag=PR-2044-cbb0b708 ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-2044-cbb0b708/deploy/crd.yaml ++ yq eval .metadata.name ++ /usr/sbin/sed s/---//g ++ /usr/sbin/sed ':a;N;$!ba;s/\n/ /g' + for crd_name in $(curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/${git_tag}/deploy/crd.yaml | yq eval '.metadata.name' | $sed 's/---//g' | $sed ':a;N;$!ba;s/\n/ /g') ++ kubectl_bin get crd/null -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.B8UVf8AuxT +++ mktemp ++ local LAST_ERR=/tmp/tmp.9k5iukt0PR ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.B8UVf8AuxT ++ cat /tmp/tmp.9k5iukt0PR Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 0 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.B8UVf8AuxT ++ cat /tmp/tmp.9k5iukt0PR Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 4 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.B8UVf8AuxT ++ cat /tmp/tmp.9k5iukt0PR Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.B8UVf8AuxT ++ cat /tmp/tmp.9k5iukt0PR Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.B8UVf8AuxT /tmp/tmp.9k5iukt0PR ++ return 1 + [[ '' == \T\e\r\m\i\n\a\t\i\n\g ]] + '[' -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 ++ grep validate-auth ++ awk '{print $1}' + 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 + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' + desc 'cleaned up old namespaces psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + xargs kubectl delete ns + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp ++ mktemp egrep: warning: egrep is obsolescent; using grep -E + local LAST_OUT=/tmp/tmp.D6FVXVqJ0O + local LAST_OUT=/tmp/tmp.mUc0xDTJGC ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.D5ucpm9pdS + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.0ou5Tn2V4Q + 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 psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.mUc0xDTJGC + cat /tmp/tmp.D5ucpm9pdS + rm /tmp/tmp.mUc0xDTJGC /tmp/tmp.D5ucpm9pdS + return 0 namespace "scheduled-backup-16996" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.D6FVXVqJ0O namespace "psmdb-operator" deleted + cat /tmp/tmp.0ou5Tn2V4Q + rm /tmp/tmp.D6FVXVqJ0O /tmp/tmp.0ou5Tn2V4Q + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.0LbunyASuO ++ mktemp + local LAST_ERR=/tmp/tmp.qe4CGx9Ojr + 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.0LbunyASuO + cat /tmp/tmp.qe4CGx9Ojr + rm /tmp/tmp.0LbunyASuO /tmp/tmp.qe4CGx9Ojr + 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.E0UysscWYV ++ mktemp + local LAST_ERR=/tmp/tmp.mpPkN9ABx2 + 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.E0UysscWYV namespace/psmdb-operator created + cat /tmp/tmp.mpPkN9ABx2 + rm /tmp/tmp.E0UysscWYV /tmp/tmp.mpPkN9ABx2 + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.evtLHZyGDa +++ mktemp ++ local LAST_ERR=/tmp/tmp.HQGsu9aEH6 ++ 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.evtLHZyGDa ++ cat /tmp/tmp.HQGsu9aEH6 ++ rm /tmp/tmp.evtLHZyGDa /tmp/tmp.HQGsu9aEH6 ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2044-cbb0b708-5-cluster9 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.lyrlSpxtQK ++ mktemp + local LAST_ERR=/tmp/tmp.uc1by0lMEg + 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-2044-cbb0b708-5-cluster9 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.lyrlSpxtQK Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2044-cbb0b708-5-cluster9" modified. + cat /tmp/tmp.uc1by0lMEg + rm /tmp/tmp.lyrlSpxtQK /tmp/tmp.uc1by0lMEg + return 0 + deploy_operator + desc 'start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-2044-cbb0b708' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-2044-cbb0b708 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.jORDO86QWS ++ mktemp + local LAST_ERR=/tmp/tmp.bVNxawKwZV + 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-2044/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.jORDO86QWS 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.bVNxawKwZV + rm /tmp/tmp.jORDO86QWS /tmp/tmp.bVNxawKwZV + 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-2044/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.rFCo6aTuJm ++ mktemp + local LAST_ERR=/tmp/tmp.azLP7vi3d2 + 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.rFCo6aTuJm 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.azLP7vi3d2 + rm /tmp/tmp.rFCo6aTuJm /tmp/tmp.azLP7vi3d2 + return 0 + yq eval ' (.spec.template.spec.containers[].image = "perconalab/percona-server-mongodb-operator:PR-2044-cbb0b708") | ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.pT1p6OsVNX ++ mktemp + local LAST_ERR=/tmp/tmp.ftStWHZ91Y + 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.pT1p6OsVNX deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.ftStWHZ91Y + rm /tmp/tmp.pT1p6OsVNX /tmp/tmp.ftStWHZ91Y + 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.xgdDJ8mHvO +++ mktemp ++ local LAST_ERR=/tmp/tmp.zFW3dIUEKN ++ 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.xgdDJ8mHvO ++ cat /tmp/tmp.zFW3dIUEKN ++ rm /tmp/tmp.xgdDJ8mHvO /tmp/tmp.zFW3dIUEKN ++ return 0 + wait_operator_pod percona-server-mongodb-operator-d759cf959-vfg8s + local pod=percona-server-mongodb-operator-d759cf959-vfg8s + set +o xtrace waiting for pod/percona-server-mongodb-operator-d759cf959-vfg8s to be ready.OK + echo 'Print operator info from log' Print operator info from log + grep 'Manager starting up' ++ 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.iqPbiA4vyC +++ mktemp ++ local LAST_ERR=/tmp/tmp.His9Up3B6B ++ 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.iqPbiA4vyC ++ cat /tmp/tmp.His9Up3B6B ++ rm /tmp/tmp.iqPbiA4vyC /tmp/tmp.His9Up3B6B ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-d759cf959-vfg8s ++ mktemp + local LAST_OUT=/tmp/tmp.wutOzZuHQC ++ mktemp + local LAST_ERR=/tmp/tmp.M0R0gWLCdy + 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-d759cf959-vfg8s + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wutOzZuHQC + cat /tmp/tmp.M0R0gWLCdy + rm /tmp/tmp.wutOzZuHQC /tmp/tmp.M0R0gWLCdy + return 0 2025-11-14T12:52:19.144Z INFO setup Manager starting up {"gitCommit": "cbb0b708b6ccf40f9a926508ae094a52f04486b0", "gitBranch": "PR-2044-cbb0b708", "buildTime": "", "goVersion": "go1.25.4", "os": "linux", "arch": "amd64"} + create_namespace scheduled-backup-28065 + local namespace=scheduled-backup-28065 + 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 ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + 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 + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' ++ mktemp + awk '{print$1}' + '[' -n '' ']' + desc 'cleaned up old namespaces scheduled-backup-28065' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces scheduled-backup-28065 ----------------------------------------------------------------------------------- + xargs kubectl delete ns + kubectl_bin delete namespace scheduled-backup-28065 --ignore-not-found + local LAST_OUT=/tmp/tmp.qAL6zXZdGw egrep: warning: egrep is obsolescent; using grep -E ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.kvk3puWlaO + local LAST_ERR=/tmp/tmp.ynuwreKOpq + local exit_status=0 + local timeout=4 ++ seq 0 2 ++ mktemp + for i in $(seq 0 2) + set +e + kubectl get ns + local LAST_ERR=/tmp/tmp.P0kYVo3QPr + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace scheduled-backup-28065 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.qAL6zXZdGw + cat /tmp/tmp.ynuwreKOpq + rm /tmp/tmp.qAL6zXZdGw /tmp/tmp.ynuwreKOpq + return 0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.kvk3puWlaO + cat /tmp/tmp.P0kYVo3QPr error: resource(s) were provided, but no name was specified + rm /tmp/tmp.kvk3puWlaO /tmp/tmp.P0kYVo3QPr + return 0 + kubectl_bin wait --for=delete namespace scheduled-backup-28065 ++ mktemp + local LAST_OUT=/tmp/tmp.lN8wjacmy6 ++ mktemp + local LAST_ERR=/tmp/tmp.UYWXrBetgs + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace scheduled-backup-28065 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.lN8wjacmy6 + cat /tmp/tmp.UYWXrBetgs + rm /tmp/tmp.lN8wjacmy6 /tmp/tmp.UYWXrBetgs + return 0 + desc 'create namespace scheduled-backup-28065' + set +o xtrace ----------------------------------------------------------------------------------- create namespace scheduled-backup-28065 ----------------------------------------------------------------------------------- + kubectl_bin create namespace scheduled-backup-28065 ++ mktemp + local LAST_OUT=/tmp/tmp.wFDffHveO6 ++ mktemp + local LAST_ERR=/tmp/tmp.lFikckW6FS + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace scheduled-backup-28065 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wFDffHveO6 namespace/scheduled-backup-28065 created + cat /tmp/tmp.lFikckW6FS + rm /tmp/tmp.wFDffHveO6 /tmp/tmp.lFikckW6FS + return 0 + set_kube_ctx scheduled-backup-28065 + local namespace=scheduled-backup-28065 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.67K7V75gvZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.gUN3WHXfBz ++ 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.67K7V75gvZ ++ cat /tmp/tmp.gUN3WHXfBz ++ rm /tmp/tmp.67K7V75gvZ /tmp/tmp.gUN3WHXfBz ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2044-cbb0b708-5-cluster9 --namespace=scheduled-backup-28065 ++ mktemp + local LAST_OUT=/tmp/tmp.gvA5w9cDqU ++ mktemp + local LAST_ERR=/tmp/tmp.RV6NLwiAZ4 + 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-2044-cbb0b708-5-cluster9 --namespace=scheduled-backup-28065 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.gvA5w9cDqU Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2044-cbb0b708-5-cluster9" modified. + cat /tmp/tmp.RV6NLwiAZ4 + rm /tmp/tmp.gvA5w9cDqU /tmp/tmp.RV6NLwiAZ4 + return 0 + deploy_minio + desc 'install Minio' + set +o xtrace ----------------------------------------------------------------------------------- install Minio ----------------------------------------------------------------------------------- + helm uninstall minio-service Error: uninstall: Release not loaded: minio-service: release: not found + : + 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 + 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/.minio/ --set persistence.size=2G --set securityContext.enabled=false 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/.minio/ --set persistence.size=2G --set securityContext.enabled=false minio/minio NAME: minio-service LAST DEPLOYED: Fri Nov 14 12:52:54 2025 NAMESPACE: scheduled-backup-28065 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.scheduled-backup-28065.cluster.local To access MinIO from localhost, run the below commands: 1. export POD_NAME=$(kubectl get pods --namespace scheduled-backup-28065 -l "release=minio-service" -o jsonpath="{.items[0].metadata.name}") 2. kubectl port-forward $POD_NAME 9000 --namespace scheduled-backup-28065 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 scheduled-backup-28065 minio-service -o jsonpath="{.data.rootUser}" | base64 --decode):$(kubectl get secret --namespace scheduled-backup-28065 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.YukeoAUYAg +++ mktemp ++ local LAST_ERR=/tmp/tmp.kLLUXE5saB ++ 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.YukeoAUYAg ++ cat /tmp/tmp.kLLUXE5saB ++ rm /tmp/tmp.YukeoAUYAg /tmp/tmp.kLLUXE5saB ++ return 0 + MINIO_POD=minio-service-d9589b474-lv4gx + wait_pod minio-service-d9589b474-lv4gx + local pod=minio-service-d9589b474-lv4gx + set +o xtrace waiting for pod/minio-service-d9589b474-lv4gx to be ready.OK + '[' -n psmdb-operator ']' + kubectl_bin create svc -n psmdb-operator externalname minio-service --external-name=minio-service.scheduled-backup-28065.svc.cluster.local --tcp=9000 ++ mktemp + local LAST_OUT=/tmp/tmp.dftPrR2Zql ++ mktemp + local LAST_ERR=/tmp/tmp.F7z7IfVkzd + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create svc -n psmdb-operator externalname minio-service --external-name=minio-service.scheduled-backup-28065.svc.cluster.local --tcp=9000 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.dftPrR2Zql service/minio-service created + cat /tmp/tmp.F7z7IfVkzd + rm /tmp/tmp.dftPrR2Zql /tmp/tmp.F7z7IfVkzd + return 0 + create_minio_bucket operator-testing + local bucket=operator-testing + kubectl_bin run -i --rm aws-cli --image=perconalab/awscli --restart=Never -- bash -c 'AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --endpoint-url http://minio-service:9000 s3 mb s3://operator-testing' ++ mktemp + local LAST_OUT=/tmp/tmp.qAzF6NHU0a ++ mktemp + local LAST_ERR=/tmp/tmp.s1n86UcNG3 + 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=perconalab/awscli --restart=Never -- bash -c 'AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --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.qAzF6NHU0a make_bucket: operator-testing pod "aws-cli" deleted from scheduled-backup-28065 namespace + cat /tmp/tmp.s1n86UcNG3 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. warning: couldn't attach to pod/aws-cli, falling back to streaming logs: Internal error occurred: unable to upgrade connection: container aws-cli not found in pod aws-cli_scheduled-backup-28065 + rm /tmp/tmp.qAzF6NHU0a /tmp/tmp.s1n86UcNG3 + return 0 + label_node ++ kubectl_bin get nodes -o custom-columns=NAME:.metadata.name --no-headers=true ++ head -n1 +++ mktemp ++ local LAST_OUT=/tmp/tmp.14znxeivxL +++ mktemp ++ local LAST_ERR=/tmp/tmp.5DQLiuaWAo ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get nodes -o custom-columns=NAME:.metadata.name --no-headers=true ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.14znxeivxL ++ cat /tmp/tmp.5DQLiuaWAo ++ rm /tmp/tmp.14znxeivxL /tmp/tmp.5DQLiuaWAo ++ return 0 + LABELED_NODE=gke-jen-psmdb-2044-cbb0b-default-pool-2c9cd257-2k5f + desc 'add labels' + set +o xtrace ----------------------------------------------------------------------------------- add labels ----------------------------------------------------------------------------------- + kubectl_bin label nodes gke-jen-psmdb-2044-cbb0b-default-pool-2c9cd257-2k5f backupWorker=True --overwrite ++ mktemp + local LAST_OUT=/tmp/tmp.sPSj8ZW6ET ++ mktemp + local LAST_ERR=/tmp/tmp.bKjbvPK9Wg + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl label nodes gke-jen-psmdb-2044-cbb0b-default-pool-2c9cd257-2k5f backupWorker=True --overwrite + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.sPSj8ZW6ET node/gke-jen-psmdb-2044-cbb0b-default-pool-2c9cd257-2k5f not labeled + cat /tmp/tmp.bKjbvPK9Wg + rm /tmp/tmp.sPSj8ZW6ET /tmp/tmp.bKjbvPK9Wg + return 0 + desc 'create PriorityClass' + set +o xtrace ----------------------------------------------------------------------------------- create PriorityClass ----------------------------------------------------------------------------------- + cat - + kubectl apply -f - priorityclass.scheduling.k8s.io/high-priority configured + desc 'create secrets and start client' + set +o xtrace ----------------------------------------------------------------------------------- create secrets and start client ----------------------------------------------------------------------------------- + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.061Lh4du4h ++ mktemp + local LAST_ERR=/tmp/tmp.MYm1jYx3EE + 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-2044/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/conf/client.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.061Lh4du4h secret/some-users created deployment.apps/psmdb-client created + cat /tmp/tmp.MYm1jYx3EE + rm /tmp/tmp.061Lh4du4h /tmp/tmp.MYm1jYx3EE + 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-2044/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.ubGZ1l9OYR ++ mktemp + local LAST_ERR=/tmp/tmp.1yue0sHVgU + 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-2044/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ubGZ1l9OYR secret/minio-secret created secret/aws-s3-secret created secret/gcp-cs-secret created secret/azure-secret created secret/gcp-cs-sa-key-secret created + cat /tmp/tmp.1yue0sHVgU + rm /tmp/tmp.ubGZ1l9OYR /tmp/tmp.1yue0sHVgU + return 0 + cluster=some-name-rs0 + desc 'create first PSMDB cluster some-name-rs0' + set +o xtrace ----------------------------------------------------------------------------------- create first PSMDB cluster some-name-rs0 ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0.yml + yq eval '(.spec | select(.image == null)).image = "perconalab/percona-server-mongodb-operator:main-mongod8.0"' ++ mktemp + yq eval '(.spec | select(has("initImage"))).initImage = "perconalab/percona-server-mongodb-operator:PR-2044-cbb0b708"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' + yq eval '.spec.upgradeOptions.apply="Never"' + local LAST_OUT=/tmp/tmp.WPZtCY9Um4 ++ mktemp + local LAST_ERR=/tmp/tmp.txFL2Tcyck + 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.WPZtCY9Um4 perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.txFL2Tcyck + rm /tmp/tmp.WPZtCY9Um4 /tmp/tmp.txFL2Tcyck + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- + wait_for_running some-name-rs0 3 + local name=some-name-rs0 + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs0 + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-rs0-0 + local pod=some-name-rs0-0 + set +o xtrace waiting for pod/some-name-rs0-0 to be ready........OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-rs0-1 + local pod=some-name-rs0-1 + set +o xtrace waiting for pod/some-name-rs0-1 to be ready.....OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.z6qJczJ2ER +++ mktemp ++ local LAST_ERR=/tmp/tmp.lD548MPqvR ++ 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={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.z6qJczJ2ER ++ cat /tmp/tmp.lD548MPqvR ++ rm /tmp/tmp.z6qJczJ2ER /tmp/tmp.lD548MPqvR ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-rs0-2 + local pod=some-name-rs0-2 + set +o xtrace waiting for pod/some-name-rs0-2 to be ready........OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Or6WaYVn2L +++ mktemp ++ local LAST_ERR=/tmp/tmp.A4KgbxlHIF ++ 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={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Or6WaYVn2L ++ cat /tmp/tmp.A4KgbxlHIF ++ rm /tmp/tmp.Or6WaYVn2L /tmp/tmp.A4KgbxlHIF ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.sDAYfUwJ5C +++ mktemp ++ local LAST_ERR=/tmp/tmp.vt8oTb3V6F ++ 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={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.sDAYfUwJ5C ++ cat /tmp/tmp.vt8oTb3V6F ++ rm /tmp/tmp.sDAYfUwJ5C /tmp/tmp.vt8oTb3V6F ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness.. + desc 'check if service and statefulset created with expected config' + set +o xtrace ----------------------------------------------------------------------------------- check if service and statefulset created with expected config ----------------------------------------------------------------------------------- + compare_kubectl statefulset/some-name-rs0 + local resource=statefulset/some-name-rs0 + local postfix= + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0.yml + local new_result=/tmp/tmp.tK5iyB6C6I/statefulset_some-name-rs0.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0-oc.yml ']' + kubectl_bin get -o yaml statefulset/some-name-rs0 + yq eval ' del(.metadata.ownerReferences[].apiVersion) | del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "NAMESPACE")) | del(.metadata.selfLink) | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.status) | (.. | select(tag == "!!str")) |= sub("scheduled-backup-28065", "NAME_SPACE") | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | (.. | select(. == "extensions/v1beta1")) = "apps/v1" | (.. | select(. == "batch/v1beta1")) = "batch/v1" ' - ++ mktemp + local LAST_OUT=/tmp/tmp.LLgHoq8AFr ++ mktemp + local LAST_ERR=/tmp/tmp.ZL7oYIX3mV + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/some-name-rs0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.LLgHoq8AFr + cat /tmp/tmp.ZL7oYIX3mV + rm /tmp/tmp.LLgHoq8AFr /tmp/tmp.ZL7oYIX3mV + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.tK5iyB6C6I/statefulset_some-name-rs0.yml + version_gt 1.22 ++ echo '1.31 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.tK5iyB6C6I/statefulset_some-name-rs0.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.tK5iyB6C6I/statefulset_some-name-rs0.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/statefulset_some-name-rs0.yml /tmp/tmp.tK5iyB6C6I/statefulset_some-name-rs0.yml + log 'compare_kubectl: statefulset/some-name-rs0 OK' + set +o xtrace [2025-11-14T12:55:03+0000] compare_kubectl: statefulset/some-name-rs0 OK + desc 'create user myApp' + set +o xtrace ----------------------------------------------------------------------------------- create user myApp ----------------------------------------------------------------------------------- + run_mongo 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-rs0.scheduled-backup-28065 + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-rs0.scheduled-backup-28065 + local driver=mongodb+srv + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.j2W2rBfQJL +++ mktemp ++ local LAST_ERR=/tmp/tmp.gGIGo9Xa0M ++ 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.j2W2rBfQJL ++ cat /tmp/tmp.gGIGo9Xa0M ++ rm /tmp/tmp.j2W2rBfQJL /tmp/tmp.gGIGo9Xa0M ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ userAdmin:userAdmin123456@some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.LE8y59P0HZ ++ mktemp + local LAST_ERR=/tmp/tmp.oW5wV7vu9m + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.LE8y59P0HZ Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017,some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("30ad9db9-5439-46eb-b587-d44bd1d60143") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.oW5wV7vu9m + rm /tmp/tmp.LE8y59P0HZ /tmp/tmp.oW5wV7vu9m + return 0 + sleep 2 + desc 'write data, read from all' + set +o xtrace ----------------------------------------------------------------------------------- write data, read from all ----------------------------------------------------------------------------------- + run_mongo 'use myApp\n db.test.insert({ x: 100500 })' myApp:myPass@some-name-rs0.scheduled-backup-28065 + local 'command=use myApp\n db.test.insert({ x: 100500 })' + local uri=myApp:myPass@some-name-rs0.scheduled-backup-28065 + local driver=mongodb+srv + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.sSDJ8iqdIx +++ mktemp ++ local LAST_ERR=/tmp/tmp.9uSlanszNb ++ 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.sSDJ8iqdIx ++ cat /tmp/tmp.9uSlanszNb ++ rm /tmp/tmp.sSDJ8iqdIx /tmp/tmp.9uSlanszNb ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.K3o5bP89sG ++ mktemp + local LAST_ERR=/tmp/tmp.oF6VIf6nkL + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.K3o5bP89sG Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017,some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("ee63f353-48f4-42c1-84a4-207a971186cc") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.oF6VIf6nkL + rm /tmp/tmp.K3o5bP89sG /tmp/tmp.oF6VIf6nkL + return 0 + compare_mongo_cmd find myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local command=find + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:55:10+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 mongodb '' + egrep -v 'I NETWORK|W NETWORK|F 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' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + /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 egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.M9RDmqvlxm +++ mktemp ++ local LAST_ERR=/tmp/tmp.uhAnyk2gvq ++ 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.M9RDmqvlxm ++ cat /tmp/tmp.uhAnyk2gvq ++ rm /tmp/tmp.M9RDmqvlxm /tmp/tmp.uhAnyk2gvq ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.8j16B9CNHi ++ mktemp + local LAST_ERR=/tmp/tmp.TiepsJz1gd + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.8j16B9CNHi + cat /tmp/tmp.TiepsJz1gd + rm /tmp/tmp.8j16B9CNHi /tmp/tmp.TiepsJz1gd + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find.json /tmp/tmp.tK5iyB6C6I/find + compare_mongo_cmd find myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + local command=find + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:55:13+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 mongodb '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + egrep -v 'I NETWORK|W NETWORK|F 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 egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.0CZ78aN82j +++ mktemp ++ local LAST_ERR=/tmp/tmp.O6445qvq5s ++ 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.0CZ78aN82j ++ cat /tmp/tmp.O6445qvq5s ++ rm /tmp/tmp.0CZ78aN82j /tmp/tmp.O6445qvq5s ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.TKtldZMAYh ++ mktemp + local LAST_ERR=/tmp/tmp.wnlmwx5tkA + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.TKtldZMAYh + cat /tmp/tmp.wnlmwx5tkA + rm /tmp/tmp.TKtldZMAYh /tmp/tmp.wnlmwx5tkA + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find.json /tmp/tmp.tK5iyB6C6I/find + compare_mongo_cmd find myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local command=find + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:55:16+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 mongodb '' + egrep -v 'I NETWORK|W NETWORK|F 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' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + /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 egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.NQ2zxtt9ii +++ mktemp ++ local LAST_ERR=/tmp/tmp.wWNJ8VTpJJ ++ 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.NQ2zxtt9ii ++ cat /tmp/tmp.wWNJ8VTpJJ ++ rm /tmp/tmp.NQ2zxtt9ii /tmp/tmp.wWNJ8VTpJJ ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.2RHUN6FLiJ ++ mktemp + local LAST_ERR=/tmp/tmp.E0eidSrCTP + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2RHUN6FLiJ + cat /tmp/tmp.E0eidSrCTP + rm /tmp/tmp.2RHUN6FLiJ /tmp/tmp.E0eidSrCTP + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find.json /tmp/tmp.tK5iyB6C6I/find + wait_backup_agent some-name-rs0-0 + local agent_pod=some-name-rs0-0 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs0-0...2025-11-14T12:54:57.000+0000 I listening for the commands + wait_backup_agent some-name-rs0-1 + local agent_pod=some-name-rs0-1 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs0-1...2025-11-14T12:55:02.000+0000 I listening for the commands + wait_backup_agent some-name-rs0-2 + local agent_pod=some-name-rs0-2 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs0-2...2025-11-14T12:55:03.000+0000 I listening for the commands + desc 'add backups schedule, wait for backups' + set +o xtrace ----------------------------------------------------------------------------------- add backups schedule, wait for backups ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0-2.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0-2.yml + kubectl_bin apply -f - ++ mktemp + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0-2.yml + yq eval '(.spec | select(.image == null)).image = "perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("initImage"))).initImage = "perconalab/percona-server-mongodb-operator:PR-2044-cbb0b708"' + local LAST_OUT=/tmp/tmp.qtQVB5usnD + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' + yq eval '.spec.upgradeOptions.apply="Never"' ++ mktemp + local LAST_ERR=/tmp/tmp.6SVhwOzCoJ + 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.qtQVB5usnD perconaservermongodb.psmdb.percona.com/some-name configured + cat /tmp/tmp.6SVhwOzCoJ + rm /tmp/tmp.qtQVB5usnD /tmp/tmp.6SVhwOzCoJ + return 0 + sleep 55 + desc 'disable backups schedule' + set +o xtrace ----------------------------------------------------------------------------------- disable backups schedule ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/some-name-rs0.yml ++ mktemp + yq eval '(.spec | select(.image == null)).image = "perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("initImage"))).initImage = "perconalab/percona-server-mongodb-operator:PR-2044-cbb0b708"' + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' + yq eval '.spec.upgradeOptions.apply="Never"' + local LAST_OUT=/tmp/tmp.Ainmi2iMSK ++ mktemp + local LAST_ERR=/tmp/tmp.goFsr3uW0A + 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.Ainmi2iMSK perconaservermongodb.psmdb.percona.com/some-name configured + cat /tmp/tmp.goFsr3uW0A + rm /tmp/tmp.Ainmi2iMSK /tmp/tmp.goFsr3uW0A + return 0 + '[' -z '' ']' ++ kubectl_bin get psmdb-backup ++ grep aws-s3 ++ awk '{print$1}' +++ mktemp ++ head -1 ++ local LAST_OUT=/tmp/tmp.k5XCafegFr +++ mktemp ++ local LAST_ERR=/tmp/tmp.IEMTqHzLzl ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.k5XCafegFr ++ cat /tmp/tmp.IEMTqHzLzl ++ rm /tmp/tmp.k5XCafegFr /tmp/tmp.IEMTqHzLzl ++ return 0 + backup_name_aws=cron-some-name-20251114125600-4f4p4 ++ kubectl_bin get psmdb-backup ++ grep gcp-cs ++ awk '{print$1}' ++ head -1 +++ mktemp ++ local LAST_OUT=/tmp/tmp.ir7GqZtnf2 +++ mktemp ++ local LAST_ERR=/tmp/tmp.cY3WaeSn39 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ir7GqZtnf2 ++ cat /tmp/tmp.cY3WaeSn39 ++ rm /tmp/tmp.ir7GqZtnf2 /tmp/tmp.cY3WaeSn39 ++ return 0 + backup_name_gcp=cron-some-name-20251114125600-zkqcg ++ kubectl_bin get psmdb-backup ++ grep azure-blob ++ awk '{print$1}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.5hLvMa6cRp +++ mktemp ++ head -1 ++ local LAST_ERR=/tmp/tmp.OTmqNa5xq0 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.5hLvMa6cRp ++ cat /tmp/tmp.OTmqNa5xq0 ++ rm /tmp/tmp.5hLvMa6cRp /tmp/tmp.OTmqNa5xq0 ++ return 0 + backup_name_azure=cron-some-name-20251114125600-k4gw4 + wait_backup cron-some-name-20251114125600-4f4p4 + local backup_name=cron-some-name-20251114125600-4f4p4 + local target_state=ready + set +o xtrace waiting for cron-some-name-20251114125600-4f4p4 to reach ready state..OK + wait_backup cron-some-name-20251114125600-zkqcg + local backup_name=cron-some-name-20251114125600-zkqcg + local target_state=ready + set +o xtrace waiting for cron-some-name-20251114125600-zkqcg to reach ready state.......OK + wait_backup cron-some-name-20251114125600-k4gw4 + local backup_name=cron-some-name-20251114125600-k4gw4 + local target_state=ready + set +o xtrace waiting for cron-some-name-20251114125600-k4gw4 to reach ready state..OK ++ kubectl_bin get psmdb-backup ++ grep minio ++ awk '{print$1}' ++ head -1 +++ mktemp ++ local LAST_OUT=/tmp/tmp.0aa1csFagl +++ mktemp ++ local LAST_ERR=/tmp/tmp.0mdKVE9Lfz ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0aa1csFagl ++ cat /tmp/tmp.0mdKVE9Lfz ++ rm /tmp/tmp.0aa1csFagl /tmp/tmp.0mdKVE9Lfz ++ return 0 + backup_name_minio=cron-some-name-20251114125600-tj87h + wait_backup cron-some-name-20251114125600-tj87h + local backup_name=cron-some-name-20251114125600-tj87h + local target_state=ready + set +o xtrace waiting for cron-some-name-20251114125600-tj87h to reach ready state..OK + sleep 5 + echo -n 'checking backup count for every-min-minio...' checking backup count for every-min-minio...+ check_backup_count every-min-minio 1 + local ancestor=every-min-minio + local expected=1 ++ kubectl_bin get psmdb-backup -l percona.com/backup-ancestor=every-min-minio ++ grep ready ++ wc -l +++ mktemp ++ local LAST_OUT=/tmp/tmp.iw2sl0crcs +++ mktemp ++ local LAST_ERR=/tmp/tmp.pqnPlN4fTL ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup -l percona.com/backup-ancestor=every-min-minio ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.iw2sl0crcs ++ cat /tmp/tmp.pqnPlN4fTL ++ rm /tmp/tmp.iw2sl0crcs /tmp/tmp.pqnPlN4fTL ++ return 0 + local count=1 + count=1 + [[ 1 != 1 ]] + echo OK OK + echo -n 'checking backup count for every-min-aws-s3...' checking backup count for every-min-aws-s3...+ check_backup_count every-min-aws-s3 1 + local ancestor=every-min-aws-s3 + local expected=1 ++ kubectl_bin get psmdb-backup -l percona.com/backup-ancestor=every-min-aws-s3 ++ grep ready ++ wc -l +++ mktemp ++ local LAST_OUT=/tmp/tmp.bTaWHQSmCl +++ mktemp ++ local LAST_ERR=/tmp/tmp.GSAaFjPrZs ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup -l percona.com/backup-ancestor=every-min-aws-s3 ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.bTaWHQSmCl ++ cat /tmp/tmp.GSAaFjPrZs ++ rm /tmp/tmp.bTaWHQSmCl /tmp/tmp.GSAaFjPrZs ++ return 0 + local count=1 + count=1 + [[ 1 != 1 ]] + echo OK OK + echo -n 'checking backup count for every-min-gcp-cs...' checking backup count for every-min-gcp-cs...+ check_backup_count every-min-gcp-cs 1 + local ancestor=every-min-gcp-cs + local expected=1 ++ kubectl_bin get psmdb-backup -l percona.com/backup-ancestor=every-min-gcp-cs ++ grep ready ++ wc -l +++ mktemp ++ local LAST_OUT=/tmp/tmp.uBC5xnDXtO +++ mktemp ++ local LAST_ERR=/tmp/tmp.a6noAmPG24 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup -l percona.com/backup-ancestor=every-min-gcp-cs ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.uBC5xnDXtO ++ cat /tmp/tmp.a6noAmPG24 ++ rm /tmp/tmp.uBC5xnDXtO /tmp/tmp.a6noAmPG24 ++ return 0 + local count=1 + count=1 + [[ 1 != 1 ]] + echo OK OK + echo -n 'checking backup count for every-min-azure-blob...' checking backup count for every-min-azure-blob...+ check_backup_count every-min-azure-blob 1 + local ancestor=every-min-azure-blob + local expected=1 ++ kubectl_bin get psmdb-backup -l percona.com/backup-ancestor=every-min-azure-blob ++ grep ready ++ wc -l +++ mktemp ++ local LAST_OUT=/tmp/tmp.BXHH1HxV52 +++ mktemp ++ local LAST_ERR=/tmp/tmp.PTlklIEvox ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup -l percona.com/backup-ancestor=every-min-azure-blob ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.BXHH1HxV52 ++ cat /tmp/tmp.PTlklIEvox ++ rm /tmp/tmp.BXHH1HxV52 /tmp/tmp.PTlklIEvox ++ return 0 + local count=1 + count=1 + [[ 1 != 1 ]] + echo OK OK + desc 'check backup and restore -- minio' + set +o xtrace ----------------------------------------------------------------------------------- check backup and restore -- minio ----------------------------------------------------------------------------------- + check_backup_in_storage cron-some-name-20251114125600-tj87h minio rs0 myApp.test.gz + local backup=cron-some-name-20251114125600-tj87h + local storage_type=minio + local replset=rs0 + local file=myApp.test.gz + local endpoint + case ${storage_type} in + endpoint=minio-service ++ get_backup_dest cron-some-name-20251114125600-tj87h ++ /usr/sbin/sed 's|https://engk8soperators.blob.core.windows.net/||' ++ local backup_name=cron-some-name-20251114125600-tj87h ++ kubectl_bin get psmdb-backup cron-some-name-20251114125600-tj87h -o 'jsonpath={.status.destination}' ++ sed -e 's/.json$//' +++ mktemp ++ sed 's|s3://||' ++ sed 's|azure://||' ++ sed 's|gs://||' ++ local LAST_OUT=/tmp/tmp.aRK7inh0Ly +++ mktemp ++ local LAST_ERR=/tmp/tmp.VNQodueJYl ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup cron-some-name-20251114125600-tj87h -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.aRK7inh0Ly ++ cat /tmp/tmp.VNQodueJYl ++ rm /tmp/tmp.aRK7inh0Ly /tmp/tmp.VNQodueJYl ++ return 0 + backup_dest=operator-testing/2025-11-14T12:56:10Z + [[ minio == \m\i\n\i\o ]] + kubectl_bin run -i --rm aws-cli --image=perconalab/awscli --restart=Never -- /usr/bin/env AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --endpoint-url http://minio-service:9000 s3 ls s3://operator-testing/2025-11-14T12:56:10Z/rs0/myApp.test.gz + grep myApp.test.gz ++ mktemp + local LAST_OUT=/tmp/tmp.G8BeODTpLt ++ mktemp + local LAST_ERR=/tmp/tmp.22OgmsQZbW + 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=perconalab/awscli --restart=Never -- /usr/bin/env AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --endpoint-url http://minio-service:9000 s3 ls s3://operator-testing/2025-11-14T12:56:10Z/rs0/myApp.test.gz + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.G8BeODTpLt + cat /tmp/tmp.22OgmsQZbW + rm /tmp/tmp.G8BeODTpLt /tmp/tmp.22OgmsQZbW + return 0 2025-11-14 12:56:15 55 myApp.test.gz + run_mongo 'use myApp\n db.test.insert({ x: 100501 })' myApp:myPass@some-name-rs0.scheduled-backup-28065 + local 'command=use myApp\n db.test.insert({ x: 100501 })' + local uri=myApp:myPass@some-name-rs0.scheduled-backup-28065 + local driver=mongodb+srv + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.QUdJw6Bv7j +++ mktemp ++ local LAST_ERR=/tmp/tmp.8Ahrm5zGxf ++ 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.QUdJw6Bv7j ++ cat /tmp/tmp.8Ahrm5zGxf ++ rm /tmp/tmp.QUdJw6Bv7j /tmp/tmp.8Ahrm5zGxf ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.T3BNMf0iYk ++ mktemp + local LAST_ERR=/tmp/tmp.tm5ApwamZS + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.T3BNMf0iYk Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017,some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("df060561-61b0-444e-97b4-e3e702cb6c99") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.tm5ApwamZS + rm /tmp/tmp.T3BNMf0iYk /tmp/tmp.tm5ApwamZS + return 0 + compare_mongo_cmd find myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 -2nd + local command=find + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local postfix=-2nd + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:57:04+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 mongodb '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + egrep -v 'I NETWORK|W NETWORK|F 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 egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.A5uHtSWxJN +++ mktemp ++ local LAST_ERR=/tmp/tmp.RUWGX2f0jH ++ 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.A5uHtSWxJN ++ cat /tmp/tmp.RUWGX2f0jH ++ rm /tmp/tmp.A5uHtSWxJN /tmp/tmp.RUWGX2f0jH ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.D2zE8bjKOp ++ mktemp + local LAST_ERR=/tmp/tmp.vr41Gb7d5R + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.D2zE8bjKOp + cat /tmp/tmp.vr41Gb7d5R + rm /tmp/tmp.D2zE8bjKOp /tmp/tmp.vr41Gb7d5R + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find-2nd.json /tmp/tmp.tK5iyB6C6I/find-2nd + compare_mongo_cmd find myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 -2nd + local command=find + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + local postfix=-2nd + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:57:06+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 mongodb '' + egrep -v 'I NETWORK|W NETWORK|F 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' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' + local driver=mongodb + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.yHGfLnDYR5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.9kIs3hiREY ++ 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.yHGfLnDYR5 ++ cat /tmp/tmp.9kIs3hiREY ++ rm /tmp/tmp.yHGfLnDYR5 /tmp/tmp.9kIs3hiREY ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.73nOzafyte ++ mktemp + local LAST_ERR=/tmp/tmp.owuzYp2P0O + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.73nOzafyte + cat /tmp/tmp.owuzYp2P0O + rm /tmp/tmp.73nOzafyte /tmp/tmp.owuzYp2P0O + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find-2nd.json /tmp/tmp.tK5iyB6C6I/find-2nd + compare_mongo_cmd find myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 -2nd + local command=find + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local postfix=-2nd + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:57:09+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 mongodb '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' + egrep -v 'I NETWORK|W NETWORK|F 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' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.guEpjaNBj5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.wbeuaHIrwG ++ 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.guEpjaNBj5 ++ cat /tmp/tmp.wbeuaHIrwG ++ rm /tmp/tmp.guEpjaNBj5 /tmp/tmp.wbeuaHIrwG ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.T64owqqb2W ++ mktemp + local LAST_ERR=/tmp/tmp.uQmnkfPoc9 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.T64owqqb2W + cat /tmp/tmp.uQmnkfPoc9 + rm /tmp/tmp.T64owqqb2W /tmp/tmp.uQmnkfPoc9 + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find-2nd.json /tmp/tmp.tK5iyB6C6I/find-2nd + run_restore cron-some-name-20251114125600-tj87h + local backup_name=cron-some-name-20251114125600-tj87h + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-cron-some-name-20251114125600-tj87h/' + /usr/sbin/sed -e 's/backupName:/backupName: cron-some-name-20251114125600-tj87h/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.41MEaS06eV ++ mktemp + local LAST_ERR=/tmp/tmp.uvdUTaaqov + 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.41MEaS06eV perconaservermongodbrestore.psmdb.percona.com/restore-cron-some-name-20251114125600-tj87h created + cat /tmp/tmp.uvdUTaaqov + rm /tmp/tmp.41MEaS06eV /tmp/tmp.uvdUTaaqov + return 0 + wait_restore cron-some-name-20251114125600-tj87h some-name + local backup_name=cron-some-name-20251114125600-tj87h + 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-cron-some-name-20251114125600-tj87h object to be created.OK Waiting psmdb-restore/restore-cron-some-name-20251114125600-tj87h 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.IFoThr7uiB +++ mktemp ++ local LAST_ERR=/tmp/tmp.cHMTVp3kkU ++ 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.IFoThr7uiB ++ cat /tmp/tmp.cHMTVp3kkU ++ rm /tmp/tmp.IFoThr7uiB /tmp/tmp.cHMTVp3kkU ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + compare_mongo_cmd find myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local command=find + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:57:33+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 mongodb '' + egrep -v 'I NETWORK|W NETWORK|F 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' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + /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 egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.hsuVljqAH3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.BILtriOL1H ++ 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.hsuVljqAH3 ++ cat /tmp/tmp.BILtriOL1H ++ rm /tmp/tmp.hsuVljqAH3 /tmp/tmp.BILtriOL1H ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.l28aCNXAWk ++ mktemp + local LAST_ERR=/tmp/tmp.OMCM7A3DQq + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-0.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.l28aCNXAWk + cat /tmp/tmp.OMCM7A3DQq + rm /tmp/tmp.l28aCNXAWk /tmp/tmp.OMCM7A3DQq + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find.json /tmp/tmp.tK5iyB6C6I/find + compare_mongo_cmd find myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + local command=find + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:57:36+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 mongodb '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + egrep -v 'I NETWORK|W NETWORK|F 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 egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.E1YYridSPY +++ mktemp ++ local LAST_ERR=/tmp/tmp.RL2VJQWpUP ++ 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.E1YYridSPY ++ cat /tmp/tmp.RL2VJQWpUP ++ rm /tmp/tmp.E1YYridSPY /tmp/tmp.RL2VJQWpUP ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.plOv9DjpTh ++ mktemp + local LAST_ERR=/tmp/tmp.CKCwuRSTMM + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-1.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.plOv9DjpTh + cat /tmp/tmp.CKCwuRSTMM + rm /tmp/tmp.plOv9DjpTh /tmp/tmp.CKCwuRSTMM + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find.json /tmp/tmp.tK5iyB6C6I/find + compare_mongo_cmd find myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local command=find + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-14T12:57:39+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 mongodb '' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 + local driver=mongodb + local suffix=.svc.cluster.local + egrep -v 'I NETWORK|W NETWORK|F 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 egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.Eb7xdHL2PB +++ mktemp ++ local LAST_ERR=/tmp/tmp.jtTqmfzIqV ++ 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.Eb7xdHL2PB ++ cat /tmp/tmp.jtTqmfzIqV ++ rm /tmp/tmp.Eb7xdHL2PB /tmp/tmp.jtTqmfzIqV ++ return 0 + local client_container=psmdb-client-696897d69b-9cg4s + local mongo_flag= + [[ myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.nG3uvKTBc3 ++ mktemp + local LAST_ERR=/tmp/tmp.YDdAeyYkNW + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-9cg4s -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0-2.some-name-rs0.scheduled-backup-28065.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.nG3uvKTBc3 + cat /tmp/tmp.YDdAeyYkNW + rm /tmp/tmp.nG3uvKTBc3 /tmp/tmp.YDdAeyYkNW + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2044/e2e-tests/scheduled-backup/compare/find.json /tmp/tmp.tK5iyB6C6I/find + '[' -z '' ']' + desc 'check backup and restore -- aws-s3' + set +o xtrace ----------------------------------------------------------------------------------- check backup and restore -- aws-s3 ----------------------------------------------------------------------------------- ++ get_backup_dest cron-some-name-20251114125600-4f4p4 ++ local backup_name=cron-some-name-20251114125600-4f4p4 ++ kubectl_bin get psmdb-backup cron-some-name-20251114125600-4f4p4 -o 'jsonpath={.status.destination}' ++ sed -e 's/.json$//' +++ mktemp ++ sed 's|azure://||' ++ sed 's|s3://||' ++ sed 's|gs://||' ++ local LAST_OUT=/tmp/tmp.putVlcGyiv +++ mktemp ++ local LAST_ERR=/tmp/tmp.aFJLrePter ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup cron-some-name-20251114125600-4f4p4 -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.putVlcGyiv ++ cat /tmp/tmp.aFJLrePter ++ rm /tmp/tmp.putVlcGyiv /tmp/tmp.aFJLrePter ++ return 0 + backup_dest_aws=operator-testing/psmdb-scheduled-backup/2025-11-14T12:56:00Z + curl -s https://s3.amazonaws.com/operator-testing/psmdb-scheduled-backup/2025-11-14T12:56:00Z/rs0/myApp.test.gz + gunzip gzip: stdin: not in gzip format