++ echo 'Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/logs/multi-cluster-service.log' Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/logs/multi-cluster-service.log ++ '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/cloud-secret.yml ']' ++ SKIP_BACKUPS_TO_AWS_GCP_AZURE= ++ oc get projects ++ kubectl get nodes ++ grep '^minikube' +++ kubectl version -o json +++ grep '\-eks\-' +++ jq -r .serverVersion.gitVersion grep: warning: stray \ before - Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 ++ '[' ']' ++ EKS=0 +++ kubectl version -o json +++ jq -r .serverVersion.gitVersion +++ grep gke Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 ++ '[' v1.31.13-gke.1040000 ']' ++ GKE=1 +++ kubectl version -o json +++ jq -r '.serverVersion.major + "." + .serverVersion.minor' +++ /usr/sbin/sed -r 's/[^0-9.]+//g' Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 ++ KUBE_VERSION=1.31 + '[' 1 -ne 1 ']' + desc 'Register Kubernetes cluster' + set +o xtrace ----------------------------------------------------------------------------------- Register Kubernetes cluster ----------------------------------------------------------------------------------- ++ kubectl -n default run --quiet curl --rm --restart=Never -it --image=appropriate/curl -- -H 'Metadata-Flavor: Google' http://metadata.google.internal/computeMetadata/v1/instance/attributes/cluster-name + k8s_cluster_name=jen-psmdb-2084-8f7f0288-3-cluster3 ++ kubectl -n default run --quiet curl --rm --restart=Never -it --image=appropriate/curl -- -H 'Metadata-Flavor: Google' http://metadata.google.internal/computeMetadata/v1/instance/attributes/cluster-location warning: couldn't attach to pod/curl, falling back to streaming logs: Internal error occurred: unable to upgrade connection: container curl not found in pod curl_default + k8s_cluster_region=us-central1-a + gcloud container hub memberships register jen-psmdb-2084-8f7f0288-3-cluster3 --gke-cluster us-central1-a/jen-psmdb-2084-8f7f0288-3-cluster3 --enable-workload-identity Membership [projects/cloud-dev-112233/locations/us-central1/memberships/jen-psmdb-2084-8f7f0288-3-cluster3] already registered with the cluster [//container.googleapis.com/projects/cloud-dev-112233/locations/us-central1-a/clusters/jen-psmdb-2084-8f7f0288-3-cluster3] in the Fleet. Finished registering to the Fleet. + wait_mcs_api + set +o xtrace waiting for MCS APIs are registered + create_infra multi-cluster-service-7319 + local ns=multi-cluster-service-7319 + [[ 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-2084/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.lnz3vRESY9 ++ mktemp + local LAST_ERR=/tmp/tmp.6bd0si1vXY + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.lnz3vRESY9 customresourcedefinition.apiextensions.k8s.io "perconaservermongodbbackups.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbrestores.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbs.psmdb.percona.com" deleted + cat /tmp/tmp.6bd0si1vXY + rm /tmp/tmp.lnz3vRESY9 /tmp/tmp.6bd0si1vXY + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/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 '\-\-\-') + grep -v NAMESPACE + kubectl get perconaservermongodbbackups.psmdb.percona.com --all-namespaces -o wide + 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.DdXDbDI9vJ ++ mktemp + local LAST_ERR=/tmp/tmp.5E7x4UR7ws + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DdXDbDI9vJ + cat /tmp/tmp.5E7x4UR7ws + rm /tmp/tmp.DdXDbDI9vJ /tmp/tmp.5E7x4UR7ws + 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.lR8CFpIuch ++ mktemp + local LAST_ERR=/tmp/tmp.QvXKWHhQrn + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.lR8CFpIuch + cat /tmp/tmp.QvXKWHhQrn + rm /tmp/tmp.lR8CFpIuch /tmp/tmp.QvXKWHhQrn + 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\":[]}}"' No resources found + 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.xdldLGUbB2 ++ mktemp + local LAST_ERR=/tmp/tmp.VN6HFNVcyv + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.xdldLGUbB2 + cat /tmp/tmp.VN6HFNVcyv + rm /tmp/tmp.xdldLGUbB2 /tmp/tmp.VN6HFNVcyv + 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-2084/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.oSa1bxTpcG ++ mktemp + local LAST_ERR=/tmp/tmp.imOcxoKbWn + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.oSa1bxTpcG 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.imOcxoKbWn + rm /tmp/tmp.oSa1bxTpcG /tmp/tmp.imOcxoKbWn + return 0 + check_crd_for_deletion PR-2084-8f7f0288 + local git_tag=PR-2084-8f7f0288 ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-2084-8f7f0288/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.DHovyimIVE +++ mktemp ++ local LAST_ERR=/tmp/tmp.0YYXoXfVbn ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.DHovyimIVE ++ cat /tmp/tmp.0YYXoXfVbn 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.DHovyimIVE ++ cat /tmp/tmp.0YYXoXfVbn 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.DHovyimIVE ++ cat /tmp/tmp.0YYXoXfVbn Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.DHovyimIVE ++ cat /tmp/tmp.0YYXoXfVbn Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.DHovyimIVE /tmp/tmp.0YYXoXfVbn ++ return 1 + [[ '' == \T\e\r\m\i\n\a\t\i\n\g ]] + '[' -n psmdb-operator ']' + create_namespace psmdb-operator + local namespace=psmdb-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + 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 + awk '{print$1}' + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + '[' -n '' ']' + xargs kubectl delete ns + desc 'cleaned up old namespaces psmdb-operator' + set +o xtrace ++ mktemp ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.Dkc5p2mEtz + local LAST_OUT=/tmp/tmp.Xk0lWeYDHi egrep: warning: egrep is obsolescent; using grep -E ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.X7EIqvirDo + local exit_status=0 + local timeout=4 + local LAST_ERR=/tmp/tmp.cnyqgiPFRW + local exit_status=0 + local timeout=4 ++ seq 0 2 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + for i in $(seq 0 2) + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Xk0lWeYDHi + cat /tmp/tmp.X7EIqvirDo + rm /tmp/tmp.Xk0lWeYDHi /tmp/tmp.X7EIqvirDo + return 0 namespace "multi-cluster-service-14019" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Dkc5p2mEtz namespace "psmdb-operator" deleted + cat /tmp/tmp.cnyqgiPFRW + rm /tmp/tmp.Dkc5p2mEtz /tmp/tmp.cnyqgiPFRW + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.btS0BkOlTY ++ mktemp + local LAST_ERR=/tmp/tmp.n503fAXjQO + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.btS0BkOlTY + cat /tmp/tmp.n503fAXjQO + rm /tmp/tmp.btS0BkOlTY /tmp/tmp.n503fAXjQO + 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.bTv2wqUig0 ++ mktemp + local LAST_ERR=/tmp/tmp.TkoFQyq9jg + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.bTv2wqUig0 namespace/psmdb-operator created + cat /tmp/tmp.TkoFQyq9jg + rm /tmp/tmp.bTv2wqUig0 /tmp/tmp.TkoFQyq9jg + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.V1SiI76aNP +++ mktemp ++ local LAST_ERR=/tmp/tmp.80vYjeSxMN ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.V1SiI76aNP ++ cat /tmp/tmp.80vYjeSxMN ++ rm /tmp/tmp.V1SiI76aNP /tmp/tmp.80vYjeSxMN ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2084-8f7f0288-3-cluster3 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.9Hk1e1cVlB ++ mktemp + local LAST_ERR=/tmp/tmp.J1q9CXCTHD + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2084-8f7f0288-3-cluster3 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.9Hk1e1cVlB Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2084-8f7f0288-3-cluster3" modified. + cat /tmp/tmp.J1q9CXCTHD + rm /tmp/tmp.9Hk1e1cVlB /tmp/tmp.J1q9CXCTHD + return 0 + deploy_operator + desc 'start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-2084-8f7f0288' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-2084-8f7f0288 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/multi-cluster-service/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.5vtYz8AeWp ++ mktemp + local LAST_ERR=/tmp/tmp.xasq0miFml + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.5vtYz8AeWp customresourcedefinition.apiextensions.k8s.io/perconaservermongodbbackups.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbrestores.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbs.psmdb.percona.com serverside-applied + cat /tmp/tmp.xasq0miFml + rm /tmp/tmp.5vtYz8AeWp /tmp/tmp.xasq0miFml + 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-2084/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.dqwW7qW4wv ++ mktemp + local LAST_ERR=/tmp/tmp.HlaAcARFuG + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -n psmdb-operator -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.dqwW7qW4wv 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.HlaAcARFuG + rm /tmp/tmp.dqwW7qW4wv /tmp/tmp.HlaAcARFuG + return 0 + yq eval ' (.spec.template.spec.containers[].image = "perconalab/percona-server-mongodb-operator:PR-2084-8f7f0288") | ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.rRJvPTKtO3 ++ mktemp + local LAST_ERR=/tmp/tmp.vOHLdsBBK0 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -n psmdb-operator -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.rRJvPTKtO3 deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.vOHLdsBBK0 + rm /tmp/tmp.rRJvPTKtO3 /tmp/tmp.vOHLdsBBK0 + 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.378SSJpRJb +++ mktemp ++ local LAST_ERR=/tmp/tmp.4LPht7L2tq ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.378SSJpRJb ++ cat /tmp/tmp.4LPht7L2tq ++ rm /tmp/tmp.378SSJpRJb /tmp/tmp.4LPht7L2tq ++ return 0 + wait_operator_pod percona-server-mongodb-operator-8545657c8b-qk5qq + local pod=percona-server-mongodb-operator-8545657c8b-qk5qq + set +o xtrace waiting for pod/percona-server-mongodb-operator-8545657c8b-qk5qq 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.wWv2ANoDHj +++ mktemp ++ local LAST_ERR=/tmp/tmp.79IbOwLvWw ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.wWv2ANoDHj ++ cat /tmp/tmp.79IbOwLvWw ++ rm /tmp/tmp.wWv2ANoDHj /tmp/tmp.79IbOwLvWw ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-8545657c8b-qk5qq ++ mktemp + local LAST_OUT=/tmp/tmp.Oe1rOEaYxq ++ mktemp + local LAST_ERR=/tmp/tmp.d7QZbb0H9d + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs -n psmdb-operator percona-server-mongodb-operator-8545657c8b-qk5qq + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Oe1rOEaYxq + cat /tmp/tmp.d7QZbb0H9d + rm /tmp/tmp.Oe1rOEaYxq /tmp/tmp.d7QZbb0H9d + return 0 2025-10-27T11:59:44.499Z INFO setup Manager starting up {"gitCommit": "8f7f0288ef58108ea363cf806b2277eb96ec0cca", "gitBranch": "PR-2084-8f7f0288", "buildTime": "", "goVersion": "go1.25.3", "os": "linux", "arch": "amd64"} + create_namespace multi-cluster-service-7319 + local namespace=multi-cluster-service-7319 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' ++ mktemp + awk '{print$1}' + local LAST_OUT=/tmp/tmp.mAHJrwdGfa ++ mktemp + xargs kubectl delete ns egrep: warning: egrep is obsolescent; using grep -E + local LAST_ERR=/tmp/tmp.k4aY8kkztj + local exit_status=0 + local timeout=4 + '[' -n '' ']' + desc 'cleaned up old namespaces multi-cluster-service-7319' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces multi-cluster-service-7319 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace multi-cluster-service-7319 --ignore-not-found ++ seq 0 2 ++ mktemp + for i in $(seq 0 2) + set +e + kubectl get ns + local LAST_OUT=/tmp/tmp.6y5ZoIZQBd ++ mktemp + local LAST_ERR=/tmp/tmp.IE8iV0Q6I9 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace multi-cluster-service-7319 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.mAHJrwdGfa + cat /tmp/tmp.k4aY8kkztj + rm /tmp/tmp.mAHJrwdGfa /tmp/tmp.k4aY8kkztj + 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.6y5ZoIZQBd + cat /tmp/tmp.IE8iV0Q6I9 + rm /tmp/tmp.6y5ZoIZQBd /tmp/tmp.IE8iV0Q6I9 + return 0 + kubectl_bin wait --for=delete namespace multi-cluster-service-7319 ++ mktemp + local LAST_OUT=/tmp/tmp.fWLIVdov0E ++ mktemp + local LAST_ERR=/tmp/tmp.WjgAadSWfY + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace multi-cluster-service-7319 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.fWLIVdov0E + cat /tmp/tmp.WjgAadSWfY + rm /tmp/tmp.fWLIVdov0E /tmp/tmp.WjgAadSWfY + return 0 + desc 'create namespace multi-cluster-service-7319' + set +o xtrace ----------------------------------------------------------------------------------- create namespace multi-cluster-service-7319 ----------------------------------------------------------------------------------- + kubectl_bin create namespace multi-cluster-service-7319 ++ mktemp + local LAST_OUT=/tmp/tmp.IlZN7ERU2V ++ mktemp + local LAST_ERR=/tmp/tmp.0UZqdVZwvK + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace multi-cluster-service-7319 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.IlZN7ERU2V namespace/multi-cluster-service-7319 created + cat /tmp/tmp.0UZqdVZwvK + rm /tmp/tmp.IlZN7ERU2V /tmp/tmp.0UZqdVZwvK + return 0 + set_kube_ctx multi-cluster-service-7319 + local namespace=multi-cluster-service-7319 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.n2t40ioW1M +++ mktemp ++ local LAST_ERR=/tmp/tmp.vwOE8ZzxY2 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.n2t40ioW1M ++ cat /tmp/tmp.vwOE8ZzxY2 ++ rm /tmp/tmp.n2t40ioW1M /tmp/tmp.vwOE8ZzxY2 ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2084-8f7f0288-3-cluster3 --namespace=multi-cluster-service-7319 ++ mktemp + local LAST_OUT=/tmp/tmp.tY8kONUunA ++ mktemp + local LAST_ERR=/tmp/tmp.wAOaDHOs0h + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2084-8f7f0288-3-cluster3 --namespace=multi-cluster-service-7319 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.tY8kONUunA Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2084-8f7f0288-3-cluster3" modified. + cat /tmp/tmp.wAOaDHOs0h + rm /tmp/tmp.tY8kONUunA /tmp/tmp.wAOaDHOs0h + return 0 + desc 'create first PSMDB cluster' + set +o xtrace ----------------------------------------------------------------------------------- create first PSMDB cluster ----------------------------------------------------------------------------------- + cluster=some-name + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.rjUs3zsmsv ++ mktemp + local LAST_ERR=/tmp/tmp.1178b9zH6i + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/client.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.rjUs3zsmsv secret/some-users created deployment.apps/psmdb-client created + cat /tmp/tmp.1178b9zH6i + rm /tmp/tmp.rjUs3zsmsv /tmp/tmp.1178b9zH6i + return 0 + apply_s3_storage_secrets + desc 'create secrets for cloud storages' + set +o xtrace ----------------------------------------------------------------------------------- create secrets for cloud storages ----------------------------------------------------------------------------------- + '[' -z '' ']' + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.RGbCL9AGCA ++ mktemp + local LAST_ERR=/tmp/tmp.0Wm6qfUQwU + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.RGbCL9AGCA secret/minio-secret created secret/aws-s3-secret created secret/gcp-cs-secret created secret/azure-secret created secret/gcp-cs-sa-key-secret created + cat /tmp/tmp.0Wm6qfUQwU + rm /tmp/tmp.RGbCL9AGCA /tmp/tmp.0Wm6qfUQwU + return 0 + version_gt 1.19 ++ echo '1.31 >= 1.19' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' 0 -ne 1 ']' + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/conf/container-rc.yaml + /usr/sbin/sed s/docker/runc/g + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.bGp6PK3ceV ++ mktemp + local LAST_ERR=/tmp/tmp.6SMiyBqOPv + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.bGp6PK3ceV runtimeclass.node.k8s.io/container-rc unchanged + cat /tmp/tmp.6SMiyBqOPv + rm /tmp/tmp.bGp6PK3ceV /tmp/tmp.6SMiyBqOPv + return 0 + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/multi-cluster-service/conf/some-name.yml + '[' -z '' ']' + kubectl_bin apply -f - + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/multi-cluster-service/conf/some-name.yml + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2084/e2e-tests/multi-cluster-service/conf/some-name.yml ++ mktemp + yq eval '(.spec | select(.image == null)).image = "perconalab/percona-server-mongodb-operator:main-mongod7.0"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("initImage"))).initImage = "perconalab/percona-server-mongodb-operator:PR-2084-8f7f0288"' + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' + local LAST_OUT=/tmp/tmp.MsdZDLwf7N + yq eval '.spec.upgradeOptions.apply="Never"' ++ mktemp + local LAST_ERR=/tmp/tmp.VIdYBcaNBE + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.MsdZDLwf7N perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.VIdYBcaNBE + rm /tmp/tmp.MsdZDLwf7N /tmp/tmp.VIdYBcaNBE + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- + wait_for_running some-name-rs0 3 + local name=some-name-rs0 + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs0 + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-rs0-0 + local pod=some-name-rs0-0 + set +o xtrace waiting for pod/some-name-rs0-0 to be ready...........OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-rs0-1 + local pod=some-name-rs0-1 + set +o xtrace waiting for pod/some-name-rs0-1 to be ready............OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.scvo6ghGLg +++ mktemp ++ local LAST_ERR=/tmp/tmp.q8dkFvbODo ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.scvo6ghGLg ++ cat /tmp/tmp.q8dkFvbODo ++ rm /tmp/tmp.scvo6ghGLg /tmp/tmp.q8dkFvbODo ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-rs0-2 + local pod=some-name-rs0-2 + set +o xtrace waiting for pod/some-name-rs0-2 to be ready.............OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qQmPjrLn98 +++ mktemp ++ local LAST_ERR=/tmp/tmp.rmKm8FsSRF ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.qQmPjrLn98 ++ cat /tmp/tmp.rmKm8FsSRF ++ rm /tmp/tmp.qQmPjrLn98 /tmp/tmp.rmKm8FsSRF ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.EO2dSbBFfB +++ mktemp ++ local LAST_ERR=/tmp/tmp.lkZ0r6CfQc ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.EO2dSbBFfB ++ cat /tmp/tmp.lkZ0r6CfQc ++ rm /tmp/tmp.EO2dSbBFfB /tmp/tmp.lkZ0r6CfQc ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness....................... + wait_for_running some-name-cfg 3 false + local name=some-name-cfg + let last_pod=2 + local check_cluster_readyness=false + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=cfg + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-cfg-0 + local pod=some-name-cfg-0 + set +o xtrace waiting for pod/some-name-cfg-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-cfg-1 + local pod=some-name-cfg-1 + set +o xtrace waiting for pod/some-name-cfg-1 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.7KVupnJJyh +++ mktemp ++ local LAST_ERR=/tmp/tmp.RtH3OgkIjj ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.7KVupnJJyh ++ cat /tmp/tmp.RtH3OgkIjj ++ rm /tmp/tmp.7KVupnJJyh /tmp/tmp.RtH3OgkIjj ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-cfg-2 + local pod=some-name-cfg-2 + set +o xtrace waiting for pod/some-name-cfg-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.QlOJBchb2l +++ mktemp ++ local LAST_ERR=/tmp/tmp.SvuIc7BBCM ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.QlOJBchb2l ++ cat /tmp/tmp.SvuIc7BBCM ++ rm /tmp/tmp.QlOJBchb2l /tmp/tmp.SvuIc7BBCM ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.kmeAUVbmij +++ mktemp ++ local LAST_ERR=/tmp/tmp.cRyIqa0o8W ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.kmeAUVbmij ++ cat /tmp/tmp.cRyIqa0o8W ++ rm /tmp/tmp.kmeAUVbmij /tmp/tmp.cRyIqa0o8W ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + wait_for_running some-name-mongos 3 + local name=some-name-mongos + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=mongos + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-mongos-0 + local pod=some-name-mongos-0 + set +o xtrace waiting for pod/some-name-mongos-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-mongos-1 + local pod=some-name-mongos-1 + set +o xtrace waiting for pod/some-name-mongos-1 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.JPpQ4S82Wn +++ mktemp ++ local LAST_ERR=/tmp/tmp.j5jnxj1WpR ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.JPpQ4S82Wn ++ cat /tmp/tmp.j5jnxj1WpR ++ rm /tmp/tmp.JPpQ4S82Wn /tmp/tmp.j5jnxj1WpR ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-mongos-2 + local pod=some-name-mongos-2 + set +o xtrace waiting for pod/some-name-mongos-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.lvzz4WKnBP +++ mktemp ++ local LAST_ERR=/tmp/tmp.hlpwfLTjjr ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.lvzz4WKnBP ++ cat /tmp/tmp.hlpwfLTjjr ++ rm /tmp/tmp.lvzz4WKnBP /tmp/tmp.hlpwfLTjjr ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.QqecKfruKM +++ mktemp ++ local LAST_ERR=/tmp/tmp.jjhquyRVbR ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.QqecKfruKM ++ cat /tmp/tmp.jjhquyRVbR ++ rm /tmp/tmp.QqecKfruKM /tmp/tmp.jjhquyRVbR ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness + wait_cluster_consistency some-name + local cluster_name=some-name + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster readyness' waiting for cluster readyness++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.9dkx3kcksN +++ mktemp ++ local LAST_ERR=/tmp/tmp.mkpswnMDrb ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.9dkx3kcksN ++ cat /tmp/tmp.mkpswnMDrb ++ rm /tmp/tmp.9dkx3kcksN /tmp/tmp.mkpswnMDrb ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + desc 'enable MCS' + set +o xtrace ----------------------------------------------------------------------------------- enable MCS ----------------------------------------------------------------------------------- + kubectl_bin patch psmdb some-name --type json '-p=[{"op":"add","path":"/spec/multiCluster/enabled","value":true}]' ++ mktemp + local LAST_OUT=/tmp/tmp.bRjz9F7YPv ++ mktemp + local LAST_ERR=/tmp/tmp.AewnYj7kps + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch psmdb some-name --type json '-p=[{"op":"add","path":"/spec/multiCluster/enabled","value":true}]' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.bRjz9F7YPv perconaservermongodb.psmdb.percona.com/some-name patched + cat /tmp/tmp.AewnYj7kps + rm /tmp/tmp.bRjz9F7YPv /tmp/tmp.AewnYj7kps + return 0 + desc 'check if ServiceExport objects are created' + set +o xtrace ----------------------------------------------------------------------------------- check if ServiceExport objects are created ----------------------------------------------------------------------------------- + wait_service_export + set +o xtrace waiting for cluster services to be exported + wait_service_import + set +o xtrace waiting for cluster services to be imported................... + wait_cluster_consistency some-name + local cluster_name=some-name + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster readyness' waiting for cluster readyness++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Nf5palxuaI +++ mktemp ++ local LAST_ERR=/tmp/tmp.jXGhkUM1wu ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Nf5palxuaI ++ cat /tmp/tmp.jXGhkUM1wu ++ rm /tmp/tmp.Nf5palxuaI /tmp/tmp.jXGhkUM1wu ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 1 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qBmnOmXeU9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.rDw1oNXoyx ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.qBmnOmXeU9 ++ cat /tmp/tmp.rDw1oNXoyx ++ rm /tmp/tmp.qBmnOmXeU9 /tmp/tmp.rDw1oNXoyx ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 2 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.9yh6ukpvzG +++ mktemp ++ local LAST_ERR=/tmp/tmp.FAWdfi7LNh ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.9yh6ukpvzG ++ cat /tmp/tmp.FAWdfi7LNh ++ rm /tmp/tmp.9yh6ukpvzG /tmp/tmp.FAWdfi7LNh ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 3 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.KAESZhkkIH +++ mktemp ++ local LAST_ERR=/tmp/tmp.SCsXy4hkCI ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.KAESZhkkIH ++ cat /tmp/tmp.SCsXy4hkCI ++ rm /tmp/tmp.KAESZhkkIH /tmp/tmp.SCsXy4hkCI ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 4 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.54NJ0VNaqY +++ mktemp ++ local LAST_ERR=/tmp/tmp.p1MNaQZveT ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.54NJ0VNaqY ++ cat /tmp/tmp.p1MNaQZveT ++ rm /tmp/tmp.54NJ0VNaqY /tmp/tmp.p1MNaQZveT ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 5 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.uuX5EM1FoJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.GDfoSUWVZK ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.uuX5EM1FoJ ++ cat /tmp/tmp.GDfoSUWVZK ++ rm /tmp/tmp.uuX5EM1FoJ /tmp/tmp.GDfoSUWVZK ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 6 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6O3iwElunc +++ mktemp ++ local LAST_ERR=/tmp/tmp.O0WGvoJEOX ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6O3iwElunc ++ cat /tmp/tmp.O0WGvoJEOX ++ rm /tmp/tmp.6O3iwElunc /tmp/tmp.O0WGvoJEOX ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 7 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bRDz4sGxn4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.uX4rn3vb7p ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.bRDz4sGxn4 ++ cat /tmp/tmp.uX4rn3vb7p ++ rm /tmp/tmp.bRDz4sGxn4 /tmp/tmp.uX4rn3vb7p ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 8 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.D8lRiLNTcI +++ mktemp ++ local LAST_ERR=/tmp/tmp.fl9tTqrAYG ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.D8lRiLNTcI ++ cat /tmp/tmp.fl9tTqrAYG ++ rm /tmp/tmp.D8lRiLNTcI /tmp/tmp.fl9tTqrAYG ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 9 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bmjzfU78ch +++ mktemp ++ local LAST_ERR=/tmp/tmp.mDpgUre3Bu ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.bmjzfU78ch ++ cat /tmp/tmp.mDpgUre3Bu ++ rm /tmp/tmp.bmjzfU78ch /tmp/tmp.mDpgUre3Bu ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 10 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.DFhoaHZO18 +++ mktemp ++ local LAST_ERR=/tmp/tmp.opN1H1vy2T ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.DFhoaHZO18 ++ cat /tmp/tmp.opN1H1vy2T ++ rm /tmp/tmp.DFhoaHZO18 /tmp/tmp.opN1H1vy2T ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 11 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.oRvoQVn10M +++ mktemp ++ local LAST_ERR=/tmp/tmp.EA1a1dY6kU ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.oRvoQVn10M ++ cat /tmp/tmp.EA1a1dY6kU ++ rm /tmp/tmp.oRvoQVn10M /tmp/tmp.EA1a1dY6kU ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 12 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.nqj1vwDNAj +++ mktemp ++ local LAST_ERR=/tmp/tmp.IX1eNZBTqD ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.nqj1vwDNAj ++ cat /tmp/tmp.IX1eNZBTqD ++ rm /tmp/tmp.nqj1vwDNAj /tmp/tmp.IX1eNZBTqD ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 13 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.uDU2B6MKdH +++ mktemp ++ local LAST_ERR=/tmp/tmp.VHAE8NeHAh ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.uDU2B6MKdH ++ cat /tmp/tmp.VHAE8NeHAh ++ rm /tmp/tmp.uDU2B6MKdH /tmp/tmp.VHAE8NeHAh ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 14 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.5uAnDQzNwp +++ mktemp ++ local LAST_ERR=/tmp/tmp.PKctTT7bdd ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.5uAnDQzNwp ++ cat /tmp/tmp.PKctTT7bdd ++ rm /tmp/tmp.5uAnDQzNwp /tmp/tmp.PKctTT7bdd ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 15 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.aiKbsBVDP8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.CW4jGoOVrC ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.aiKbsBVDP8 ++ cat /tmp/tmp.CW4jGoOVrC ++ rm /tmp/tmp.aiKbsBVDP8 /tmp/tmp.CW4jGoOVrC ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 16 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.WV1b1fiz7Q +++ mktemp ++ local LAST_ERR=/tmp/tmp.JO0gVZ0yFt ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.WV1b1fiz7Q ++ cat /tmp/tmp.JO0gVZ0yFt ++ rm /tmp/tmp.WV1b1fiz7Q /tmp/tmp.JO0gVZ0yFt ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 17 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.STqgl3Sfby +++ mktemp ++ local LAST_ERR=/tmp/tmp.EA0v7nZFBq ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.STqgl3Sfby ++ cat /tmp/tmp.EA0v7nZFBq ++ rm /tmp/tmp.STqgl3Sfby /tmp/tmp.EA0v7nZFBq ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 18 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.RiCPd1en9t +++ mktemp ++ local LAST_ERR=/tmp/tmp.lUyK9pYTc1 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.RiCPd1en9t ++ cat /tmp/tmp.lUyK9pYTc1 ++ rm /tmp/tmp.RiCPd1en9t /tmp/tmp.lUyK9pYTc1 ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 19 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.rMOzrKkQGA +++ mktemp ++ local LAST_ERR=/tmp/tmp.G9pyzJimhC ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.rMOzrKkQGA ++ cat /tmp/tmp.G9pyzJimhC ++ rm /tmp/tmp.rMOzrKkQGA /tmp/tmp.G9pyzJimhC ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 20 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.oDrEJjvwgN +++ mktemp ++ local LAST_ERR=/tmp/tmp.vppOAIqshw ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.oDrEJjvwgN ++ cat /tmp/tmp.vppOAIqshw ++ rm /tmp/tmp.oDrEJjvwgN /tmp/tmp.vppOAIqshw ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 21 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.kHh9j5DFAU +++ mktemp ++ local LAST_ERR=/tmp/tmp.WYe7exxQfi ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.kHh9j5DFAU ++ cat /tmp/tmp.WYe7exxQfi ++ rm /tmp/tmp.kHh9j5DFAU /tmp/tmp.WYe7exxQfi ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 22 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.TshIVqcQxW +++ mktemp ++ local LAST_ERR=/tmp/tmp.kGRIhyPtDK ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.TshIVqcQxW ++ cat /tmp/tmp.kGRIhyPtDK ++ rm /tmp/tmp.TshIVqcQxW /tmp/tmp.kGRIhyPtDK ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 23 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.MYiHadzGUp +++ mktemp ++ local LAST_ERR=/tmp/tmp.IkADziL5wK ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.MYiHadzGUp ++ cat /tmp/tmp.IkADziL5wK ++ rm /tmp/tmp.MYiHadzGUp /tmp/tmp.IkADziL5wK ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 24 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.76YalcqrbC +++ mktemp ++ local LAST_ERR=/tmp/tmp.Eifk5wAqZf ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.76YalcqrbC ++ cat /tmp/tmp.Eifk5wAqZf ++ rm /tmp/tmp.76YalcqrbC /tmp/tmp.Eifk5wAqZf ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 25 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bbEQV3fMhk +++ mktemp ++ local LAST_ERR=/tmp/tmp.i3QIlwFoDF ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.bbEQV3fMhk ++ cat /tmp/tmp.i3QIlwFoDF ++ rm /tmp/tmp.bbEQV3fMhk /tmp/tmp.i3QIlwFoDF ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 26 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.52GeXJD3DL +++ mktemp ++ local LAST_ERR=/tmp/tmp.4O8MschUr7 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.52GeXJD3DL ++ cat /tmp/tmp.4O8MschUr7 ++ rm /tmp/tmp.52GeXJD3DL /tmp/tmp.4O8MschUr7 ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 27 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.nz9km8zmz2 +++ mktemp ++ local LAST_ERR=/tmp/tmp.X9FGuuvQob ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.nz9km8zmz2 ++ cat /tmp/tmp.X9FGuuvQob ++ rm /tmp/tmp.nz9km8zmz2 /tmp/tmp.X9FGuuvQob ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 28 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.wTNIyB3v0W +++ mktemp ++ local LAST_ERR=/tmp/tmp.744SkMKz78 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.wTNIyB3v0W ++ cat /tmp/tmp.744SkMKz78 ++ rm /tmp/tmp.wTNIyB3v0W /tmp/tmp.744SkMKz78 ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 29 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.2b62tPOVjW +++ mktemp ++ local LAST_ERR=/tmp/tmp.Eg7FKqL84M ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.2b62tPOVjW ++ cat /tmp/tmp.Eg7FKqL84M ++ rm /tmp/tmp.2b62tPOVjW /tmp/tmp.Eg7FKqL84M ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 30 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.RvKfN6cUCd +++ mktemp ++ local LAST_ERR=/tmp/tmp.lNyTMzMMOM ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.RvKfN6cUCd ++ cat /tmp/tmp.lNyTMzMMOM ++ rm /tmp/tmp.RvKfN6cUCd /tmp/tmp.lNyTMzMMOM ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 31 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.9P3GZ9aTfB +++ mktemp ++ local LAST_ERR=/tmp/tmp.uOWXBH8cjc ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.9P3GZ9aTfB ++ cat /tmp/tmp.uOWXBH8cjc ++ rm /tmp/tmp.9P3GZ9aTfB /tmp/tmp.uOWXBH8cjc ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 32 -ge 32 ']' + echo max retry count 32 reached. something went wrong with operator or kubernetes cluster max retry count 32 reached. something went wrong with operator or kubernetes cluster + exit 1