which: no gsed in (/root/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/var/lib/snapd/snap/bin) mkdir -p e2e-tests/reports e2e-tests/logs ========================================================================================= test session starts ========================================================================================== platform linux -- Python 3.14.5, pytest-9.1.1, pluggy-1.6.0 -- /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/.venv/bin/python cachedir: .pytest_cache metadata: {'Python': '3.14.5', 'Platform': 'Linux-6.18.3-200.fc43.x86_64-x86_64-with-glibc2.42', 'Packages': {'pytest': '9.1.1', 'pluggy': '1.6.0'}, 'Plugins': {'dependency': '0.6.1', 'json-report': '1.5.0', 'metadata': '3.1.1', 'html': '4.2.0'}, 'CI': 'true', 'BUILD_NUMBER': '3', 'BUILD_ID': '3', 'BUILD_URL': 'https://cloud.cd.percona.com/job/cloud-psmdb-operator/job/PR-2491/3/', 'NODE_NAME': 'hcloud-tfqjtxqnhrf6stbu', 'JOB_NAME': 'cloud-psmdb-operator/PR-2491', 'BUILD_TAG': 'jenkins-cloud-psmdb-operator-PR-2491-3', 'EXECUTOR_NUMBER': '0', 'JENKINS_URL': 'https://cloud.cd.percona.com/', 'WORKSPACE': '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491', 'GIT_COMMIT': '6cfab0ed6bdcd3601b0c48816a22ee4ab446b92a', 'GIT_URL': 'https://github.com/percona/percona-server-mongodb-operator.git', 'GIT_BRANCH': 'PR-2491'} rootdir: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491 configfile: pyproject.toml plugins: dependency-0.6.1, json-report-1.5.0, metadata-3.1.1, html-4.2.0 collecting ... collected 1 item e2e-tests/test_pytest_wrapper.py::test_bash_wrapper[ldap-tls] [19:58:13.749139] WARNING kubectl error: Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 [19:58:14.991475] INFO Environment variables: KUBE_VERSION=1.33 PLATFORM=gke ARCH= EKS= GKE=1 AKS= OPENSHIFT= KIND= MINIKUBE= RANCHER= API=psmdb.percona.com/v1 REGISTRY_NAME=docker.io GIT_COMMIT=6cfab0ed6bdcd3601b0c48816a22ee4ab446b92a GIT_BRANCH=PR-2491 OPERATOR_VERSION=1.24.0 IMAGE=docker.io/perconalab/percona-server-mongodb-operator:PR-2491-6cfab0ed6 IMAGE_MONGOD=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 IMAGE_MONGOD_CHAIN=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0 docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 IMAGE_SEARCH=docker.io/perconalab/percona-server-mongodb-operator:main-mongot IMAGE_BACKUP=docker.io/perconalab/percona-server-mongodb-operator:main-backup IMAGE_PMM_CLIENT=docker.io/percona/pmm-client:2.44.1-1 IMAGE_PMM_SERVER=docker.io/perconalab/pmm-server:dev-latest IMAGE_PMM3_CLIENT=docker.io/perconalab/pmm-client:3-dev-latest IMAGE_PMM3_SERVER=docker.io/perconalab/pmm-server:3-dev-latest IMAGE_LOGCOLLECTOR=docker.io/perconalab/fluentbit:main-logcollector IMAGE_CLUSTERSYNC=docker.io/percona/percona-clustersync-mongodb:0.9.0 IMAGE_AWS_CLI=docker.io/amazon/aws-cli:2.34.60 CERT_MANAGER_VER=1.21.0 CHAOS_MESH_VER=2.7.1 MINIO_VER=5.4.0 PMM_SERVER_VER=9.9.9 CLEAN_NAMESPACE=1 DELETE_CRD_ON_START=1 SKIP_DELETE=0 SKIP_BACKUPS_TO_AWS_GCP_AZURE= UPDATE_COMPARE_FILES=0 Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 Debug logging disabled. + main + create_infra ldap-tls-26535 + local ns=ldap-tls-26535 + echo ldap-tls-26535 + [[ 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-2491/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.tfhTIgQkTh ++ mktemp + local LAST_ERR=/tmp/tmp.7RJjtslZLY + local exit_status=0 + local timeout=4 + args=('delete' '-f' '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/crd.yaml' '--ignore-not-found' '--wait=false') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.tfhTIgQkTh + cat /tmp/tmp.7RJjtslZLY + rm /tmp/tmp.tfhTIgQkTh /tmp/tmp.7RJjtslZLY + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/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\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbbackups" + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbbackups" + : + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.VgmURTObyb ++ mktemp + local LAST_ERR=/tmp/tmp.0uv1rXGyow + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbbackups.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.VgmURTObyb + cat /tmp/tmp.0uv1rXGyow + rm /tmp/tmp.VgmURTObyb /tmp/tmp.0uv1rXGyow + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + grep -v NAMESPACE + kubectl get perconaservermongodbclustersyncs.psmdb.percona.com --all-namespaces -o wide + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbclustersyncs.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbclustersyncs" + kubectl patch perconaservermongodbclustersyncs.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbclustersyncs" + : + kubectl_bin wait --for=delete crd perconaservermongodbclustersyncs.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.J7XXMX1atf ++ mktemp + local LAST_ERR=/tmp/tmp.RsYRGC7Dvx + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbclustersyncs.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbclustersyncs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.J7XXMX1atf + cat /tmp/tmp.RsYRGC7Dvx + rm /tmp/tmp.J7XXMX1atf /tmp/tmp.RsYRGC7Dvx + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + grep -v NAMESPACE + kubectl get perconaservermongodbrestores.psmdb.percona.com --all-namespaces -o wide + 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.qusCM1hg6B ++ mktemp + local LAST_ERR=/tmp/tmp.UIDSabkIxw + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbrestores.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.qusCM1hg6B + cat /tmp/tmp.UIDSabkIxw + rm /tmp/tmp.qusCM1hg6B /tmp/tmp.UIDSabkIxw + 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.LF37fMxcao ++ mktemp + local LAST_ERR=/tmp/tmp.8ADoUCSlc5 + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbs.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.LF37fMxcao + cat /tmp/tmp.8ADoUCSlc5 + rm /tmp/tmp.LF37fMxcao /tmp/tmp.8ADoUCSlc5 + 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-2491/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.DGBwm6pDGs ++ mktemp + local LAST_ERR=/tmp/tmp.cclq9Y4zzg + local exit_status=0 + local timeout=4 + args=('delete' '-f' '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/cw-rbac.yaml' '--ignore-not-found') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DGBwm6pDGs + cat /tmp/tmp.cclq9Y4zzg + rm /tmp/tmp.DGBwm6pDGs /tmp/tmp.cclq9Y4zzg + return 0 + check_crd_for_deletion PR-2491-6cfab0ed6 + local git_tag=PR-2491-6cfab0ed6 ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-2491-6cfab0ed6/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.pXBLWLLJGz +++ mktemp ++ local LAST_ERR=/tmp/tmp.DnYYRODmWI ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'crd/null' '-o' 'jsonpath={.status.conditions[-1].type}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.pXBLWLLJGz ++ cat /tmp/tmp.DnYYRODmWI 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.pXBLWLLJGz ++ cat /tmp/tmp.DnYYRODmWI 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.pXBLWLLJGz ++ cat /tmp/tmp.DnYYRODmWI Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.pXBLWLLJGz ++ cat /tmp/tmp.DnYYRODmWI Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.pXBLWLLJGz /tmp/tmp.DnYYRODmWI ++ return 1 + [[ '' == Terminating ]] + '[' -n psmdb-operator ']' + create_namespace psmdb-operator + local namespace=psmdb-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + [[ -n '' ]] + desc 'cleaned up old namespaces psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace psmdb-operator --ignore-not-found + xargs kubectl delete ns + awk '{print$1}' ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.hI1nECAgFv ++ mktemp + local LAST_OUT=/tmp/tmp.zWwNKFVOMX ++ mktemp + local LAST_ERR=/tmp/tmp.d1ffRALLrR + local exit_status=0 + local timeout=4 + args=('get' 'ns') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + local LAST_ERR=/tmp/tmp.5iGgHUQ4Qo + local exit_status=0 + local timeout=4 + args=('delete' 'namespace' 'psmdb-operator' '--ignore-not-found') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] + for i in $(seq 0 2) + set +e + kubectl get ns ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.hI1nECAgFv + cat /tmp/tmp.d1ffRALLrR + rm /tmp/tmp.hI1nECAgFv /tmp/tmp.d1ffRALLrR + 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.zWwNKFVOMX + cat /tmp/tmp.5iGgHUQ4Qo + rm /tmp/tmp.zWwNKFVOMX /tmp/tmp.5iGgHUQ4Qo + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.rn6SvjKFfH ++ mktemp + local LAST_ERR=/tmp/tmp.vBCA2JdUQ1 + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'namespace' 'psmdb-operator') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.rn6SvjKFfH + cat /tmp/tmp.vBCA2JdUQ1 + rm /tmp/tmp.rn6SvjKFfH /tmp/tmp.vBCA2JdUQ1 + 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.z8nszZFlf9 ++ mktemp + local LAST_ERR=/tmp/tmp.crM3nmBAGE + local exit_status=0 + local timeout=4 + args=('create' 'namespace' 'psmdb-operator') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.z8nszZFlf9 namespace/psmdb-operator created + cat /tmp/tmp.crM3nmBAGE + rm /tmp/tmp.z8nszZFlf9 /tmp/tmp.crM3nmBAGE + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.ZPTyMmqPvP +++ mktemp ++ local LAST_ERR=/tmp/tmp.Adz2wJQtwl ++ local exit_status=0 ++ local timeout=4 ++ args=('config' 'current-context') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.ZPTyMmqPvP ++ cat /tmp/tmp.Adz2wJQtwl ++ rm /tmp/tmp.ZPTyMmqPvP /tmp/tmp.Adz2wJQtwl ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.v8j2H9T2lN ++ mktemp + local LAST_ERR=/tmp/tmp.KsdzE8j5Ha + local exit_status=0 + local timeout=4 + args=('config' 'set-context' 'gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5' '--namespace=psmdb-operator') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.v8j2H9T2lN Context "gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5" modified. + cat /tmp/tmp.KsdzE8j5Ha + rm /tmp/tmp.v8j2H9T2lN /tmp/tmp.KsdzE8j5Ha + return 0 + deploy_operator + desc 'start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2491-6cfab0ed6' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2491-6cfab0ed6 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.YRuizUkPHp ++ mktemp + local LAST_ERR=/tmp/tmp.At7ODtE0nJ + local exit_status=0 + local timeout=4 + args=('apply' '--server-side' '--force-conflicts' '-f' '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/crd.yaml') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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-2491/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.YRuizUkPHp customresourcedefinition.apiextensions.k8s.io/perconaservermongodbbackups.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbclustersyncs.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.At7ODtE0nJ + rm /tmp/tmp.YRuizUkPHp /tmp/tmp.At7ODtE0nJ + 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-2491/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.szPOgPy3nJ ++ mktemp + local LAST_ERR=/tmp/tmp.0z8UTTH7QY + local exit_status=0 + local timeout=4 + args=('apply' '-n' 'psmdb-operator' '-f' '-') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.szPOgPy3nJ 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.0z8UTTH7QY + rm /tmp/tmp.szPOgPy3nJ /tmp/tmp.0z8UTTH7QY + return 0 + add_arch_to_podspecs - + yq eval $'\n\t\t\t(.spec.template.spec.containers[].image = "docker.io/perconalab/percona-server-mongodb-operator:PR-2491-6cfab0ed6") |\n\t\t\t((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") |\n\t\t\t((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - + arch_scheduling_enabled + [[ -n '' ]] + cat - ++ mktemp + local LAST_OUT=/tmp/tmp.fIo6cKD5ug ++ mktemp + local LAST_ERR=/tmp/tmp.fqwWMmDhyZ + local exit_status=0 + local timeout=4 + args=('apply' '-n' 'psmdb-operator' '-f' '-') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -n psmdb-operator -f - + return + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.fIo6cKD5ug deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.fqwWMmDhyZ + rm /tmp/tmp.fIo6cKD5ug /tmp/tmp.fqwWMmDhyZ + 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.P6PMzHHgF3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.EsHfuvOxO4 ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'pods' '--selector=name=percona-server-mongodb-operator' '-o' 'jsonpath={.items[].metadata.name}' '-n' 'psmdb-operator') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.P6PMzHHgF3 ++ cat /tmp/tmp.EsHfuvOxO4 ++ rm /tmp/tmp.P6PMzHHgF3 /tmp/tmp.EsHfuvOxO4 ++ return 0 + wait_operator_pod percona-server-mongodb-operator-78964f6749-95fwm + local pod=percona-server-mongodb-operator-78964f6749-95fwm + set +o xtrace waiting for pod/percona-server-mongodb-operator-78964f6749-95fwm to be ready.OK + echo 'Print operator info from log' Print operator info from log + grep 'Manager starting up' ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator +++ mktemp ++ local LAST_OUT=/tmp/tmp.gye0xfSI7k +++ mktemp ++ local LAST_ERR=/tmp/tmp.pGhrVHamCX ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'pods' '--selector=name=percona-server-mongodb-operator' '-o' 'jsonpath={.items[].metadata.name}' '-n' 'psmdb-operator') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.gye0xfSI7k ++ cat /tmp/tmp.pGhrVHamCX ++ rm /tmp/tmp.gye0xfSI7k /tmp/tmp.pGhrVHamCX ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-78964f6749-95fwm ++ mktemp + local LAST_OUT=/tmp/tmp.3eaxtS6t9j ++ mktemp + local LAST_ERR=/tmp/tmp.WxRN5F5mtI + local exit_status=0 + local timeout=4 + args=('logs' '-n' 'psmdb-operator' 'percona-server-mongodb-operator-78964f6749-95fwm') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs -n psmdb-operator percona-server-mongodb-operator-78964f6749-95fwm + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.3eaxtS6t9j + cat /tmp/tmp.WxRN5F5mtI + rm /tmp/tmp.3eaxtS6t9j /tmp/tmp.WxRN5F5mtI + return 0 2026-08-04T19:59:12.737Z INFO setup Manager starting up {"gitCommit": "6cfab0ed6bdcd3601b0c48816a22ee4ab446b92a", "gitBranch": "PR-2491-6cfab0ed6", "buildTime": "", "goVersion": "go1.26.5", "os": "linux", "arch": "amd64"} + create_namespace ldap-tls-26535 + local namespace=ldap-tls-26535 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ awk '-F ' '{print $2}' ++ tail -n1 ++ 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 + : ++ awk '{print $1}' ++ kubectl api-resources ++ 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}' + 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 '' ]] + xargs kubectl delete ns + desc 'cleaned up old namespaces ldap-tls-26535' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces ldap-tls-26535 ----------------------------------------------------------------------------------- ++ mktemp + kubectl_bin delete namespace ldap-tls-26535 --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.e5CA8wi37u ++ mktemp + local LAST_OUT=/tmp/tmp.VFrAlpzpHX + local LAST_ERR=/tmp/tmp.XMzaZOBjJW + local exit_status=0 + local timeout=4 + args=('get' 'ns') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled ++ mktemp + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + local LAST_ERR=/tmp/tmp.teD7PFvOzy + local exit_status=0 + set +e + local timeout=4 + args=('delete' 'namespace' 'ldap-tls-26535' '--ignore-not-found') + local args + kubectl get ns + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace ldap-tls-26535 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.e5CA8wi37u + cat /tmp/tmp.XMzaZOBjJW + rm /tmp/tmp.e5CA8wi37u /tmp/tmp.XMzaZOBjJW + 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.VFrAlpzpHX + cat /tmp/tmp.teD7PFvOzy + rm /tmp/tmp.VFrAlpzpHX /tmp/tmp.teD7PFvOzy + return 0 + kubectl_bin wait --for=delete namespace ldap-tls-26535 ++ mktemp + local LAST_OUT=/tmp/tmp.iMCcYgHiYn ++ mktemp + local LAST_ERR=/tmp/tmp.zZlSW4QFbV + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'namespace' 'ldap-tls-26535') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace ldap-tls-26535 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.iMCcYgHiYn + cat /tmp/tmp.zZlSW4QFbV + rm /tmp/tmp.iMCcYgHiYn /tmp/tmp.zZlSW4QFbV + return 0 + desc 'create namespace ldap-tls-26535' + set +o xtrace ----------------------------------------------------------------------------------- create namespace ldap-tls-26535 ----------------------------------------------------------------------------------- + kubectl_bin create namespace ldap-tls-26535 ++ mktemp + local LAST_OUT=/tmp/tmp.TAPkCaQeu5 ++ mktemp + local LAST_ERR=/tmp/tmp.XLBSi9hjnM + local exit_status=0 + local timeout=4 + args=('create' 'namespace' 'ldap-tls-26535') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace ldap-tls-26535 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.TAPkCaQeu5 namespace/ldap-tls-26535 created + cat /tmp/tmp.XLBSi9hjnM + rm /tmp/tmp.TAPkCaQeu5 /tmp/tmp.XLBSi9hjnM + return 0 + set_kube_ctx ldap-tls-26535 + local namespace=ldap-tls-26535 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.FBqHkqzPPd +++ mktemp ++ local LAST_ERR=/tmp/tmp.vHSkFsTpY9 ++ local exit_status=0 ++ local timeout=4 ++ args=('config' 'current-context') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.FBqHkqzPPd ++ cat /tmp/tmp.vHSkFsTpY9 ++ rm /tmp/tmp.FBqHkqzPPd /tmp/tmp.vHSkFsTpY9 ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5 --namespace=ldap-tls-26535 ++ mktemp + local LAST_OUT=/tmp/tmp.UQFGfWer75 ++ mktemp + local LAST_ERR=/tmp/tmp.H4ipHhJ4bi + local exit_status=0 + local timeout=4 + args=('config' 'set-context' 'gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5' '--namespace=ldap-tls-26535') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5 --namespace=ldap-tls-26535 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.UQFGfWer75 Context "gke_cloud-dev-112233_us-central1-c_jen-psmdb-2491-6cfab0ed6-3-cluster5" modified. + cat /tmp/tmp.H4ipHhJ4bi + rm /tmp/tmp.UQFGfWer75 /tmp/tmp.H4ipHhJ4bi + return 0 + deploy_cert_manager + [[ gke == rancher ]] + desc 'deploy cert manager' + set +o xtrace ----------------------------------------------------------------------------------- deploy cert manager ----------------------------------------------------------------------------------- + kubectl_bin -n cert-manager delete clusterissuer --all ++ mktemp + local LAST_OUT=/tmp/tmp.aNAnZsfkaj ++ mktemp + local LAST_ERR=/tmp/tmp.ClwjQfPSKm + local exit_status=0 + local timeout=4 + args=('-n' 'cert-manager' 'delete' 'clusterissuer' '--all') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager delete clusterissuer --all + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.aNAnZsfkaj + cat /tmp/tmp.ClwjQfPSKm error: the server doesn't have a resource type "clusterissuer" + sleep 0 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager delete clusterissuer --all + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.aNAnZsfkaj + cat /tmp/tmp.ClwjQfPSKm error: the server doesn't have a resource type "clusterissuer" + sleep 4 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager delete clusterissuer --all + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.aNAnZsfkaj + cat /tmp/tmp.ClwjQfPSKm error: the server doesn't have a resource type "clusterissuer" + sleep 8 + cat /tmp/tmp.aNAnZsfkaj + cat /tmp/tmp.ClwjQfPSKm error: the server doesn't have a resource type "clusterissuer" + rm /tmp/tmp.aNAnZsfkaj /tmp/tmp.ClwjQfPSKm + return 1 + : + kubectl_bin -n cert-manager delete certificate --all ++ mktemp + local LAST_OUT=/tmp/tmp.NDtVFp7sHq ++ mktemp + local LAST_ERR=/tmp/tmp.vn8cuYPPmL + local exit_status=0 + local timeout=4 + args=('-n' 'cert-manager' 'delete' 'certificate' '--all') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager delete certificate --all + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.NDtVFp7sHq + cat /tmp/tmp.vn8cuYPPmL error: the server doesn't have a resource type "certificate" + sleep 0 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager delete certificate --all + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.NDtVFp7sHq + cat /tmp/tmp.vn8cuYPPmL error: the server doesn't have a resource type "certificate" + sleep 4 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager delete certificate --all + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.NDtVFp7sHq + cat /tmp/tmp.vn8cuYPPmL error: the server doesn't have a resource type "certificate" + sleep 8 + cat /tmp/tmp.NDtVFp7sHq + cat /tmp/tmp.vn8cuYPPmL error: the server doesn't have a resource type "certificate" + rm /tmp/tmp.NDtVFp7sHq /tmp/tmp.vn8cuYPPmL + return 1 + : + kubectl_bin create namespace cert-manager ++ mktemp + local LAST_OUT=/tmp/tmp.FMzqDsQHS3 ++ mktemp + local LAST_ERR=/tmp/tmp.MgrSPXTyg3 + local exit_status=0 + local timeout=4 + args=('create' 'namespace' 'cert-manager') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace cert-manager + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.FMzqDsQHS3 namespace/cert-manager created + cat /tmp/tmp.MgrSPXTyg3 + rm /tmp/tmp.FMzqDsQHS3 /tmp/tmp.MgrSPXTyg3 + return 0 + kubectl_bin label namespace cert-manager certmanager.k8s.io/disable-validation=true ++ mktemp + local LAST_OUT=/tmp/tmp.6rhSolt92D ++ mktemp + local LAST_ERR=/tmp/tmp.EzF819VNG2 + local exit_status=0 + local timeout=4 + args=('label' 'namespace' 'cert-manager' 'certmanager.k8s.io/disable-validation=true') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl label namespace cert-manager certmanager.k8s.io/disable-validation=true + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.6rhSolt92D namespace/cert-manager labeled + cat /tmp/tmp.EzF819VNG2 + rm /tmp/tmp.6rhSolt92D /tmp/tmp.EzF819VNG2 + return 0 + curl -sL https://github.com/cert-manager/cert-manager/releases/download/v1.21.0/cert-manager.yaml + add_arch_to_podspecs - + arch_scheduling_enabled + [[ -n '' ]] + cat - + kubectl_bin apply -f - --validate=false + return namespace/cert-manager configured customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io created customresourcedefinition.apiextensions.k8s.io/orders.acme.cert-manager.io created customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io created customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io created customresourcedefinition.apiextensions.k8s.io/clusterissuers.cert-manager.io created customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io created serviceaccount/cert-manager-cainjector created serviceaccount/cert-manager created serviceaccount/cert-manager-webhook created clusterrole.rbac.authorization.k8s.io/cert-manager-cainjector created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-issuers created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificates created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-orders created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-challenges created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim created clusterrole.rbac.authorization.k8s.io/cert-manager-cluster-view created clusterrole.rbac.authorization.k8s.io/cert-manager-view created clusterrole.rbac.authorization.k8s.io/cert-manager-edit created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-approve:cert-manager-io created clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificatesigningrequests created clusterrole.rbac.authorization.k8s.io/cert-manager-webhook:subjectaccessreviews created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-cainjector created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-issuers created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificates created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-orders created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-challenges created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-approve:cert-manager-io created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificatesigningrequests created clusterrolebinding.rbac.authorization.k8s.io/cert-manager-webhook:subjectaccessreviews created role.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection created role.rbac.authorization.k8s.io/cert-manager:leaderelection created role.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created rolebinding.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection created rolebinding.rbac.authorization.k8s.io/cert-manager:leaderelection created rolebinding.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created service/cert-manager-cainjector created service/cert-manager created service/cert-manager-webhook created deployment.apps/cert-manager-cainjector created deployment.apps/cert-manager created deployment.apps/cert-manager-webhook created mutatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook created validatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook created + kubectl_bin -n cert-manager wait pod -l app.kubernetes.io/instance=cert-manager --for=condition=ready ++ mktemp + local LAST_OUT=/tmp/tmp.gNduWoe9LT ++ mktemp + local LAST_ERR=/tmp/tmp.BeMHS0s6dB + local exit_status=0 + local timeout=4 + args=('-n' 'cert-manager' 'wait' 'pod' '-l' 'app.kubernetes.io/instance=cert-manager' '--for=condition=ready') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager wait pod -l app.kubernetes.io/instance=cert-manager --for=condition=ready + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.gNduWoe9LT pod/cert-manager-cainjector-54796c9fd9-4s77w condition met pod/cert-manager-ff6db7bc5-qzmvb condition met pod/cert-manager-webhook-79bbcc47c6-6bg4t condition met + cat /tmp/tmp.BeMHS0s6dB + rm /tmp/tmp.gNduWoe9LT /tmp/tmp.BeMHS0s6dB + return 0 + sleep 120 + deploy_openldap + kubectl_bin create serviceaccount openldap ++ mktemp + local LAST_OUT=/tmp/tmp.xqWyoKrE6F ++ mktemp + local LAST_ERR=/tmp/tmp.pT9EhQ1x3E + local exit_status=0 + local timeout=4 + args=('create' 'serviceaccount' 'openldap') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create serviceaccount openldap + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.xqWyoKrE6F serviceaccount/openldap created + cat /tmp/tmp.pT9EhQ1x3E + rm /tmp/tmp.xqWyoKrE6F /tmp/tmp.pT9EhQ1x3E + return 0 + [[ -n '' ]] + yq 'select(.metadata.name == "ldap-ca").spec.dnsNames[0]="openldap.ldap-tls-26535.svc.cluster.local"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/openldap.yaml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.UZXk8qquNL ++ mktemp + local LAST_ERR=/tmp/tmp.x6tu74o4J6 + local exit_status=0 + local timeout=4 + args=('apply' '-f' '-') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.UZXk8qquNL secret/openldap created issuer.cert-manager.io/ldap-issuer created certificate.cert-manager.io/ldap-ca created deployment.apps/openldap created service/openldap created + cat /tmp/tmp.x6tu74o4J6 + rm /tmp/tmp.UZXk8qquNL /tmp/tmp.x6tu74o4J6 + return 0 + kubectl rollout status deployment/openldap --timeout=220s Waiting for deployment "openldap" rollout to finish: 0 of 1 updated replicas are available... deployment "openldap" successfully rolled out + desc 'create secrets and start client' + set +o xtrace ----------------------------------------------------------------------------------- create secrets and start client ----------------------------------------------------------------------------------- + cluster=some-name + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.7MOJjoTzEv ++ mktemp + local LAST_ERR=/tmp/tmp.F81T54j47H + local exit_status=0 + local timeout=4 + args=('apply' '-f' '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/conf/secrets.yml' '-f' '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/conf/client.yml') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/conf/client.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.7MOJjoTzEv secret/some-users created deployment.apps/psmdb-client created + cat /tmp/tmp.F81T54j47H + rm /tmp/tmp.7MOJjoTzEv /tmp/tmp.F81T54j47H + return 0 + test_mongod_openldap + cluster=some-name ++ yq /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/mongod.conf ++ yq '.security.ldap.servers="openldap.ldap-tls-26535.svc.cluster.local:636"' + kubectl_bin create secret generic some-name-rs0-mongod $'--from-literal=mongod.conf=security:\n authorization: enabled\n ldap:\n authz:\n queryTemplate: dc=ldap,dc=local??sub?(&(objectClass=groupOfUniqueNames)(uniqueMember={USER}))\n bind:\n queryUser: "cn=readonly,dc=ldap,dc=local"\n queryPassword: "readonlypass"\n servers: openldap.ldap-tls-26535.svc.cluster.local:636\n transportSecurity: tls\n userToDNMapping: \'[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"},{"match":"cn=admin,ou=perconadba,dc=ldap,dc=local","substitution":"admin"}]\'\nsetParameter:\n authenticationMechanisms: PLAIN,SCRAM-SHA-1' ++ mktemp + local LAST_OUT=/tmp/tmp.qKxiAm5KxZ ++ mktemp + local LAST_ERR=/tmp/tmp.MHDTxOQNYQ + local exit_status=0 + local timeout=4 + args=('create' 'secret' 'generic' 'some-name-rs0-mongod' '--from-literal=mongod.conf=security: authorization: enabled ldap: authz: queryTemplate: dc=ldap,dc=local??sub?(&(objectClass=groupOfUniqueNames)(uniqueMember={USER})) bind: queryUser: "cn=readonly,dc=ldap,dc=local" queryPassword: "readonlypass" servers: openldap.ldap-tls-26535.svc.cluster.local:636 transportSecurity: tls userToDNMapping: '\''[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"},{"match":"cn=admin,ou=perconadba,dc=ldap,dc=local","substitution":"admin"}]'\'' setParameter: authenticationMechanisms: PLAIN,SCRAM-SHA-1') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create secret generic some-name-rs0-mongod $'--from-literal=mongod.conf=security:\n authorization: enabled\n ldap:\n authz:\n queryTemplate: dc=ldap,dc=local??sub?(&(objectClass=groupOfUniqueNames)(uniqueMember={USER}))\n bind:\n queryUser: "cn=readonly,dc=ldap,dc=local"\n queryPassword: "readonlypass"\n servers: openldap.ldap-tls-26535.svc.cluster.local:636\n transportSecurity: tls\n userToDNMapping: \'[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"},{"match":"cn=admin,ou=perconadba,dc=ldap,dc=local","substitution":"admin"}]\'\nsetParameter:\n authenticationMechanisms: PLAIN,SCRAM-SHA-1' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.qKxiAm5KxZ secret/some-name-rs0-mongod created + cat /tmp/tmp.MHDTxOQNYQ + rm /tmp/tmp.qKxiAm5KxZ /tmp/tmp.MHDTxOQNYQ + return 0 + desc 'create first PSMDB cluster some-name' + set +o xtrace ----------------------------------------------------------------------------------- create first PSMDB cluster some-name ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/some-name.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/some-name.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/some-name.yml ++ mktemp + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + local LAST_OUT=/tmp/tmp.4jc2zdjcMx + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2491-6cfab0ed6"' + [[ -n docker.io/perconalab/fluentbit:main-logcollector ]] ++ mktemp + add_arch_to_psmdb - + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' + IMAGE_LOGCOLLECTOR=docker.io/perconalab/fluentbit:main-logcollector + yq eval '(.spec | select(has("logcollector"))).logcollector.image = strenv(IMAGE_LOGCOLLECTOR)' + arch_scheduling_enabled + [[ -n '' ]] + cat - + yq eval '.spec.upgradeOptions.apply="Never"' + yq eval '(.spec | select(has("search"))).search.image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongot"' + local LAST_ERR=/tmp/tmp.wXAfImS4Hs + local exit_status=0 + local timeout=4 + args=('apply' '-f' '-') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + /usr/sbin/sed -e s/NAME_SPACE/ldap-tls-26535/g + for i in $(seq 0 2) + set +e + kubectl apply -f - + return + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.4jc2zdjcMx perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.wXAfImS4Hs + rm /tmp/tmp.4jc2zdjcMx /tmp/tmp.wXAfImS4Hs + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- + wait_for_running some-name-rs0 3 + local name=some-name-rs0 + let last_pod=2 + local check_cluster_readiness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs0 + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-rs0-0 + local pod=some-name-rs0-0 + set +o xtrace waiting for pod/some-name-rs0-0 to be ready.............OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-rs0-1 + local pod=some-name-rs0-1 + set +o xtrace waiting for pod/some-name-rs0-1 to be ready....................OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.HzWHiBN2YV +++ mktemp ++ local LAST_ERR=/tmp/tmp.qw3JHAucc3 ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name' '-o' 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.HzWHiBN2YV ++ cat /tmp/tmp.qw3JHAucc3 ++ rm /tmp/tmp.HzWHiBN2YV /tmp/tmp.qw3JHAucc3 ++ return 0 + [[ '' == true ]] + 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.8XAJliAyLX +++ mktemp ++ local LAST_ERR=/tmp/tmp.EZkl9I7W74 ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name' '-o' 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.8XAJliAyLX ++ cat /tmp/tmp.EZkl9I7W74 ++ rm /tmp/tmp.8XAJliAyLX /tmp/tmp.EZkl9I7W74 ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bFK2NxK4MV +++ mktemp ++ local LAST_ERR=/tmp/tmp.VBsSMexo31 ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name' '-o' 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.bFK2NxK4MV ++ cat /tmp/tmp.VBsSMexo31 ++ rm /tmp/tmp.bFK2NxK4MV /tmp/tmp.VBsSMexo31 ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster some-name to be ready + run_mongo $'db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})' userAdmin:userAdmin123456@some-name-rs0.ldap-tls-26535 + local $'command=db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})' + local uri=userAdmin:userAdmin123456@some-name-rs0.ldap-tls-26535 + local driver=mongodb+srv + local suffix=.svc.cluster.local + local mongo_flag= + local replica_set=rs0 + [[ userAdmin:userAdmin123456@some-name-rs0.ldap-tls-26535 == *cfg* ]] ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ZkGtO4zObr +++ mktemp ++ local LAST_ERR=/tmp/tmp.AHjwV4q0uE ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'pods' '--selector=name=psmdb-client' '-o' 'jsonpath={.items[].metadata.name}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.ZkGtO4zObr ++ cat /tmp/tmp.AHjwV4q0uE ++ rm /tmp/tmp.ZkGtO4zObr /tmp/tmp.AHjwV4q0uE ++ return 0 + local client_container=psmdb-client-757cd65695-rzw4t + kubectl_bin exec psmdb-client-757cd65695-rzw4t -- bash -c $'export HOME=/tmp; printf \'db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})\\n\' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.ldap-tls-26535.svc.cluster.local/admin?ssl=false\\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.YO0JkN5Y5E ++ mktemp + local LAST_ERR=/tmp/tmp.6iwkvKBVwe + local exit_status=0 + local timeout=4 + args=('exec' 'psmdb-client-757cd65695-rzw4t' '--' 'bash' '-c' 'export HOME=/tmp; printf '\''db.getSiblingDB("admin").createRole( { role: "cn=admin,ou=perconadba,dc=ldap,dc=local", privileges: [], roles : [ { "role" : "readAnyDatabase", "db" : "admin" }, { "role" : "dbAdminAnyDatabase", "db" : "admin" }, { "role" : "clusterMonitor", "db" : "admin" }, { "role" : "readWriteAnyDatabase", "db" : "admin" }, { "role" : "restore", "db" : "admin" }, { "role" : "backup", "db" : "admin" } ]})\n'\'' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.ldap-tls-26535.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-757cd65695-rzw4t -- bash -c $'export HOME=/tmp; printf \'db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})\\n\' | mongo mongodb+srv://userAdmin:userAdmin123456@some-name-rs0.ldap-tls-26535.svc.cluster.local/admin?ssl=false\\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.YO0JkN5Y5E Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-0.some-name-rs0.ldap-tls-26535.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.ldap-tls-26535.svc.cluster.local:27017,some-name-rs0-2.some-name-rs0.ldap-tls-26535.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("732277b8-ff05-47b6-81ab-d3519dcf9e2c") } Percona Server for MongoDB server version: v8.0.26-11 WARNING: shell and server versions do not match { "role" : "cn=admin,ou=perconadba,dc=ldap,dc=local", "privileges" : [ ], "roles" : [ { "role" : "readAnyDatabase", "db" : "admin" }, { "role" : "dbAdminAnyDatabase", "db" : "admin" }, { "role" : "clusterMonitor", "db" : "admin" }, { "role" : "readWriteAnyDatabase", "db" : "admin" }, { "role" : "restore", "db" : "admin" }, { "role" : "backup", "db" : "admin" } ] } bye + cat /tmp/tmp.6iwkvKBVwe + rm /tmp/tmp.YO0JkN5Y5E /tmp/tmp.6iwkvKBVwe + return 0 + jq .authInfo + run_mongo 'JSON.stringify(db.runCommand({connectionStatus:1}))' percona:password@some-name-rs0.ldap-tls-26535 '' '' '--authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' + local 'command=JSON.stringify(db.runCommand({connectionStatus:1}))' + grep -E -v 'Percona Server for MongoDB|connecting to:|Implicit session:|versions do not match|Error saving history file:|bye' + local uri=percona:password@some-name-rs0.ldap-tls-26535 + local driver=mongodb+srv + local suffix=.svc.cluster.local + local 'mongo_flag=--authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' + jq '.authenticatedUserRoles |= sort_by(.role)' + local replica_set=rs0 + [[ percona:password@some-name-rs0.ldap-tls-26535 == *cfg* ]] ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qcFyb3UkFx +++ mktemp ++ local LAST_ERR=/tmp/tmp.N2PBjNTKrc ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'pods' '--selector=name=psmdb-client' '-o' 'jsonpath={.items[].metadata.name}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.qcFyb3UkFx ++ cat /tmp/tmp.N2PBjNTKrc ++ rm /tmp/tmp.qcFyb3UkFx /tmp/tmp.N2PBjNTKrc ++ return 0 + local client_container=psmdb-client-757cd65695-rzw4t + kubectl_bin exec psmdb-client-757cd65695-rzw4t -- bash -c 'export HOME=/tmp; printf '\''JSON.stringify(db.runCommand({connectionStatus:1}))\n'\'' | mongo mongodb+srv://percona:password@some-name-rs0.ldap-tls-26535.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 --authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' ++ mktemp + local LAST_OUT=/tmp/tmp.YA9Ry9M9Xk ++ mktemp + local LAST_ERR=/tmp/tmp.DNi0JGwEHv + local exit_status=0 + local timeout=4 + args=('exec' 'psmdb-client-757cd65695-rzw4t' '--' 'bash' '-c' 'export HOME=/tmp; printf '\''JSON.stringify(db.runCommand({connectionStatus:1}))\n'\'' | mongo mongodb+srv://percona:password@some-name-rs0.ldap-tls-26535.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 --authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-757cd65695-rzw4t -- bash -c 'export HOME=/tmp; printf '\''JSON.stringify(db.runCommand({connectionStatus:1}))\n'\'' | mongo mongodb+srv://percona:password@some-name-rs0.ldap-tls-26535.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 --authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.YA9Ry9M9Xk + cat /tmp/tmp.DNi0JGwEHv + rm /tmp/tmp.YA9Ry9M9Xk /tmp/tmp.DNi0JGwEHv + return 0 + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/compare/authInfo.json /tmp/tmp.TpVwOtO4mO/some-name-ldap-tls-26535-authInfo.json + kubectl_bin delete psmdb some-name ++ mktemp + local LAST_OUT=/tmp/tmp.QAMzYm7AIp ++ mktemp + local LAST_ERR=/tmp/tmp.6z2MpnJEzO + local exit_status=0 + local timeout=4 + args=('delete' 'psmdb' 'some-name') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete psmdb some-name + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.QAMzYm7AIp perconaservermongodb.psmdb.percona.com "some-name" deleted from ldap-tls-26535 namespace + cat /tmp/tmp.6z2MpnJEzO + rm /tmp/tmp.QAMzYm7AIp /tmp/tmp.6z2MpnJEzO + return 0 + kubectl_bin delete pvc --all ++ mktemp + local LAST_OUT=/tmp/tmp.SYztpLI9rZ ++ mktemp + local LAST_ERR=/tmp/tmp.otADDUA3Kb + local exit_status=0 + local timeout=4 + args=('delete' 'pvc' '--all') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete pvc --all + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.SYztpLI9rZ persistentvolumeclaim "mongod-data-some-name-rs0-0" deleted from ldap-tls-26535 namespace persistentvolumeclaim "mongod-data-some-name-rs0-1" deleted from ldap-tls-26535 namespace persistentvolumeclaim "mongod-data-some-name-rs0-2" deleted from ldap-tls-26535 namespace + cat /tmp/tmp.otADDUA3Kb + rm /tmp/tmp.SYztpLI9rZ /tmp/tmp.otADDUA3Kb + return 0 + test_sharded_openldap + cluster=some-name-sharded ++ yq /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/mongos.conf ++ yq '.security.ldap.servers="openldap.ldap-tls-26535.svc.cluster.local:636"' + kubectl_bin create secret generic some-name-sharded-mongos $'--from-literal=mongos.conf=security:\n ldap:\n bind:\n queryUser: "cn=readonly,dc=ldap,dc=local"\n queryPassword: "readonlypass"\n servers: openldap.ldap-tls-26535.svc.cluster.local:636\n transportSecurity: tls\n userToDNMapping: \'[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"}]\'\nsetParameter:\n authenticationMechanisms: PLAIN,SCRAM-SHA-1' ++ mktemp + local LAST_OUT=/tmp/tmp.ui43YRiNsT ++ mktemp + local LAST_ERR=/tmp/tmp.6zvt5q2FMI + local exit_status=0 + local timeout=4 + args=('create' 'secret' 'generic' 'some-name-sharded-mongos' '--from-literal=mongos.conf=security: ldap: bind: queryUser: "cn=readonly,dc=ldap,dc=local" queryPassword: "readonlypass" servers: openldap.ldap-tls-26535.svc.cluster.local:636 transportSecurity: tls userToDNMapping: '\''[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"}]'\'' setParameter: authenticationMechanisms: PLAIN,SCRAM-SHA-1') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create secret generic some-name-sharded-mongos $'--from-literal=mongos.conf=security:\n ldap:\n bind:\n queryUser: "cn=readonly,dc=ldap,dc=local"\n queryPassword: "readonlypass"\n servers: openldap.ldap-tls-26535.svc.cluster.local:636\n transportSecurity: tls\n userToDNMapping: \'[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"}]\'\nsetParameter:\n authenticationMechanisms: PLAIN,SCRAM-SHA-1' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ui43YRiNsT secret/some-name-sharded-mongos created + cat /tmp/tmp.6zvt5q2FMI + rm /tmp/tmp.ui43YRiNsT /tmp/tmp.6zvt5q2FMI + return 0 ++ yq /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/mongod.conf ++ yq '.security.ldap.servers="openldap.ldap-tls-26535.svc.cluster.local:636"' + kubectl_bin create secret generic some-name-sharded-cfg-mongod $'--from-literal=mongod.conf=security:\n authorization: enabled\n ldap:\n authz:\n queryTemplate: dc=ldap,dc=local??sub?(&(objectClass=groupOfUniqueNames)(uniqueMember={USER}))\n bind:\n queryUser: "cn=readonly,dc=ldap,dc=local"\n queryPassword: "readonlypass"\n servers: openldap.ldap-tls-26535.svc.cluster.local:636\n transportSecurity: tls\n userToDNMapping: \'[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"},{"match":"cn=admin,ou=perconadba,dc=ldap,dc=local","substitution":"admin"}]\'\nsetParameter:\n authenticationMechanisms: PLAIN,SCRAM-SHA-1' ++ mktemp + local LAST_OUT=/tmp/tmp.IwaWcnbZIU ++ mktemp + local LAST_ERR=/tmp/tmp.Q3H0gst2jF + local exit_status=0 + local timeout=4 + args=('create' 'secret' 'generic' 'some-name-sharded-cfg-mongod' '--from-literal=mongod.conf=security: authorization: enabled ldap: authz: queryTemplate: dc=ldap,dc=local??sub?(&(objectClass=groupOfUniqueNames)(uniqueMember={USER})) bind: queryUser: "cn=readonly,dc=ldap,dc=local" queryPassword: "readonlypass" servers: openldap.ldap-tls-26535.svc.cluster.local:636 transportSecurity: tls userToDNMapping: '\''[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"},{"match":"cn=admin,ou=perconadba,dc=ldap,dc=local","substitution":"admin"}]'\'' setParameter: authenticationMechanisms: PLAIN,SCRAM-SHA-1') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create secret generic some-name-sharded-cfg-mongod $'--from-literal=mongod.conf=security:\n authorization: enabled\n ldap:\n authz:\n queryTemplate: dc=ldap,dc=local??sub?(&(objectClass=groupOfUniqueNames)(uniqueMember={USER}))\n bind:\n queryUser: "cn=readonly,dc=ldap,dc=local"\n queryPassword: "readonlypass"\n servers: openldap.ldap-tls-26535.svc.cluster.local:636\n transportSecurity: tls\n userToDNMapping: \'[{"match":"(.+)","ldapQuery":"OU=perconadba,DC=ldap,DC=local??sub?(uid={0})"},{"match":"cn=admin,ou=perconadba,dc=ldap,dc=local","substitution":"admin"}]\'\nsetParameter:\n authenticationMechanisms: PLAIN,SCRAM-SHA-1' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.IwaWcnbZIU secret/some-name-sharded-cfg-mongod created + cat /tmp/tmp.Q3H0gst2jF + rm /tmp/tmp.IwaWcnbZIU /tmp/tmp.Q3H0gst2jF + return 0 + desc 'create first PSMDB cluster some-name-sharded' + set +o xtrace ----------------------------------------------------------------------------------- create first PSMDB cluster some-name-sharded ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/some-name-sharded.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/some-name-sharded.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/conf/some-name-sharded.yml ++ mktemp + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2491-6cfab0ed6"' + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' + [[ -n docker.io/perconalab/fluentbit:main-logcollector ]] + IMAGE_LOGCOLLECTOR=docker.io/perconalab/fluentbit:main-logcollector + yq eval '(.spec | select(has("logcollector"))).logcollector.image = strenv(IMAGE_LOGCOLLECTOR)' + local LAST_OUT=/tmp/tmp.1fdcdlO7sb + yq eval '(.spec | select(has("search"))).search.image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongot"' + /usr/sbin/sed -e s/NAME_SPACE/ldap-tls-26535/g ++ mktemp + add_arch_to_psmdb - + yq eval '.spec.upgradeOptions.apply="Never"' + arch_scheduling_enabled + [[ -n '' ]] + cat - + local LAST_ERR=/tmp/tmp.klDbaChrxn + local exit_status=0 + local timeout=4 + args=('apply' '-f' '-') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + return + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.1fdcdlO7sb perconaservermongodb.psmdb.percona.com/some-name-sharded created + cat /tmp/tmp.klDbaChrxn + rm /tmp/tmp.1fdcdlO7sb /tmp/tmp.klDbaChrxn + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- + wait_for_running some-name-sharded-rs0 3 + local name=some-name-sharded-rs0 + let last_pod=2 + local check_cluster_readiness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs0 + local cluster_name=some-name-sharded ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-sharded-rs0-0 + local pod=some-name-sharded-rs0-0 + set +o xtrace waiting for pod/some-name-sharded-rs0-0 to be ready..............OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-sharded-rs0-1 + local pod=some-name-sharded-rs0-1 + set +o xtrace waiting for pod/some-name-sharded-rs0-1 to be ready.............OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.5aSrRCvSoH +++ mktemp ++ local LAST_ERR=/tmp/tmp.GdjhXF3Y4p ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.5aSrRCvSoH ++ cat /tmp/tmp.GdjhXF3Y4p ++ rm /tmp/tmp.5aSrRCvSoH /tmp/tmp.GdjhXF3Y4p ++ return 0 + [[ '' == true ]] + wait_pod some-name-sharded-rs0-2 + local pod=some-name-sharded-rs0-2 + set +o xtrace waiting for pod/some-name-sharded-rs0-2 to be ready..............OK ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Vwy70H5Ai9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.sGC0iiJfl6 ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Vwy70H5Ai9 ++ cat /tmp/tmp.sGC0iiJfl6 ++ rm /tmp/tmp.Vwy70H5Ai9 /tmp/tmp.sGC0iiJfl6 ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.HQkHOtqfGT +++ mktemp ++ local LAST_ERR=/tmp/tmp.I8IZF0Jk51 ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.HQkHOtqfGT ++ cat /tmp/tmp.I8IZF0Jk51 ++ rm /tmp/tmp.HQkHOtqfGT /tmp/tmp.I8IZF0Jk51 ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster some-name-sharded to be ready..................... + wait_for_running some-name-sharded-cfg 3 false + local name=some-name-sharded-cfg + let last_pod=2 + local check_cluster_readiness=false + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=cfg + local cluster_name=some-name-sharded ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-sharded-cfg-0 + local pod=some-name-sharded-cfg-0 + set +o xtrace waiting for pod/some-name-sharded-cfg-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-sharded-cfg-1 + local pod=some-name-sharded-cfg-1 + set +o xtrace waiting for pod/some-name-sharded-cfg-1 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.GcgO7d6fxA +++ mktemp ++ local LAST_ERR=/tmp/tmp.RNJOh6M0QA ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.GcgO7d6fxA ++ cat /tmp/tmp.RNJOh6M0QA ++ rm /tmp/tmp.GcgO7d6fxA /tmp/tmp.RNJOh6M0QA ++ return 0 + [[ '' == true ]] + wait_pod some-name-sharded-cfg-2 + local pod=some-name-sharded-cfg-2 + set +o xtrace waiting for pod/some-name-sharded-cfg-2 to be ready.OK ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.l58O3RLkgZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.FOwzyt76PM ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="cfg")].nonvoting.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.l58O3RLkgZ ++ cat /tmp/tmp.FOwzyt76PM ++ rm /tmp/tmp.l58O3RLkgZ /tmp/tmp.FOwzyt76PM ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.yayakXPWhy +++ mktemp ++ local LAST_ERR=/tmp/tmp.FPU5NqrYno ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.yayakXPWhy ++ cat /tmp/tmp.FPU5NqrYno ++ rm /tmp/tmp.yayakXPWhy /tmp/tmp.FPU5NqrYno ++ return 0 + [[ '' == true ]] + sleep 10 + [[ false == true ]] + wait_for_running some-name-sharded-mongos 3 + local name=some-name-sharded-mongos + let last_pod=2 + local check_cluster_readiness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=mongos + local cluster_name=some-name-sharded ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-sharded-mongos-0 + local pod=some-name-sharded-mongos-0 + set +o xtrace waiting for pod/some-name-sharded-mongos-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-sharded-mongos-1 + local pod=some-name-sharded-mongos-1 + set +o xtrace waiting for pod/some-name-sharded-mongos-1 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.g1Xm5JMsdJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.1hPoM22DqE ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="mongos")].arbiter.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.g1Xm5JMsdJ ++ cat /tmp/tmp.1hPoM22DqE ++ rm /tmp/tmp.g1Xm5JMsdJ /tmp/tmp.1hPoM22DqE ++ return 0 + [[ '' == true ]] + wait_pod some-name-sharded-mongos-2 + local pod=some-name-sharded-mongos-2 + set +o xtrace waiting for pod/some-name-sharded-mongos-2 to be ready.OK ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.vxIqqMaw9w +++ mktemp ++ local LAST_ERR=/tmp/tmp.BaN0nx45Sw ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="mongos")].nonvoting.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.vxIqqMaw9w ++ cat /tmp/tmp.BaN0nx45Sw ++ rm /tmp/tmp.vxIqqMaw9w /tmp/tmp.BaN0nx45Sw ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.HtEkLWxuCl +++ mktemp ++ local LAST_ERR=/tmp/tmp.X6AQDybp8s ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.HtEkLWxuCl ++ cat /tmp/tmp.X6AQDybp8s ++ rm /tmp/tmp.HtEkLWxuCl /tmp/tmp.X6AQDybp8s ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster some-name-sharded to be ready + wait_cluster_consistency some-name-sharded + local cluster_name=some-name-sharded + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster some-name-sharded to be ready' waiting for cluster some-name-sharded to be ready++ kubectl_bin get psmdb some-name-sharded -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.PgdGOpPFZr +++ mktemp ++ local LAST_ERR=/tmp/tmp.g2oResfyhO ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb' 'some-name-sharded' '-o' 'jsonpath={.status.state}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name-sharded -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.PgdGOpPFZr ++ cat /tmp/tmp.g2oResfyhO ++ rm /tmp/tmp.PgdGOpPFZr /tmp/tmp.g2oResfyhO ++ return 0 + [[ ready == ready ]] + echo .OK .OK + run_mongos $'db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})' userAdmin:userAdmin123456@some-name-sharded-mongos.ldap-tls-26535 + local $'command=db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})' + local uri=userAdmin:userAdmin123456@some-name-sharded-mongos.ldap-tls-26535 + 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.p5V7A7VtOV +++ mktemp ++ local LAST_ERR=/tmp/tmp.iERkwMX16p ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'pods' '--selector=name=psmdb-client' '-o' 'jsonpath={.items[].metadata.name}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.p5V7A7VtOV ++ cat /tmp/tmp.iERkwMX16p ++ rm /tmp/tmp.p5V7A7VtOV /tmp/tmp.iERkwMX16p ++ return 0 + local client_container=psmdb-client-757cd65695-rzw4t + kubectl_bin exec psmdb-client-757cd65695-rzw4t -- bash -c $'export HOME=/tmp; printf \'db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})\\n\' | mongo mongodb://userAdmin:userAdmin123456@some-name-sharded-mongos.ldap-tls-26535.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.oUfZRbwpIz ++ mktemp + local LAST_ERR=/tmp/tmp.80D3CDif4o + local exit_status=0 + local timeout=4 + args=('exec' 'psmdb-client-757cd65695-rzw4t' '--' 'bash' '-c' 'export HOME=/tmp; printf '\''db.getSiblingDB("admin").createRole( { role: "cn=admin,ou=perconadba,dc=ldap,dc=local", privileges: [], roles : [ { "role" : "readAnyDatabase", "db" : "admin" }, { "role" : "dbAdminAnyDatabase", "db" : "admin" }, { "role" : "clusterMonitor", "db" : "admin" }, { "role" : "readWriteAnyDatabase", "db" : "admin" }, { "role" : "restore", "db" : "admin" }, { "role" : "backup", "db" : "admin" } ]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-sharded-mongos.ldap-tls-26535.svc.cluster.local:27017/admin ') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-757cd65695-rzw4t -- bash -c $'export HOME=/tmp; printf \'db.getSiblingDB("admin").createRole(\n{\n role: "cn=admin,ou=perconadba,dc=ldap,dc=local",\n privileges: [],\n roles : [\n {\n "role" : "readAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "dbAdminAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "clusterMonitor",\n "db" : "admin"\n },\n {\n "role" : "readWriteAnyDatabase",\n "db" : "admin"\n },\n {\n "role" : "restore",\n "db" : "admin"\n },\n {\n "role" : "backup",\n "db" : "admin"\n }\n ]})\\n\' | mongo mongodb://userAdmin:userAdmin123456@some-name-sharded-mongos.ldap-tls-26535.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.oUfZRbwpIz Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-sharded-mongos.ldap-tls-26535.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("2442bc5f-fd56-45d8-9291-8090606a4bfd") } Percona Server for MongoDB server version: v8.0.26-11 WARNING: shell and server versions do not match { "role" : "cn=admin,ou=perconadba,dc=ldap,dc=local", "privileges" : [ ], "roles" : [ { "role" : "readAnyDatabase", "db" : "admin" }, { "role" : "dbAdminAnyDatabase", "db" : "admin" }, { "role" : "clusterMonitor", "db" : "admin" }, { "role" : "readWriteAnyDatabase", "db" : "admin" }, { "role" : "restore", "db" : "admin" }, { "role" : "backup", "db" : "admin" } ] } bye + cat /tmp/tmp.80D3CDif4o + rm /tmp/tmp.oUfZRbwpIz /tmp/tmp.80D3CDif4o + return 0 + run_mongos 'JSON.stringify(db.runCommand({connectionStatus:1}))' percona:password@some-name-sharded-mongos.ldap-tls-26535 '' '' '--authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' + grep -E -v 'Percona Server for MongoDB|connecting to:|Implicit session:|versions do not match|Error saving history file:|bye' + local 'command=JSON.stringify(db.runCommand({connectionStatus:1}))' + local uri=percona:password@some-name-sharded-mongos.ldap-tls-26535 + local driver=mongodb + local suffix=.svc.cluster.local + local 'mongo_flag=--authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' + local port=27017 + local mongo_bin=mongo + jq .authInfo + jq '.authenticatedUserRoles |= sort_by(.role)' ++ 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.X2ZjovYmH0 +++ mktemp ++ local LAST_ERR=/tmp/tmp.93SoVlNd62 ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'pods' '--selector=name=psmdb-client' '-o' 'jsonpath={.items[].metadata.name}') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.X2ZjovYmH0 ++ cat /tmp/tmp.93SoVlNd62 ++ rm /tmp/tmp.X2ZjovYmH0 /tmp/tmp.93SoVlNd62 ++ return 0 + local client_container=psmdb-client-757cd65695-rzw4t + kubectl_bin exec psmdb-client-757cd65695-rzw4t -- bash -c 'export HOME=/tmp; printf '\''JSON.stringify(db.runCommand({connectionStatus:1}))\n'\'' | mongo mongodb://percona:password@some-name-sharded-mongos.ldap-tls-26535.svc.cluster.local:27017/admin --authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' ++ mktemp + local LAST_OUT=/tmp/tmp.QQHA94eAVg ++ mktemp + local LAST_ERR=/tmp/tmp.wLdXZymZi0 + local exit_status=0 + local timeout=4 + args=('exec' 'psmdb-client-757cd65695-rzw4t' '--' 'bash' '-c' 'export HOME=/tmp; printf '\''JSON.stringify(db.runCommand({connectionStatus:1}))\n'\'' | mongo mongodb://percona:password@some-name-sharded-mongos.ldap-tls-26535.svc.cluster.local:27017/admin --authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-757cd65695-rzw4t -- bash -c 'export HOME=/tmp; printf '\''JSON.stringify(db.runCommand({connectionStatus:1}))\n'\'' | mongo mongodb://percona:password@some-name-sharded-mongos.ldap-tls-26535.svc.cluster.local:27017/admin --authenticationMechanism '\''PLAIN'\'' --authenticationDatabase '\''$external'\''' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.QQHA94eAVg + cat /tmp/tmp.wLdXZymZi0 + rm /tmp/tmp.QQHA94eAVg /tmp/tmp.wLdXZymZi0 + return 0 + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/ldap-tls/compare/authInfo.json /tmp/tmp.TpVwOtO4mO/some-name-sharded-ldap-tls-26535-authInfo.json + kubectl_bin delete psmdb some-name-sharded ++ mktemp + local LAST_OUT=/tmp/tmp.mYAuB4pVuW ++ mktemp + local LAST_ERR=/tmp/tmp.BtDosaqV0u + local exit_status=0 + local timeout=4 + args=('delete' 'psmdb' 'some-name-sharded') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete psmdb some-name-sharded + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.mYAuB4pVuW perconaservermongodb.psmdb.percona.com "some-name-sharded" deleted from ldap-tls-26535 namespace + cat /tmp/tmp.BtDosaqV0u + rm /tmp/tmp.mYAuB4pVuW /tmp/tmp.BtDosaqV0u + return 0 + kubectl_bin delete pvc --all ++ mktemp + local LAST_OUT=/tmp/tmp.7OtuAPUEGb ++ mktemp + local LAST_ERR=/tmp/tmp.MZGvcC2jXL + local exit_status=0 + local timeout=4 + args=('delete' 'pvc' '--all') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete pvc --all + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.7OtuAPUEGb persistentvolumeclaim "mongod-data-some-name-sharded-cfg-0" deleted from ldap-tls-26535 namespace persistentvolumeclaim "mongod-data-some-name-sharded-cfg-1" deleted from ldap-tls-26535 namespace persistentvolumeclaim "mongod-data-some-name-sharded-cfg-2" deleted from ldap-tls-26535 namespace persistentvolumeclaim "mongod-data-some-name-sharded-rs0-0" deleted from ldap-tls-26535 namespace persistentvolumeclaim "mongod-data-some-name-sharded-rs0-1" deleted from ldap-tls-26535 namespace persistentvolumeclaim "mongod-data-some-name-sharded-rs0-2" deleted from ldap-tls-26535 namespace + cat /tmp/tmp.MZGvcC2jXL + rm /tmp/tmp.7OtuAPUEGb /tmp/tmp.MZGvcC2jXL + return 0 + destroy ldap-tls-26535 + local namespace=ldap-tls-26535 + 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.14ot7Z9EuI +++ mktemp ++ local LAST_ERR=/tmp/tmp.0wlppWjuam ++ local exit_status=0 ++ local timeout=4 ++ args=('get' 'psmdb-backup' '--no-headers') ++ local args ++ transformed_files=() ++ local transformed_files ++ arch_scheduling_enabled ++ [[ -n '' ]] ++ arch_scheduling_enabled ++ [[ -n '' ]] +++ 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.14ot7Z9EuI ++ cat /tmp/tmp.0wlppWjuam No resources found in ldap-tls-26535 namespace. ++ rm /tmp/tmp.14ot7Z9EuI /tmp/tmp.0wlppWjuam ++ return 0 + '[' 0 '!=' 0 ']' + 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-2491/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.saXAElo3Pn ++ mktemp + local LAST_ERR=/tmp/tmp.ACcllmX9y1 + local exit_status=0 + local timeout=4 + args=('delete' '-f' '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/crd.yaml' '--ignore-not-found' '--wait=false') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.saXAElo3Pn customresourcedefinition.apiextensions.k8s.io "perconaservermongodbbackups.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbclustersyncs.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.ACcllmX9y1 + rm /tmp/tmp.saXAElo3Pn /tmp/tmp.ACcllmX9y1 + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/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\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbbackups" + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbbackups" + : + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.Dl8P4bMHD6 ++ mktemp + local LAST_ERR=/tmp/tmp.errybHLx6m + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbbackups.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.Dl8P4bMHD6 + cat /tmp/tmp.errybHLx6m + rm /tmp/tmp.Dl8P4bMHD6 /tmp/tmp.errybHLx6m + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbclustersyncs.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbclustersyncs.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbclustersyncs" + kubectl patch perconaservermongodbclustersyncs.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbclustersyncs" + : + kubectl_bin wait --for=delete crd perconaservermongodbclustersyncs.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.LLx3gw3fDQ ++ mktemp + local LAST_ERR=/tmp/tmp.ADREofKFb1 + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbclustersyncs.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbclustersyncs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.LLx3gw3fDQ + cat /tmp/tmp.ADREofKFb1 + rm /tmp/tmp.LLx3gw3fDQ /tmp/tmp.ADREofKFb1 + 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.66PSagLC0s ++ mktemp + local LAST_ERR=/tmp/tmp.jeTn4GE8uQ + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbrestores.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.66PSagLC0s + cat /tmp/tmp.jeTn4GE8uQ + rm /tmp/tmp.66PSagLC0s /tmp/tmp.jeTn4GE8uQ + 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.iWEn71cYaJ ++ mktemp + local LAST_ERR=/tmp/tmp.69HadiZtjF + local exit_status=0 + local timeout=4 + args=('wait' '--for=delete' 'crd' 'perconaservermongodbs.psmdb.percona.com') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ 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.iWEn71cYaJ + cat /tmp/tmp.69HadiZtjF + rm /tmp/tmp.iWEn71cYaJ /tmp/tmp.69HadiZtjF + 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-2491/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.NdaFG6MhfP ++ mktemp + local LAST_ERR=/tmp/tmp.CC0gvJiinn + local exit_status=0 + local timeout=4 + args=('delete' '-f' '/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/cw-rbac.yaml' '--ignore-not-found') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.NdaFG6MhfP 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.CC0gvJiinn + rm /tmp/tmp.NdaFG6MhfP /tmp/tmp.CC0gvJiinn + return 0 + destroy_cert_manager + [[ gke == rancher ]] + kubectl_bin delete -f https://github.com/cert-manager/cert-manager/releases/download/v1.21.0/cert-manager.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.vcjhOY5qXX ++ mktemp + local LAST_ERR=/tmp/tmp.qCRJyzY3xO + local exit_status=0 + local timeout=4 + args=('delete' '-f' 'https://github.com/cert-manager/cert-manager/releases/download/v1.21.0/cert-manager.yaml') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f https://github.com/cert-manager/cert-manager/releases/download/v1.21.0/cert-manager.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.vcjhOY5qXX namespace "cert-manager" deleted customresourcedefinition.apiextensions.k8s.io "challenges.acme.cert-manager.io" deleted customresourcedefinition.apiextensions.k8s.io "orders.acme.cert-manager.io" deleted customresourcedefinition.apiextensions.k8s.io "certificaterequests.cert-manager.io" deleted customresourcedefinition.apiextensions.k8s.io "certificates.cert-manager.io" deleted customresourcedefinition.apiextensions.k8s.io "clusterissuers.cert-manager.io" deleted customresourcedefinition.apiextensions.k8s.io "issuers.cert-manager.io" deleted serviceaccount "cert-manager-cainjector" deleted from cert-manager namespace serviceaccount "cert-manager" deleted from cert-manager namespace serviceaccount "cert-manager-webhook" deleted from cert-manager namespace clusterrole.rbac.authorization.k8s.io "cert-manager-cainjector" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-issuers" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-clusterissuers" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-certificates" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-orders" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-challenges" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-ingress-shim" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-cluster-view" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-view" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-edit" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-approve:cert-manager-io" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-controller-certificatesigningrequests" deleted clusterrole.rbac.authorization.k8s.io "cert-manager-webhook:subjectaccessreviews" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-cainjector" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-issuers" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-clusterissuers" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-certificates" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-orders" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-challenges" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-ingress-shim" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-approve:cert-manager-io" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-controller-certificatesigningrequests" deleted clusterrolebinding.rbac.authorization.k8s.io "cert-manager-webhook:subjectaccessreviews" deleted role.rbac.authorization.k8s.io "cert-manager-cainjector:leaderelection" deleted from kube-system namespace role.rbac.authorization.k8s.io "cert-manager:leaderelection" deleted from kube-system namespace role.rbac.authorization.k8s.io "cert-manager-webhook:dynamic-serving" deleted from cert-manager namespace rolebinding.rbac.authorization.k8s.io "cert-manager-cainjector:leaderelection" deleted from kube-system namespace rolebinding.rbac.authorization.k8s.io "cert-manager:leaderelection" deleted from kube-system namespace rolebinding.rbac.authorization.k8s.io "cert-manager-webhook:dynamic-serving" deleted from cert-manager namespace service "cert-manager-cainjector" deleted from cert-manager namespace service "cert-manager" deleted from cert-manager namespace service "cert-manager-webhook" deleted from cert-manager namespace deployment.apps "cert-manager-cainjector" deleted from cert-manager namespace deployment.apps "cert-manager" deleted from cert-manager namespace deployment.apps "cert-manager-webhook" deleted from cert-manager namespace mutatingwebhookconfiguration.admissionregistration.k8s.io "cert-manager-webhook" deleted validatingwebhookconfiguration.admissionregistration.k8s.io "cert-manager-webhook" deleted + cat /tmp/tmp.qCRJyzY3xO + rm /tmp/tmp.vcjhOY5qXX /tmp/tmp.qCRJyzY3xO + return 0 + [[ -n '' ]] + '[' -n psmdb-operator ']' + kubectl_bin delete --grace-period=0 --force=true namespace ldap-tls-26535 + kubectl_bin delete --grace-period=0 --force=true namespace psmdb-operator + rm -rf /tmp/tmp.TpVwOtO4mO ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.kJs0qVK3Nq + desc 'test passed' + set +o xtrace ----------------------------------------------------------------------------------- test passed ----------------------------------------------------------------------------------- ++ mktemp + local LAST_OUT=/tmp/tmp.0Pn8eA8TN5 ++ mktemp + local LAST_ERR=/tmp/tmp.lwTw67YPcA + local exit_status=0 + local timeout=4 + args=('delete' '--grace-period=0' '--force=true' 'namespace' 'ldap-tls-26535') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] + local LAST_ERR=/tmp/tmp.mvg3kG7jEU + local exit_status=0 + local timeout=4 + args=('delete' '--grace-period=0' '--force=true' 'namespace' 'psmdb-operator') + local args + transformed_files=() + local transformed_files + arch_scheduling_enabled + [[ -n '' ]] + arch_scheduling_enabled + [[ -n '' ]] ++ seq 0 2 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete --grace-period=0 --force=true namespace ldap-tls-26535 + for i in $(seq 0 2) + set +e + kubectl delete --grace-period=0 --force=true namespace psmdb-operator ==================================================================================================== [PASSED] e2e-tests/test_pytest_wrapper.py::test_bash_wrapper ==================================================================================================== ------------------------------------------------ generated xml file: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/reports/ldap-tls.xml ------------------------------------------------ ------------------------------------------ Generated html report: file:///mnt/jenkins/workspace/cloud-psmdb-operator_PR-2491/e2e-tests/reports/ldap-tls.html ------------------------------------------- ==================================================================================== 1 passed in 826.68s (0:13:46) ===================================================================================== + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.0Pn8eA8TN5 namespace "psmdb-operator" force deleted + cat /tmp/tmp.mvg3kG7jEU Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. + rm /tmp/tmp.0Pn8eA8TN5 /tmp/tmp.mvg3kG7jEU + return 0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.kJs0qVK3Nq namespace "ldap-tls-26535" force deleted + cat /tmp/tmp.lwTw67YPcA Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. + rm /tmp/tmp.kJs0qVK3Nq /tmp/tmp.lwTw67YPcA + return 0