Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/logs/data-at-rest-encryption.log Warning: version difference between client (1.35) and server (1.31) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.35) and server (1.31) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.35) and server (1.31) exceeds the supported minor version skew of +/-1 + create_infra data-at-rest-encryption-28616 + local ns=data-at-rest-encryption-28616 + [[ 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-1961/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.auw7eLxiVy ++ mktemp + local LAST_ERR=/tmp/tmp.MPDdDIq7kU + 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-1961/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.auw7eLxiVy 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.MPDdDIq7kU + rm /tmp/tmp.auw7eLxiVy /tmp/tmp.MPDdDIq7kU + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/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\":[]}}"' No resources found + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: resource(s) were provided, but no name was specified + : + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.SjMAW8rUwR ++ mktemp + local LAST_ERR=/tmp/tmp.1FLz3pkHgX + 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.SjMAW8rUwR + cat /tmp/tmp.1FLz3pkHgX + rm /tmp/tmp.SjMAW8rUwR /tmp/tmp.1FLz3pkHgX + 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.xL6RTrr1XD ++ mktemp + local LAST_ERR=/tmp/tmp.OnXIDHehm7 + 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.xL6RTrr1XD + cat /tmp/tmp.OnXIDHehm7 + rm /tmp/tmp.xL6RTrr1XD /tmp/tmp.OnXIDHehm7 + 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.zCLCblnumU ++ mktemp + local LAST_ERR=/tmp/tmp.8gfxIZOXJD + 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.zCLCblnumU + cat /tmp/tmp.8gfxIZOXJD + rm /tmp/tmp.zCLCblnumU /tmp/tmp.8gfxIZOXJD + 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-1961/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.WJ4KR9Qt8P ++ mktemp + local LAST_ERR=/tmp/tmp.4VRXwJ4i86 + 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-1961/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.WJ4KR9Qt8P 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.4VRXwJ4i86 + rm /tmp/tmp.WJ4KR9Qt8P /tmp/tmp.4VRXwJ4i86 + return 0 + check_crd_for_deletion PR-1961-7f9b8fd6 + local git_tag=PR-1961-7f9b8fd6 ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-1961-7f9b8fd6/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.aEYi8Lb5oh +++ mktemp ++ local LAST_ERR=/tmp/tmp.JZq9iIJ9pA ++ 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.aEYi8Lb5oh ++ cat /tmp/tmp.JZq9iIJ9pA 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.aEYi8Lb5oh ++ cat /tmp/tmp.JZq9iIJ9pA 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.aEYi8Lb5oh ++ cat /tmp/tmp.JZq9iIJ9pA Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.aEYi8Lb5oh ++ cat /tmp/tmp.JZq9iIJ9pA Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.aEYi8Lb5oh /tmp/tmp.JZq9iIJ9pA ++ 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 ++ awk '{print $1}' ++ grep chaos-mesh ++ 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}' Unable to connect to the server: net/http: TLS handshake timeout + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' + desc 'cleaned up old namespaces psmdb-operator' + xargs kubectl delete ns + set +o xtrace ++ mktemp ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.2yda9Z07AN + local LAST_OUT=/tmp/tmp.RVmns9khLP ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.s6BxTfCsOi + local exit_status=0 + local timeout=4 + local LAST_ERR=/tmp/tmp.QxEH3nrVTL + local exit_status=0 + local timeout=4 ++ seq 0 2 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + for i in $(seq 0 2) + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.RVmns9khLP namespace "psmdb-operator" deleted + cat /tmp/tmp.QxEH3nrVTL + rm /tmp/tmp.RVmns9khLP /tmp/tmp.QxEH3nrVTL + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.NbHoTZptx7 ++ mktemp + local LAST_ERR=/tmp/tmp.z2bGtQjy1o + 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.NbHoTZptx7 + cat /tmp/tmp.z2bGtQjy1o + rm /tmp/tmp.NbHoTZptx7 /tmp/tmp.z2bGtQjy1o + 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.N3I7ehnJW4 ++ mktemp + local LAST_ERR=/tmp/tmp.9JnpWMyca9 + 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.N3I7ehnJW4 namespace/psmdb-operator created + cat /tmp/tmp.9JnpWMyca9 + rm /tmp/tmp.N3I7ehnJW4 /tmp/tmp.9JnpWMyca9 + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.KWvk6TjsqD +++ mktemp ++ local LAST_ERR=/tmp/tmp.dJhQlb9ocw ++ 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.KWvk6TjsqD ++ cat /tmp/tmp.dJhQlb9ocw ++ rm /tmp/tmp.KWvk6TjsqD /tmp/tmp.dJhQlb9ocw ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-1961-7f9b8fd6-3-cluster8 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.cJvuegdKNt ++ mktemp + local LAST_ERR=/tmp/tmp.jJyZ1LVeUz + 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-1961-7f9b8fd6-3-cluster8 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.cJvuegdKNt Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-1961-7f9b8fd6-3-cluster8" modified. + cat /tmp/tmp.jJyZ1LVeUz + rm /tmp/tmp.cJvuegdKNt /tmp/tmp.jJyZ1LVeUz + return 0 + deploy_operator + desc 'start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-1961-7f9b8fd6' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-1961-7f9b8fd6 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.9vgNrQ1R0O ++ mktemp + local LAST_ERR=/tmp/tmp.NJBoJfTDat + 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-1961/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.9vgNrQ1R0O 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.NJBoJfTDat + rm /tmp/tmp.9vgNrQ1R0O /tmp/tmp.NJBoJfTDat + 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-1961/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.xFLJI2ovx0 ++ mktemp + local LAST_ERR=/tmp/tmp.SiJgOCYNbF + 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.xFLJI2ovx0 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.SiJgOCYNbF + rm /tmp/tmp.xFLJI2ovx0 /tmp/tmp.SiJgOCYNbF + return 0 + yq eval ' (.spec.template.spec.containers[].image = "perconalab/percona-server-mongodb-operator:PR-1961-7f9b8fd6") | ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.99o5meLjtO ++ mktemp + local LAST_ERR=/tmp/tmp.P9l7Vqm8Ai + 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.2yda9Z07AN + cat /tmp/tmp.s6BxTfCsOi + rm /tmp/tmp.2yda9Z07AN /tmp/tmp.s6BxTfCsOi + return 0 namespace "data-at-rest-encryption-5209" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.99o5meLjtO deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.P9l7Vqm8Ai + rm /tmp/tmp.99o5meLjtO /tmp/tmp.P9l7Vqm8Ai + 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.Di8p3V9G0K +++ mktemp ++ local LAST_ERR=/tmp/tmp.3Z3bq24gwC ++ 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.Di8p3V9G0K ++ cat /tmp/tmp.3Z3bq24gwC ++ rm /tmp/tmp.Di8p3V9G0K /tmp/tmp.3Z3bq24gwC ++ return 0 + wait_operator_pod percona-server-mongodb-operator-7b94977d54-9mtjd + local pod=percona-server-mongodb-operator-7b94977d54-9mtjd + set +o xtrace waiting for pod/percona-server-mongodb-operator-7b94977d54-9mtjd to be ready.OK + echo 'Print operator info from log' Print operator info from log ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator + grep 'Manager starting up' +++ mktemp ++ local LAST_OUT=/tmp/tmp.k1mrbazV73 +++ mktemp ++ local LAST_ERR=/tmp/tmp.4jrfJl35lJ ++ 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.k1mrbazV73 ++ cat /tmp/tmp.4jrfJl35lJ ++ rm /tmp/tmp.k1mrbazV73 /tmp/tmp.4jrfJl35lJ ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-7b94977d54-9mtjd ++ mktemp + local LAST_OUT=/tmp/tmp.vaTNkh6L5l ++ mktemp + local LAST_ERR=/tmp/tmp.kuxWbL6vIO + 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-7b94977d54-9mtjd + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.vaTNkh6L5l + cat /tmp/tmp.kuxWbL6vIO + rm /tmp/tmp.vaTNkh6L5l /tmp/tmp.kuxWbL6vIO + return 0 2026-01-12T21:20:33.421Z INFO setup Manager starting up {"gitCommit": "7f9b8fd660ef537a8ff13f3505cffba918719e96", "gitBranch": "PR-1961-7f9b8fd6", "buildTime": "", "goVersion": "go1.25.5", "os": "linux", "arch": "amd64"} + create_namespace data-at-rest-encryption-28616 + local namespace=data-at-rest-encryption-28616 + 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 + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + '[' -n '' ']' + desc 'cleaned up old namespaces data-at-rest-encryption-28616' + awk '{print$1}' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces data-at-rest-encryption-28616 + xargs kubectl delete ns ----------------------------------------------------------------------------------- + kubectl_bin delete namespace data-at-rest-encryption-28616 --ignore-not-found ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.RAI6QWPVBq ++ mktemp + local LAST_OUT=/tmp/tmp.OlthdT0tSO + local LAST_ERR=/tmp/tmp.uJbxajDFqN + local exit_status=0 + local timeout=4 ++ mktemp ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + local LAST_ERR=/tmp/tmp.g7sxAFaMUD + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace data-at-rest-encryption-28616 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.RAI6QWPVBq + cat /tmp/tmp.uJbxajDFqN + rm /tmp/tmp.RAI6QWPVBq /tmp/tmp.uJbxajDFqN + return 0 error: resource(s) were provided, but no name was specified + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OlthdT0tSO + cat /tmp/tmp.g7sxAFaMUD + rm /tmp/tmp.OlthdT0tSO /tmp/tmp.g7sxAFaMUD + return 0 + kubectl_bin wait --for=delete namespace data-at-rest-encryption-28616 ++ mktemp + local LAST_OUT=/tmp/tmp.2py4uE5oh0 ++ mktemp + local LAST_ERR=/tmp/tmp.g5WhQBom0g + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace data-at-rest-encryption-28616 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2py4uE5oh0 + cat /tmp/tmp.g5WhQBom0g + rm /tmp/tmp.2py4uE5oh0 /tmp/tmp.g5WhQBom0g + return 0 + desc 'create namespace data-at-rest-encryption-28616' + set +o xtrace ----------------------------------------------------------------------------------- create namespace data-at-rest-encryption-28616 ----------------------------------------------------------------------------------- + kubectl_bin create namespace data-at-rest-encryption-28616 ++ mktemp + local LAST_OUT=/tmp/tmp.LqJ1rX2fFB ++ mktemp + local LAST_ERR=/tmp/tmp.v6qxlPVxke + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace data-at-rest-encryption-28616 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.LqJ1rX2fFB namespace/data-at-rest-encryption-28616 created + cat /tmp/tmp.v6qxlPVxke + rm /tmp/tmp.LqJ1rX2fFB /tmp/tmp.v6qxlPVxke + return 0 + set_kube_ctx data-at-rest-encryption-28616 + local namespace=data-at-rest-encryption-28616 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.JWON9JIjod +++ mktemp ++ local LAST_ERR=/tmp/tmp.7txwRramak ++ 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.JWON9JIjod ++ cat /tmp/tmp.7txwRramak ++ rm /tmp/tmp.JWON9JIjod /tmp/tmp.7txwRramak ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-1961-7f9b8fd6-3-cluster8 --namespace=data-at-rest-encryption-28616 ++ mktemp + local LAST_OUT=/tmp/tmp.8ygJb5omKY ++ mktemp + local LAST_ERR=/tmp/tmp.Vn44hkGW0O + 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-1961-7f9b8fd6-3-cluster8 --namespace=data-at-rest-encryption-28616 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.8ygJb5omKY Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-1961-7f9b8fd6-3-cluster8" modified. + cat /tmp/tmp.Vn44hkGW0O + rm /tmp/tmp.8ygJb5omKY /tmp/tmp.Vn44hkGW0O + return 0 + deploy_vault + local name=vault-service + [[ 0 -gt 0 ]] + desc 'install Vault vault-service' + set +o xtrace ----------------------------------------------------------------------------------- install Vault vault-service ----------------------------------------------------------------------------------- + helm uninstall vault-service Error: uninstall: Release not loaded: vault-service: release: not found + : + helm repo remove hashicorp "hashicorp" has been removed from your repositories + helm repo add hashicorp https://helm.releases.hashicorp.com "hashicorp" has been added to your repositories + destroy_vault vault-service + local name=vault-service + local vault_ns ++ helm list --all-namespaces --filter vault-service ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + vault_ns= + desc 'destroy vault' + set +o xtrace ----------------------------------------------------------------------------------- destroy vault ----------------------------------------------------------------------------------- ++ kubectl api-resources ++ grep vault ++ awk '{print $1}' + '[' -n '' ']' ++ kubectl get clusterrolebinding -l app.kubernetes.io/instance=vault-service -o 'jsonpath={range .items[*]}{.metadata.name}{" "}{end}' + timeout 30 kubectl delete clusterrolebinding vault-service-agent-injector-binding vault-service-server-binding clusterrolebinding.rbac.authorization.k8s.io "vault-service-agent-injector-binding" deleted clusterrolebinding.rbac.authorization.k8s.io "vault-service-server-binding" deleted ++ kubectl get clusterrole -l app.kubernetes.io/instance=vault-service -o 'jsonpath={range .items[*]}{.metadata.name}{" "}{end}' + timeout 30 kubectl delete clusterrole vault-service-agent-injector-clusterrole clusterrole.rbac.authorization.k8s.io "vault-service-agent-injector-clusterrole" deleted ++ kubectl get mutatingwebhookconfiguration -l app.kubernetes.io/instance=vault-service -o 'jsonpath={range .items[*]}{.metadata.name}{" "}{end}' + timeout 30 kubectl delete mutatingwebhookconfiguration vault-service-agent-injector-cfg mutatingwebhookconfiguration.admissionregistration.k8s.io "vault-service-agent-injector-cfg" deleted + [[ -n '' ]] + retry 10 60 helm install vault-service hashicorp/vault --disable-openapi-validation --set dataStorage.enabled=false + local max=10 + local delay=60 + shift 2 + local n=1 + helm install vault-service hashicorp/vault --disable-openapi-validation --set dataStorage.enabled=false NAME: vault-service LAST DEPLOYED: Mon Jan 12 21:21:21 2026 NAMESPACE: data-at-rest-encryption-28616 STATUS: deployed REVISION: 1 NOTES: Thank you for installing HashiCorp Vault! Now that you have deployed Vault, you should look over the docs on using Vault with Kubernetes available here: https://developer.hashicorp.com/vault/docs Your release is named vault-service. To learn more about the release, try: $ helm status vault-service $ helm get manifest vault-service + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running + sleep 1 + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running + sleep 1 + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running + sleep 1 + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running + sleep 1 + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running + sleep 1 + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running + sleep 1 + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running + sleep 1 + kubectl_bin get pod/vault-service-0 -o 'jsonpath={.status.phase}' + grep Running Running + sleep 5 + kubectl_bin exec pod/vault-service-0 -- vault operator init -key-shares=1 -key-threshold=1 -format=json ++ mktemp + local LAST_OUT=/tmp/tmp.rUUDrpSng8 ++ mktemp + local LAST_ERR=/tmp/tmp.19c1DciGlj + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec pod/vault-service-0 -- vault operator init -key-shares=1 -key-threshold=1 -format=json + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.rUUDrpSng8 + cat /tmp/tmp.19c1DciGlj + rm /tmp/tmp.rUUDrpSng8 /tmp/tmp.19c1DciGlj + return 0 + local unsealKey ++ jq -r '.unseal_keys_b64[]' + unsealKey=YvQ0q8/ObDnhy7IR17+CyEOenP3ITB50heYhkgQYa2I= + local token ++ jq -r .root_token + token=hvs.PCkIBIuGIl8PjxDoTpR1K9bv + kubectl_bin exec pod/vault-service-0 -- vault operator unseal YvQ0q8/ObDnhy7IR17+CyEOenP3ITB50heYhkgQYa2I= ++ mktemp + local LAST_OUT=/tmp/tmp.uy4EHsCcLq ++ mktemp + local LAST_ERR=/tmp/tmp.Nipm8iZh7B + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec pod/vault-service-0 -- vault operator unseal YvQ0q8/ObDnhy7IR17+CyEOenP3ITB50heYhkgQYa2I= + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.uy4EHsCcLq Key Value --- ----- Seal Type shamir Initialized true Sealed false Total Shares 1 Threshold 1 Version 1.20.4 Build Date 2025-09-23T13:22:38Z Storage Type file Cluster Name vault-cluster-62b737b1 Cluster ID a9fbba9a-e31f-09fd-1e4b-a873b586d185 HA Enabled false + cat /tmp/tmp.Nipm8iZh7B + rm /tmp/tmp.uy4EHsCcLq /tmp/tmp.Nipm8iZh7B + return 0 + kubectl_bin exec -it pod/vault-service-0 -- sh ++ mktemp + local LAST_OUT=/tmp/tmp.kVltASeTCa ++ mktemp + local LAST_ERR=/tmp/tmp.L2VS8ka1ld + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec -it pod/vault-service-0 -- sh + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.kVltASeTCa Success! You are now authenticated. The token information displayed below is already stored in the token helper. You do NOT need to run "vault login" again. Future Vault requests will automatically use this token. Key Value --- ----- token hvs.PCkIBIuGIl8PjxDoTpR1K9bv token_accessor B2V4ffU1hdvWprisR51meEWf token_duration ∞ token_renewable false token_policies ["root"] identity_policies [] policies ["root"] Success! Enabled the kv-v2 secrets engine at: secret/ + cat /tmp/tmp.L2VS8ka1ld Unable to use a TTY - input is not a terminal or the right kind of file + rm /tmp/tmp.kVltASeTCa /tmp/tmp.L2VS8ka1ld + return 0 + kubectl_bin create secret generic vault-secret --from-literal=token=hvs.PCkIBIuGIl8PjxDoTpR1K9bv ++ mktemp + local LAST_OUT=/tmp/tmp.OULymdzzNf ++ mktemp + local LAST_ERR=/tmp/tmp.R1PoIFGXFx + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create secret generic vault-secret --from-literal=token=hvs.PCkIBIuGIl8PjxDoTpR1K9bv + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OULymdzzNf secret/vault-secret created + cat /tmp/tmp.R1PoIFGXFx + rm /tmp/tmp.OULymdzzNf /tmp/tmp.R1PoIFGXFx + 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: Mon Jan 12 21:21:54 2026 NAMESPACE: data-at-rest-encryption-28616 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.data-at-rest-encryption-28616.cluster.local To access MinIO from localhost, run the below commands: 1. export POD_NAME=$(kubectl get pods --namespace data-at-rest-encryption-28616 -l "release=minio-service" -o jsonpath="{.items[0].metadata.name}") 2. kubectl port-forward $POD_NAME 9000 --namespace data-at-rest-encryption-28616 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 data-at-rest-encryption-28616 minio-service -o jsonpath="{.data.rootUser}" | base64 --decode):$(kubectl get secret --namespace data-at-rest-encryption-28616 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.IshGyMwpIR +++ mktemp ++ local LAST_ERR=/tmp/tmp.4dX90gzlUt ++ 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.IshGyMwpIR ++ cat /tmp/tmp.4dX90gzlUt ++ rm /tmp/tmp.IshGyMwpIR /tmp/tmp.4dX90gzlUt ++ return 0 + MINIO_POD=minio-service-d9589b474-mn7tl + wait_pod minio-service-d9589b474-mn7tl + local pod=minio-service-d9589b474-mn7tl + set +o xtrace waiting for pod/minio-service-d9589b474-mn7tl to be ready.OK + '[' -n psmdb-operator ']' + kubectl_bin create svc -n psmdb-operator externalname minio-service --external-name=minio-service.data-at-rest-encryption-28616.svc.cluster.local --tcp=9000 ++ mktemp + local LAST_OUT=/tmp/tmp.hm2ZAbTsBX ++ mktemp + local LAST_ERR=/tmp/tmp.Z6sr0ylzHW + 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.data-at-rest-encryption-28616.svc.cluster.local --tcp=9000 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.hm2ZAbTsBX service/minio-service created + cat /tmp/tmp.Z6sr0ylzHW + rm /tmp/tmp.hm2ZAbTsBX /tmp/tmp.Z6sr0ylzHW + 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.2uNLdWHZOH ++ mktemp + local LAST_ERR=/tmp/tmp.VqLfRJwtlu + 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.2uNLdWHZOH make_bucket: operator-testing pod "aws-cli" deleted from data-at-rest-encryption-28616 namespace + cat /tmp/tmp.VqLfRJwtlu 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_data-at-rest-encryption-28616 + rm /tmp/tmp.2uNLdWHZOH /tmp/tmp.VqLfRJwtlu + 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-1961/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.2COUADnApQ ++ mktemp + local LAST_ERR=/tmp/tmp.kaptTCUyDA + 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-1961/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2COUADnApQ 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.kaptTCUyDA + rm /tmp/tmp.2COUADnApQ /tmp/tmp.kaptTCUyDA + return 0 + 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-1961/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.X1GlRUBQoZ ++ mktemp + local LAST_ERR=/tmp/tmp.RmspA1jk7E + 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-1961/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/conf/client.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.X1GlRUBQoZ secret/some-users created deployment.apps/psmdb-client created + cat /tmp/tmp.RmspA1jk7E + rm /tmp/tmp.X1GlRUBQoZ /tmp/tmp.RmspA1jk7E + return 0 + cluster=some-name + desc 'create PSMDB cluster some-name' + set +o xtrace ----------------------------------------------------------------------------------- create PSMDB cluster some-name ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/some-name.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/some-name.yml + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/some-name.yml + kubectl_bin apply -f - + 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-1961-7f9b8fd6"' + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' ++ mktemp + yq eval '.spec.upgradeOptions.apply="Never"' + /usr/sbin/sed -e s/NAME_SPACE/data-at-rest-encryption-28616/g + local LAST_OUT=/tmp/tmp.DzddNO6nWW ++ mktemp + local LAST_ERR=/tmp/tmp.choGD1zj1s + 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.DzddNO6nWW perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.choGD1zj1s + rm /tmp/tmp.DzddNO6nWW /tmp/tmp.choGD1zj1s + return 0 + desc 'check if all Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all Pods started ----------------------------------------------------------------------------------- + wait_for_running some-name-rs0 3 false + local name=some-name-rs0 + let last_pod=2 + local check_cluster_readyness=false + 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.ih7sjb7K54 +++ mktemp ++ local LAST_ERR=/tmp/tmp.VMwbLX1bsJ ++ 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.ih7sjb7K54 ++ cat /tmp/tmp.VMwbLX1bsJ ++ rm /tmp/tmp.ih7sjb7K54 /tmp/tmp.VMwbLX1bsJ ++ 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.um74vZgWY1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.eh08PAg7bK ++ 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.um74vZgWY1 ++ cat /tmp/tmp.eh08PAg7bK ++ rm /tmp/tmp.um74vZgWY1 /tmp/tmp.eh08PAg7bK ++ 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.S3uKb9p78z +++ mktemp ++ local LAST_ERR=/tmp/tmp.jGjnP8OCVZ ++ 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.S3uKb9p78z ++ cat /tmp/tmp.jGjnP8OCVZ ++ rm /tmp/tmp.S3uKb9p78z /tmp/tmp.jGjnP8OCVZ ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + wait_for_running some-name-cfg 3 false + local name=some-name-cfg + let last_pod=2 + local check_cluster_readyness=false + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=cfg + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-cfg-0 + local pod=some-name-cfg-0 + set +o xtrace waiting for pod/some-name-cfg-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-cfg-1 + local pod=some-name-cfg-1 + set +o xtrace waiting for pod/some-name-cfg-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=="cfg")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.wEAkXVe4sM +++ mktemp ++ local LAST_ERR=/tmp/tmp.nxdoNXXnFg ++ 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=="cfg")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.wEAkXVe4sM ++ cat /tmp/tmp.nxdoNXXnFg ++ rm /tmp/tmp.wEAkXVe4sM /tmp/tmp.nxdoNXXnFg ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-cfg-2 + local pod=some-name-cfg-2 + set +o xtrace waiting for pod/some-name-cfg-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.VdimkDO1Je +++ mktemp ++ local LAST_ERR=/tmp/tmp.yOcbyCKNmK ++ 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=="cfg")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.VdimkDO1Je ++ cat /tmp/tmp.yOcbyCKNmK ++ rm /tmp/tmp.VdimkDO1Je /tmp/tmp.yOcbyCKNmK ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.W8grQ4fBp4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.0yOUIAzYnH ++ 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=="cfg")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.W8grQ4fBp4 ++ cat /tmp/tmp.0yOUIAzYnH ++ rm /tmp/tmp.W8grQ4fBp4 /tmp/tmp.0yOUIAzYnH ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + wait_for_running some-name-mongos 3 + local name=some-name-mongos + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=mongos + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-mongos-0 + local pod=some-name-mongos-0 + set +o xtrace waiting for pod/some-name-mongos-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-mongos-1 + local pod=some-name-mongos-1 + set +o xtrace waiting for pod/some-name-mongos-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=="mongos")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.HH0AzU46av +++ mktemp ++ local LAST_ERR=/tmp/tmp.8gGtwOzGWm ++ 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=="mongos")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.HH0AzU46av ++ cat /tmp/tmp.8gGtwOzGWm ++ rm /tmp/tmp.HH0AzU46av /tmp/tmp.8gGtwOzGWm ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-mongos-2 + local pod=some-name-mongos-2 + set +o xtrace waiting for pod/some-name-mongos-2 to be ready......OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.2ldnUBbVfL +++ mktemp ++ local LAST_ERR=/tmp/tmp.K9jsIQDs8z ++ 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=="mongos")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.2ldnUBbVfL ++ cat /tmp/tmp.K9jsIQDs8z ++ rm /tmp/tmp.2ldnUBbVfL /tmp/tmp.K9jsIQDs8z ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xOHgxdk0CI +++ mktemp ++ local LAST_ERR=/tmp/tmp.gM7rCGNUzS ++ 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=="mongos")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.xOHgxdk0CI ++ cat /tmp/tmp.gM7rCGNUzS ++ rm /tmp/tmp.xOHgxdk0CI /tmp/tmp.gM7rCGNUzS ++ 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-1961/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0.yml + local new_result=/tmp/tmp.bcqhsPThp7/statefulset_some-name-rs0.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/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("data-at-rest-encryption-28616", "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.uDAuUFoiLe ++ mktemp + local LAST_ERR=/tmp/tmp.odjwHpDWSy + 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.uDAuUFoiLe + cat /tmp/tmp.odjwHpDWSy + rm /tmp/tmp.uDAuUFoiLe /tmp/tmp.odjwHpDWSy + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.bcqhsPThp7/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.bcqhsPThp7/statefulset_some-name-rs0.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.bcqhsPThp7/statefulset_some-name-rs0.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-rs0.yml /tmp/tmp.bcqhsPThp7/statefulset_some-name-rs0.yml + log 'compare_kubectl: statefulset/some-name-rs0 OK' + set +o xtrace [2026-01-12T21:24:55+0000] compare_kubectl: statefulset/some-name-rs0 OK + compare_kubectl statefulset/some-name-cfg + local resource=statefulset/some-name-cfg + local postfix= + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg.yml + local new_result=/tmp/tmp.bcqhsPThp7/statefulset_some-name-cfg.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg-oc.yml ']' + kubectl_bin get -o yaml statefulset/some-name-cfg + 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("data-at-rest-encryption-28616", "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.GZfxraCIla ++ mktemp + local LAST_ERR=/tmp/tmp.qk6emdOK8b + 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-cfg + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.GZfxraCIla + cat /tmp/tmp.qk6emdOK8b + rm /tmp/tmp.GZfxraCIla /tmp/tmp.qk6emdOK8b + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.bcqhsPThp7/statefulset_some-name-cfg.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.bcqhsPThp7/statefulset_some-name-cfg.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.bcqhsPThp7/statefulset_some-name-cfg.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/statefulset_some-name-cfg.yml /tmp/tmp.bcqhsPThp7/statefulset_some-name-cfg.yml + log 'compare_kubectl: statefulset/some-name-cfg OK' + set +o xtrace [2026-01-12T21:24:56+0000] compare_kubectl: statefulset/some-name-cfg OK + desc 'create user' + set +o xtrace ----------------------------------------------------------------------------------- create user ----------------------------------------------------------------------------------- + run_mongos 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-mongos.data-at-rest-encryption-28616 + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.NSdlMM9gHv +++ mktemp ++ local LAST_ERR=/tmp/tmp.3fUTWJXang ++ 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.NSdlMM9gHv ++ cat /tmp/tmp.3fUTWJXang ++ rm /tmp/tmp.NSdlMM9gHv /tmp/tmp.3fUTWJXang ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.OpWuRMPUgD ++ mktemp + local LAST_ERR=/tmp/tmp.luFq9KYQHh + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OpWuRMPUgD Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("62581570-2910-41a7-b644-6077a949ef3d") } Percona Server for MongoDB server version: v8.0.17-6 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.luFq9KYQHh + rm /tmp/tmp.OpWuRMPUgD /tmp/tmp.luFq9KYQHh + return 0 + sleep 2 + desc 'write data, read it' + set +o xtrace ----------------------------------------------------------------------------------- write data, read it ----------------------------------------------------------------------------------- + run_mongos 'use myApp\n db.test.insert({ x: 100500 })' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local 'command=use myApp\n db.test.insert({ x: 100500 })' + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.BIUIaxv5ak +++ mktemp ++ local LAST_ERR=/tmp/tmp.wUMw7WfYxN ++ 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.BIUIaxv5ak ++ cat /tmp/tmp.wUMw7WfYxN ++ rm /tmp/tmp.BIUIaxv5ak /tmp/tmp.wUMw7WfYxN ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.anfqfiXmi9 ++ mktemp + local LAST_ERR=/tmp/tmp.m84QZRtixk + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.anfqfiXmi9 Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("063414f0-eeb8-4343-81c9-3f857c9000f5") } Percona Server for MongoDB server version: v8.0.17-6 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.m84QZRtixk + rm /tmp/tmp.anfqfiXmi9 /tmp/tmp.m84QZRtixk + return 0 + compare_mongos_cmd find myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local command=find + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local postfix= + local suffix= + local database=myApp + local collection=test + local port=27017 + local tls=false + [[ false == \t\r\u\e ]] + mongos_command=run_mongos + log 'running db.test.command() in myApp' + set +o xtrace [2026-01-12T21:25:04+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 mongodb '' '' 27017 + grep -E -v 'I NETWORK|W 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-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.BWOARDjUTk +++ mktemp ++ local LAST_ERR=/tmp/tmp.P0STu4Xt3D ++ 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.BWOARDjUTk ++ cat /tmp/tmp.P0STu4Xt3D ++ rm /tmp/tmp.BWOARDjUTk /tmp/tmp.P0STu4Xt3D ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.Ljq6REDVqJ ++ mktemp + local LAST_ERR=/tmp/tmp.RGttHHGZQh + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Ljq6REDVqJ + cat /tmp/tmp.RGttHHGZQh + rm /tmp/tmp.Ljq6REDVqJ /tmp/tmp.RGttHHGZQh + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/find.json /tmp/tmp.bcqhsPThp7/find + desc 'run backups' + set +o xtrace ----------------------------------------------------------------------------------- run backups ----------------------------------------------------------------------------------- + backup_name_minio=backup-minio + backup_name_gcp=backup-gcp-cs + desc 'run minio backup backup-minio' + set +o xtrace ----------------------------------------------------------------------------------- run minio backup backup-minio ----------------------------------------------------------------------------------- + run_backup minio + local storage=minio + local backup_name=backup-minio + local type=logical + log 'running backup backup-minio' + set +o xtrace [2026-01-12T21:25:06+0000] running backup backup-minio + yq eval '.metadata.name = "backup-minio" | .spec.storageName = "minio" | .spec.type = "logical"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/backup-minio.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.3tFfioebO4 ++ mktemp + local LAST_ERR=/tmp/tmp.sSPHxbeRyO + 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.3tFfioebO4 perconaservermongodbbackup.psmdb.percona.com/backup-minio created + cat /tmp/tmp.sSPHxbeRyO + rm /tmp/tmp.3tFfioebO4 /tmp/tmp.sSPHxbeRyO + return 0 + wait_backup backup-minio + local backup_name=backup-minio + local target_state=ready + set +o xtrace waiting for backup-minio to reach ready state.................OK + '[' -z '' ']' + desc 'run minio backup backup-gcp-cs' + set +o xtrace ----------------------------------------------------------------------------------- run minio backup backup-gcp-cs ----------------------------------------------------------------------------------- + run_backup gcp-cs + local storage=gcp-cs + local backup_name=backup-gcp-cs + local type=logical + log 'running backup backup-gcp-cs' + set +o xtrace [2026-01-12T21:25:41+0000] running backup backup-gcp-cs + yq eval '.metadata.name = "backup-gcp-cs" | .spec.storageName = "gcp-cs" | .spec.type = "logical"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/backup-gcp-cs.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.Bq4MUv93mG ++ mktemp + local LAST_ERR=/tmp/tmp.NEVmjGq5CN + 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.Bq4MUv93mG perconaservermongodbbackup.psmdb.percona.com/backup-gcp-cs created + cat /tmp/tmp.NEVmjGq5CN + rm /tmp/tmp.Bq4MUv93mG /tmp/tmp.NEVmjGq5CN + return 0 + wait_backup backup-gcp-cs + local backup_name=backup-gcp-cs + local target_state=ready + set +o xtrace waiting for backup-gcp-cs to reach ready state.................OK + sleep 5 + desc 'check backup and restore -- minio' + set +o xtrace ----------------------------------------------------------------------------------- check backup and restore -- minio ----------------------------------------------------------------------------------- + check_backup_in_storage backup-minio minio rs0 myApp.test.gz + local backup=backup-minio + local storage_type=minio + local replset=rs0 + local file=myApp.test.gz + local endpoint ++ get_backup_dest backup-minio ++ local backup_name=backup-minio ++ /usr/sbin/sed 's|https://engk8soperators.blob.core.windows.net/||' ++ kubectl_bin get psmdb-backup backup-minio -o 'jsonpath={.status.destination}' ++ sed -e 's/.json$//' ++ sed 's|azure://||' ++ sed 's|s3://||' +++ mktemp ++ sed 's|gs://||' ++ local LAST_OUT=/tmp/tmp.hE50oVze9Z +++ mktemp ++ local LAST_ERR=/tmp/tmp.9C2Y6OA6Fl ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup backup-minio -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.hE50oVze9Z ++ cat /tmp/tmp.9C2Y6OA6Fl ++ rm /tmp/tmp.hE50oVze9Z /tmp/tmp.9C2Y6OA6Fl ++ return 0 + backup_dest=operator-testing/2026-01-12T21:25:09Z + case ${storage_type} in + endpoint=minio-service + 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/2026-01-12T21:25:09Z/rs0/myApp.test.gz + grep myApp.test.gz ++ mktemp + local LAST_OUT=/tmp/tmp.DhpfrWWIED ++ mktemp + local LAST_ERR=/tmp/tmp.NcbFUEX0qL + 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/2026-01-12T21:25:09Z/rs0/myApp.test.gz + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DhpfrWWIED + cat /tmp/tmp.NcbFUEX0qL 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_data-at-rest-encryption-28616 + rm /tmp/tmp.DhpfrWWIED /tmp/tmp.NcbFUEX0qL + return 0 2026-01-12 21:25:14 56 myApp.test.gz + run_mongos 'use myApp\n db.test.insert({ x: 100501 })' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local 'command=use myApp\n db.test.insert({ x: 100501 })' + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6cMTulJ66J +++ mktemp ++ local LAST_ERR=/tmp/tmp.Fs0NW8gOop ++ 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.6cMTulJ66J ++ cat /tmp/tmp.Fs0NW8gOop ++ rm /tmp/tmp.6cMTulJ66J /tmp/tmp.Fs0NW8gOop ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.OfBS7vpO2x ++ mktemp + local LAST_ERR=/tmp/tmp.lbRk3EXc0I + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OfBS7vpO2x Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("e0eba89f-ad95-49a6-ae33-de7dcb7dfe53") } Percona Server for MongoDB server version: v8.0.17-6 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.lbRk3EXc0I + rm /tmp/tmp.OfBS7vpO2x /tmp/tmp.lbRk3EXc0I + return 0 + compare_mongos_cmd find myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 -2nd + local command=find + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local postfix=-2nd + local suffix= + local database=myApp + local collection=test + local port=27017 + local tls=false + [[ false == \t\r\u\e ]] + mongos_command=run_mongos + log 'running db.test.command() in myApp' + set +o xtrace [2026-01-12T21:26:28+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 mongodb '' '' 27017 + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + grep -E -v 'I NETWORK|W 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 driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.rsrHY7DM0m +++ mktemp ++ local LAST_ERR=/tmp/tmp.RvoAO5QBhj ++ 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.rsrHY7DM0m ++ cat /tmp/tmp.RvoAO5QBhj ++ rm /tmp/tmp.rsrHY7DM0m /tmp/tmp.RvoAO5QBhj ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.zM01p0BYKP ++ mktemp + local LAST_ERR=/tmp/tmp.nuj1kxbCLu + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.zM01p0BYKP + cat /tmp/tmp.nuj1kxbCLu + rm /tmp/tmp.zM01p0BYKP /tmp/tmp.nuj1kxbCLu + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/find-2nd.json /tmp/tmp.bcqhsPThp7/find-2nd + run_restore backup-minio + local backup_name=backup-minio + local restore_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/restore.yml + log 'running restore restore-backup-minio' + set +o xtrace [2026-01-12T21:26:31+0000] running restore restore-backup-minio + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-minio/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-minio/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.v5av4XaqJd ++ mktemp + local LAST_ERR=/tmp/tmp.IbSE2kANXu + 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.v5av4XaqJd perconaservermongodbrestore.psmdb.percona.com/restore-backup-minio created + cat /tmp/tmp.IbSE2kANXu + rm /tmp/tmp.v5av4XaqJd /tmp/tmp.IbSE2kANXu + return 0 + wait_restore backup-minio some-name + local backup_name=backup-minio + local cluster_name=some-name + local target_state=ready + local wait_cluster_consistency=1 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio object to be created.OK Waiting psmdb-restore/restore-backup-minio 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.z8cDbtYUBk +++ mktemp ++ local LAST_ERR=/tmp/tmp.IvPRzZIFcE ++ 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.z8cDbtYUBk ++ cat /tmp/tmp.IvPRzZIFcE ++ rm /tmp/tmp.z8cDbtYUBk /tmp/tmp.IvPRzZIFcE ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 1 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.itmwYnk24Z +++ mktemp ++ local LAST_ERR=/tmp/tmp.4ayZNHX1C5 ++ 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.itmwYnk24Z ++ cat /tmp/tmp.4ayZNHX1C5 ++ rm /tmp/tmp.itmwYnk24Z /tmp/tmp.4ayZNHX1C5 ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 2 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ov5rJ1KAfg +++ mktemp ++ local LAST_ERR=/tmp/tmp.blju6bon1C ++ 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.ov5rJ1KAfg ++ cat /tmp/tmp.blju6bon1C ++ rm /tmp/tmp.ov5rJ1KAfg /tmp/tmp.blju6bon1C ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 3 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ehMLOwTVdp +++ mktemp ++ local LAST_ERR=/tmp/tmp.aneGBSUCF7 ++ 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.ehMLOwTVdp ++ cat /tmp/tmp.aneGBSUCF7 ++ rm /tmp/tmp.ehMLOwTVdp /tmp/tmp.aneGBSUCF7 ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 4 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.gHZNTtCve9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.905A2hLGEc ++ 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.gHZNTtCve9 ++ cat /tmp/tmp.905A2hLGEc ++ rm /tmp/tmp.gHZNTtCve9 /tmp/tmp.905A2hLGEc ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + compare_mongos_cmd find myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local command=find + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local postfix= + local suffix= + local database=myApp + local collection=test + local port=27017 + local tls=false + [[ false == \t\r\u\e ]] + mongos_command=run_mongos + log 'running db.test.command() in myApp' + set +o xtrace [2026-01-12T21:27:58+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 mongodb '' '' 27017 + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' + grep -E -v 'I NETWORK|W 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-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.J5GZbq7pe9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.G2tW6zPZiO ++ 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.J5GZbq7pe9 ++ cat /tmp/tmp.G2tW6zPZiO ++ rm /tmp/tmp.J5GZbq7pe9 /tmp/tmp.G2tW6zPZiO ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.GrhETCXx4O ++ mktemp + local LAST_ERR=/tmp/tmp.DThFQY9pYB + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.GrhETCXx4O + cat /tmp/tmp.DThFQY9pYB + rm /tmp/tmp.GrhETCXx4O /tmp/tmp.DThFQY9pYB + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/find.json /tmp/tmp.bcqhsPThp7/find + '[' -z '' ']' + desc 'check backup and restore -- gcp-cs' + set +o xtrace ----------------------------------------------------------------------------------- check backup and restore -- gcp-cs ----------------------------------------------------------------------------------- ++ get_backup_dest backup-gcp-cs ++ local backup_name=backup-gcp-cs ++ kubectl_bin get psmdb-backup backup-gcp-cs -o 'jsonpath={.status.destination}' ++ sed -e 's/.json$//' ++ sed 's|s3://||' ++ sed 's|azure://||' +++ mktemp ++ sed 's|gs://||' ++ local LAST_OUT=/tmp/tmp.D1qkxAGijZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.yCeDTzTj7w ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup backup-gcp-cs -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.D1qkxAGijZ ++ cat /tmp/tmp.yCeDTzTj7w ++ rm /tmp/tmp.D1qkxAGijZ /tmp/tmp.yCeDTzTj7w ++ return 0 + backup_dest_gcp=operator-testing/psmdb/2026-01-12T21:25:42Z + setup_gcs_credentials + local secret_name=gcp-cs-secret + gsutil ls + echo 'Setting up GCS credentials from K8s secret: gcp-cs-secret' Setting up GCS credentials from K8s secret: gcp-cs-secret + local trace_was_on=0 + [[ ehxB == *x* ]] + trace_was_on=1 + set +x + echo 'GCS credentials configured successfully' GCS credentials configured successfully + check_backup_existence_gcs operator-testing/psmdb/2026-01-12T21:25:42Z /rs0/myApp.test.gz + backup_dest_gcp=operator-testing/psmdb/2026-01-12T21:25:42Z + obj=/rs0/myApp.test.gz + storage_name=gcp-cs + retry=0 + gcs_path=gs://operator-testing/psmdb/2026-01-12T21:25:42Z/rs0/myApp.test.gz + gsutil ls gs://operator-testing/psmdb/2026-01-12T21:25:42Z/rs0/myApp.test.gz + echo 'Backup gs://operator-testing/psmdb/2026-01-12T21:25:42Z/rs0/myApp.test.gz found in gcp-cs' Backup gs://operator-testing/psmdb/2026-01-12T21:25:42Z/rs0/myApp.test.gz found in gcp-cs + run_mongos 'use myApp\n db.test.insert({ x: 100501 })' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local 'command=use myApp\n db.test.insert({ x: 100501 })' + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xi8WXS4BYd +++ mktemp ++ local LAST_ERR=/tmp/tmp.1fSjAkpm5i ++ 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.xi8WXS4BYd ++ cat /tmp/tmp.1fSjAkpm5i ++ rm /tmp/tmp.xi8WXS4BYd /tmp/tmp.1fSjAkpm5i ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.LXouIneEIQ ++ mktemp + local LAST_ERR=/tmp/tmp.pAVsrUJv2f + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.LXouIneEIQ Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("0d17e019-726d-45ca-ac5e-c9f7c952e128") } Percona Server for MongoDB server version: v8.0.17-6 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.pAVsrUJv2f + rm /tmp/tmp.LXouIneEIQ /tmp/tmp.pAVsrUJv2f + return 0 + compare_mongos_cmd find myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 -2nd + local command=find + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local postfix=-2nd + local suffix= + local database=myApp + local collection=test + local port=27017 + local tls=false + [[ false == \t\r\u\e ]] + mongos_command=run_mongos + log 'running db.test.command() in myApp' + set +o xtrace [2026-01-12T21:28:09+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 mongodb '' '' 27017 + grep -E -v 'I NETWORK|W 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-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.gtzCHuKFWG +++ mktemp ++ local LAST_ERR=/tmp/tmp.sCVirElCGQ ++ 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.gtzCHuKFWG ++ cat /tmp/tmp.sCVirElCGQ ++ rm /tmp/tmp.gtzCHuKFWG /tmp/tmp.sCVirElCGQ ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.VBOkxCoM2V ++ mktemp + local LAST_ERR=/tmp/tmp.flWfXGPE8o + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.VBOkxCoM2V + cat /tmp/tmp.flWfXGPE8o + rm /tmp/tmp.VBOkxCoM2V /tmp/tmp.flWfXGPE8o + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/find-2nd.json /tmp/tmp.bcqhsPThp7/find-2nd + run_restore backup-gcp-cs + local backup_name=backup-gcp-cs + local restore_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/restore.yml + log 'running restore restore-backup-gcp-cs' + set +o xtrace [2026-01-12T21:28:12+0000] running restore restore-backup-gcp-cs + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-gcp-cs/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-gcp-cs/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.F19wng8zCr ++ mktemp + local LAST_ERR=/tmp/tmp.lnUtNhK2my + 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.F19wng8zCr perconaservermongodbrestore.psmdb.percona.com/restore-backup-gcp-cs created + cat /tmp/tmp.lnUtNhK2my + rm /tmp/tmp.F19wng8zCr /tmp/tmp.lnUtNhK2my + return 0 + wait_restore backup-gcp-cs some-name + local backup_name=backup-gcp-cs + local cluster_name=some-name + local target_state=ready + local wait_cluster_consistency=1 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-gcp-cs object to be created.OK Waiting psmdb-restore/restore-backup-gcp-cs 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.Bv2zx6GafR +++ mktemp ++ local LAST_ERR=/tmp/tmp.QfOa0JzIDJ ++ 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.Bv2zx6GafR ++ cat /tmp/tmp.QfOa0JzIDJ ++ rm /tmp/tmp.Bv2zx6GafR /tmp/tmp.QfOa0JzIDJ ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 1 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bnf0y0TL6s +++ mktemp ++ local LAST_ERR=/tmp/tmp.KBQCZd4e0U ++ 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.bnf0y0TL6s ++ cat /tmp/tmp.KBQCZd4e0U ++ rm /tmp/tmp.bnf0y0TL6s /tmp/tmp.KBQCZd4e0U ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 2 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.QVXdmDfpxD +++ mktemp ++ local LAST_ERR=/tmp/tmp.hNtqlA56Eg ++ 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.QVXdmDfpxD ++ cat /tmp/tmp.hNtqlA56Eg ++ rm /tmp/tmp.QVXdmDfpxD /tmp/tmp.hNtqlA56Eg ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 3 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.d9laTJo3kT +++ mktemp ++ local LAST_ERR=/tmp/tmp.6XsjWtskWz ++ 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.d9laTJo3kT ++ cat /tmp/tmp.6XsjWtskWz ++ rm /tmp/tmp.d9laTJo3kT /tmp/tmp.6XsjWtskWz ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 4 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.SiMB8EdQbJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.hl8ctQa6PL ++ 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.SiMB8EdQbJ ++ cat /tmp/tmp.hl8ctQa6PL ++ rm /tmp/tmp.SiMB8EdQbJ /tmp/tmp.hl8ctQa6PL ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + compare_mongos_cmd find myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local command=find + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local postfix= + local suffix= + local database=myApp + local collection=test + local port=27017 + local tls=false + [[ false == \t\r\u\e ]] + mongos_command=run_mongos + log 'running db.test.command() in myApp' + set +o xtrace [2026-01-12T21:29:41+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 mongodb '' '' 27017 + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.data-at-rest-encryption-28616 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo + grep -E -v 'I NETWORK|W 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/' ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.zf5pIkDWPC +++ mktemp ++ local LAST_ERR=/tmp/tmp.ROcb2vAprb ++ 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.zf5pIkDWPC ++ cat /tmp/tmp.ROcb2vAprb ++ rm /tmp/tmp.zf5pIkDWPC /tmp/tmp.ROcb2vAprb ++ return 0 + local client_container=psmdb-client-696897d69b-bmt72 + kubectl_bin exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.4S6OyUm77E ++ mktemp + local LAST_ERR=/tmp/tmp.cchd7uvXxP + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-bmt72 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.data-at-rest-encryption-28616.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.4S6OyUm77E + cat /tmp/tmp.cchd7uvXxP + rm /tmp/tmp.4S6OyUm77E /tmp/tmp.cchd7uvXxP + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/compare/find.json /tmp/tmp.bcqhsPThp7/find + desc 'check logs that cluster encrypted' + set +o xtrace ----------------------------------------------------------------------------------- check logs that cluster encrypted ----------------------------------------------------------------------------------- + kubectl_bin logs some-name-rs0-0 -c mongod + grep -i 'Encryption keys DB is initialized successfully' ++ mktemp + local LAST_OUT=/tmp/tmp.t28P2WWMGy ++ mktemp + local LAST_ERR=/tmp/tmp.iKYfudeaNA + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-0 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.t28P2WWMGy + cat /tmp/tmp.iKYfudeaNA + rm /tmp/tmp.t28P2WWMGy /tmp/tmp.iKYfudeaNA + return 0 {"t":{"$date":"2026-01-12T21:22:53.423+00:00"},"s":"I", "c":"STORAGE", "id":29039, "svc":"S", "ctx":"initandlisten","msg":"Encryption keys DB is initialized successfully"} + log 'psmdb/some-name is properly encrypted: OK' + set +o xtrace [2026-01-12T21:29:45+0000] psmdb/some-name is properly encrypted: OK + desc 'check logs for unencrypted cluster' + set +o xtrace ----------------------------------------------------------------------------------- check logs for unencrypted cluster ----------------------------------------------------------------------------------- + log 'disabling encryption (this will cause pods to crash because data is already encrypted)' + set +o xtrace [2026-01-12T21:29:45+0000] disabling encryption (this will cause pods to crash because data is already encrypted) + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/some-name-unencrypted.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/some-name-unencrypted.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1961/e2e-tests/data-at-rest-encryption/conf/some-name-unencrypted.yml + yq eval '(.spec | select(.image == null)).image = "perconalab/percona-server-mongodb-operator:main-mongod8.0"' ++ mktemp + 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-1961-7f9b8fd6"' + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' + /usr/sbin/sed -e s/NAME_SPACE/data-at-rest-encryption-28616/g + yq eval '.spec.upgradeOptions.apply="Never"' + local LAST_OUT=/tmp/tmp.yQdsMLCOBS ++ mktemp + local LAST_ERR=/tmp/tmp.TjRwZeIliS + 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.yQdsMLCOBS perconaservermongodb.psmdb.percona.com/some-name configured + cat /tmp/tmp.TjRwZeIliS + rm /tmp/tmp.yQdsMLCOBS /tmp/tmp.TjRwZeIliS + return 0 + log 'waiting for 30 seconds' + set +o xtrace [2026-01-12T21:29:52+0000] waiting for 30 seconds + sleep 30 + log 'checking if encryption is disabled' + set +o xtrace [2026-01-12T21:30:22+0000] checking if encryption is disabled + retry=0 + encryption_disabled=0 + true ++ kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers ++ awk '{print $1}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qUGMKdsYr0 +++ mktemp ++ local LAST_ERR=/tmp/tmp.gMcHOUgdol ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pod -l app.kubernetes.io/component=cfg --no-headers ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.qUGMKdsYr0 ++ cat /tmp/tmp.gMcHOUgdol ++ rm /tmp/tmp.qUGMKdsYr0 /tmp/tmp.gMcHOUgdol ++ return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers | awk '{print $1}') + log 'checking pod/some-name-cfg-0 logs' + set +o xtrace [2026-01-12T21:30:23+0000] checking pod/some-name-cfg-0 logs + kubectl_bin logs some-name-cfg-0 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.SM3V7tfoM4 ++ mktemp + local LAST_ERR=/tmp/tmp.3lj8dBBaRg + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-0 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.SM3V7tfoM4 + cat /tmp/tmp.3lj8dBBaRg Error from server: Get "https://10.215.0.19:10250/containerLogs/data-at-rest-encryption-28616/some-name-cfg-0/mongod": dial timeout, backstop + sleep 0 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-0 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.SM3V7tfoM4 + cat /tmp/tmp.3lj8dBBaRg + rm /tmp/tmp.SM3V7tfoM4 /tmp/tmp.3lj8dBBaRg + return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers | awk '{print $1}') + log 'checking pod/some-name-cfg-1 logs' + set +o xtrace [2026-01-12T21:30:57+0000] checking pod/some-name-cfg-1 logs + kubectl_bin logs some-name-cfg-1 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.gTkGa5QDPK ++ mktemp + local LAST_ERR=/tmp/tmp.u9mW98JU1k + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.gTkGa5QDPK + cat /tmp/tmp.u9mW98JU1k Error from server (BadRequest): container "mongod" in pod "some-name-cfg-1" is waiting to start: PodInitializing + sleep 0 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.gTkGa5QDPK + cat /tmp/tmp.u9mW98JU1k Error from server (BadRequest): container "mongod" in pod "some-name-cfg-1" is waiting to start: PodInitializing + sleep 4 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.gTkGa5QDPK + cat /tmp/tmp.u9mW98JU1k Error from server (BadRequest): container "mongod" in pod "some-name-cfg-1" is waiting to start: PodInitializing + sleep 8 + cat /tmp/tmp.gTkGa5QDPK + cat /tmp/tmp.u9mW98JU1k Error from server (BadRequest): container "mongod" in pod "some-name-cfg-1" is waiting to start: PodInitializing + rm /tmp/tmp.gTkGa5QDPK /tmp/tmp.u9mW98JU1k + return 1 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers | awk '{print $1}') + log 'checking pod/some-name-cfg-2 logs' + set +o xtrace [2026-01-12T21:31:12+0000] checking pod/some-name-cfg-2 logs + kubectl_bin logs some-name-cfg-2 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.zP1u77zVKT ++ mktemp + local LAST_ERR=/tmp/tmp.XgUrx9aDrV + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-2 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.zP1u77zVKT + cat /tmp/tmp.XgUrx9aDrV + rm /tmp/tmp.zP1u77zVKT /tmp/tmp.XgUrx9aDrV + return 0 ++ kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers ++ awk '{print $1}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.gWggi6jNSP +++ mktemp ++ local LAST_ERR=/tmp/tmp.DSRJD5Xmcu ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pod -l app.kubernetes.io/component=mongod --no-headers ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.gWggi6jNSP ++ cat /tmp/tmp.DSRJD5Xmcu ++ rm /tmp/tmp.gWggi6jNSP /tmp/tmp.DSRJD5Xmcu ++ return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers | awk '{print $1}') + log 'checking pod/some-name-rs0-0 logs' + set +o xtrace [2026-01-12T21:31:16+0000] checking pod/some-name-rs0-0 logs + kubectl_bin logs some-name-rs0-0 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.vmgvaFXQn7 ++ mktemp + local LAST_ERR=/tmp/tmp.IRzSbbWOQ2 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-0 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.vmgvaFXQn7 + cat /tmp/tmp.IRzSbbWOQ2 + rm /tmp/tmp.vmgvaFXQn7 /tmp/tmp.IRzSbbWOQ2 + return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers | awk '{print $1}') + log 'checking pod/some-name-rs0-1 logs' + set +o xtrace [2026-01-12T21:31:17+0000] checking pod/some-name-rs0-1 logs + kubectl_bin logs some-name-rs0-1 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.afaajqtpqi ++ mktemp + local LAST_ERR=/tmp/tmp.4bmngeEFcG + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.afaajqtpqi + cat /tmp/tmp.4bmngeEFcG Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + sleep 0 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.afaajqtpqi + cat /tmp/tmp.4bmngeEFcG Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + sleep 4 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.afaajqtpqi + cat /tmp/tmp.4bmngeEFcG Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + sleep 8 + cat /tmp/tmp.afaajqtpqi + cat /tmp/tmp.4bmngeEFcG Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + rm /tmp/tmp.afaajqtpqi /tmp/tmp.4bmngeEFcG + return 1 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers | awk '{print $1}') + log 'checking pod/some-name-rs0-2 logs' + set +o xtrace [2026-01-12T21:31:33+0000] checking pod/some-name-rs0-2 logs + kubectl_bin logs some-name-rs0-2 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.VkEXDBWg2x ++ mktemp + local LAST_ERR=/tmp/tmp.LfedkpMV8q + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-2 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.VkEXDBWg2x + cat /tmp/tmp.LfedkpMV8q + rm /tmp/tmp.VkEXDBWg2x /tmp/tmp.LfedkpMV8q + return 0 + [[ 0 == 1 ]] + [[ 0 == 15 ]] + retry=1 + log '(retry 1) waiting for encryption to disabled' + set +o xtrace [2026-01-12T21:31:35+0000] (retry 1) waiting for encryption to disabled + sleep 15 + continue + true ++ kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers ++ awk '{print $1}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.WQEOccnw5I +++ mktemp ++ local LAST_ERR=/tmp/tmp.Key0sKn9Yf ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pod -l app.kubernetes.io/component=cfg --no-headers ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.WQEOccnw5I ++ cat /tmp/tmp.Key0sKn9Yf ++ rm /tmp/tmp.WQEOccnw5I /tmp/tmp.Key0sKn9Yf ++ return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers | awk '{print $1}') + log 'checking pod/some-name-cfg-0 logs' + set +o xtrace [2026-01-12T21:31:51+0000] checking pod/some-name-cfg-0 logs + kubectl_bin logs some-name-cfg-0 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.nk1IyMquoN ++ mktemp + local LAST_ERR=/tmp/tmp.6lY6dIOhN7 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-0 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.nk1IyMquoN + cat /tmp/tmp.6lY6dIOhN7 + rm /tmp/tmp.nk1IyMquoN /tmp/tmp.6lY6dIOhN7 + return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers | awk '{print $1}') + log 'checking pod/some-name-cfg-1 logs' + set +o xtrace [2026-01-12T21:31:54+0000] checking pod/some-name-cfg-1 logs + kubectl_bin logs some-name-cfg-1 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.5CmiFifzJg ++ mktemp + local LAST_ERR=/tmp/tmp.LyUTUp7XEh + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-1 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.5CmiFifzJg + cat /tmp/tmp.LyUTUp7XEh + rm /tmp/tmp.5CmiFifzJg /tmp/tmp.LyUTUp7XEh + return 0 [1768253512:436902][1:0x7b2d1e110200], file:WiredTiger.wt, connection: [WT_VERB_DEFAULT][ERROR]: __wti_btree_tree_open, 665: This may be due to the database files being encrypted, being from an older version or due to corruption on disk: WT_PANIC: WiredTiger library panic [1768253512:440903][1:0x7b2d1e110200], file:WiredTiger.wt, connection: [WT_VERB_DEFAULT][ERROR]: __wti_btree_tree_open, 665: This may be due to the database files being encrypted, being from an older version or due to corruption on disk: WT_PANIC: WiredTiger library panic [1768253512:444622][1:0x7b2d1e110200], file:WiredTiger.wt, connection: [WT_VERB_DEFAULT][ERROR]: __wti_btree_tree_open, 665: This may be due to the database files being encrypted, being from an older version or due to corruption on disk: WT_PANIC: WiredTiger library panic + encryption_disabled=1 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=cfg --no-headers | awk '{print $1}') + log 'checking pod/some-name-cfg-2 logs' + set +o xtrace [2026-01-12T21:31:55+0000] checking pod/some-name-cfg-2 logs + kubectl_bin logs some-name-cfg-2 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.tWtVwodqSz ++ mktemp + local LAST_ERR=/tmp/tmp.bz6TNdPz6S + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-cfg-2 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.tWtVwodqSz + cat /tmp/tmp.bz6TNdPz6S + rm /tmp/tmp.tWtVwodqSz /tmp/tmp.bz6TNdPz6S + return 0 ++ kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers ++ awk '{print $1}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.GQSNcmEX9K +++ mktemp ++ local LAST_ERR=/tmp/tmp.APHdwLEzdt ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pod -l app.kubernetes.io/component=mongod --no-headers ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.GQSNcmEX9K ++ cat /tmp/tmp.APHdwLEzdt ++ rm /tmp/tmp.GQSNcmEX9K /tmp/tmp.APHdwLEzdt ++ return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers | awk '{print $1}') + log 'checking pod/some-name-rs0-0 logs' + set +o xtrace [2026-01-12T21:31:58+0000] checking pod/some-name-rs0-0 logs + kubectl_bin logs some-name-rs0-0 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.HBG0M47b8T ++ mktemp + local LAST_ERR=/tmp/tmp.OjVC0mecJR + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-0 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.HBG0M47b8T + cat /tmp/tmp.OjVC0mecJR + rm /tmp/tmp.HBG0M47b8T /tmp/tmp.OjVC0mecJR + return 0 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers | awk '{print $1}') + log 'checking pod/some-name-rs0-1 logs' + set +o xtrace [2026-01-12T21:32:00+0000] checking pod/some-name-rs0-1 logs + kubectl_bin logs some-name-rs0-1 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.tFipLM3D7J ++ mktemp + local LAST_ERR=/tmp/tmp.9NR9VzNEtN + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.tFipLM3D7J + cat /tmp/tmp.9NR9VzNEtN Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + sleep 0 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.tFipLM3D7J + cat /tmp/tmp.9NR9VzNEtN Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + sleep 4 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-1 -c mongod + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.tFipLM3D7J + cat /tmp/tmp.9NR9VzNEtN Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + sleep 8 + cat /tmp/tmp.tFipLM3D7J + cat /tmp/tmp.9NR9VzNEtN Error from server (BadRequest): container "mongod" in pod "some-name-rs0-1" is waiting to start: PodInitializing + rm /tmp/tmp.tFipLM3D7J /tmp/tmp.9NR9VzNEtN + return 1 + for pod in $(kubectl_bin get pod -l app.kubernetes.io/component=mongod --no-headers | awk '{print $1}') + log 'checking pod/some-name-rs0-2 logs' + set +o xtrace [2026-01-12T21:32:16+0000] checking pod/some-name-rs0-2 logs + kubectl_bin logs some-name-rs0-2 -c mongod + grep -i 'This may be due to the database files being encrypted, being from an older version or due to corruption on disk' ++ mktemp + local LAST_OUT=/tmp/tmp.O46vuhLKk2 ++ mktemp + local LAST_ERR=/tmp/tmp.c8FHLxtRlg + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs some-name-rs0-2 -c mongod + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.O46vuhLKk2 + cat /tmp/tmp.c8FHLxtRlg + rm /tmp/tmp.O46vuhLKk2 /tmp/tmp.c8FHLxtRlg + return 0 + [[ 1 == 1 ]] + log 'psmdb/some-name encryption is disabled: OK' + set +o xtrace [2026-01-12T21:32:20+0000] psmdb/some-name encryption is disabled: OK + break + destroy_vault + local name=vault-service + local vault_ns ++ helm list --all-namespaces --filter vault-service ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + vault_ns=data-at-rest-encryption-28616 + desc 'destroy vault' + set +o xtrace ----------------------------------------------------------------------------------- destroy vault ----------------------------------------------------------------------------------- ++ kubectl api-resources ++ grep vault ++ awk '{print $1}' + '[' -n data-at-rest-encryption-28616 ']' + helm uninstall vault-service --namespace data-at-rest-encryption-28616 release "vault-service" uninstalled ++ kubectl get clusterrolebinding -l app.kubernetes.io/instance=vault-service -o 'jsonpath={range .items[*]}{.metadata.name}{" "}{end}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole -l app.kubernetes.io/instance=vault-service -o 'jsonpath={range .items[*]}{.metadata.name}{" "}{end}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : ++ kubectl get mutatingwebhookconfiguration -l app.kubernetes.io/instance=vault-service -o 'jsonpath={range .items[*]}{.metadata.name}{" "}{end}' + timeout 30 kubectl delete mutatingwebhookconfiguration error: resource(s) were provided, but no name was specified + : + destroy data-at-rest-encryption-28616 + local namespace=data-at-rest-encryption-28616 + local ignore_logs=true + [[ 0 == 1 ]] + desc 'destroy cluster/operator and all other resources' + set +o xtrace ----------------------------------------------------------------------------------- destroy cluster/operator and all other resources ----------------------------------------------------------------------------------- + '[' true == false ']' + delete_backups + desc 'Delete psmdb-backup' + set +o xtrace ----------------------------------------------------------------------------------- Delete psmdb-backup ----------------------------------------------------------------------------------- ++ kubectl_bin get psmdb-backup --no-headers ++ wc -l +++ mktemp ++ local LAST_OUT=/tmp/tmp.1PE6tVGHbW +++ mktemp ++ local LAST_ERR=/tmp/tmp.hTwjfnLVd8 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup --no-headers ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.1PE6tVGHbW ++ cat /tmp/tmp.hTwjfnLVd8 ++ rm /tmp/tmp.1PE6tVGHbW /tmp/tmp.hTwjfnLVd8 ++ return 0 + '[' 2 '!=' 0 ']' + kubectl_bin get psmdb-backup ++ mktemp + local LAST_OUT=/tmp/tmp.VJb9q2IIkK ++ mktemp + local LAST_ERR=/tmp/tmp.Gz9yHxF40j + 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.VJb9q2IIkK NAME CLUSTER STORAGE DESTINATION TYPE SIZE STATUS COMPLETED AGE backup-gcp-cs some-name gcp-cs s3://operator-testing/psmdb/2026-01-12T21:25:42Z logical 93.93KB ready 6m20s 6m49s backup-minio some-name minio s3://operator-testing/2026-01-12T21:25:09Z logical 89.04KB ready 6m55s 7m22s + cat /tmp/tmp.Gz9yHxF40j + rm /tmp/tmp.VJb9q2IIkK /tmp/tmp.Gz9yHxF40j + return 0 + kubectl_bin delete psmdb-backup --all ++ mktemp + local LAST_OUT=/tmp/tmp.C12VPzc1Fc ++ mktemp + local LAST_ERR=/tmp/tmp.wSK0oONShv + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete psmdb-backup --all + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.C12VPzc1Fc perconaservermongodbbackup.psmdb.percona.com "backup-gcp-cs" deleted from data-at-rest-encryption-28616 namespace perconaservermongodbbackup.psmdb.percona.com "backup-minio" deleted from data-at-rest-encryption-28616 namespace + cat /tmp/tmp.wSK0oONShv