++ echo 'Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/logs/multi-cluster-service.log' Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/logs/multi-cluster-service.log ++ '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/conf/cloud-secret.yml ']' ++ SKIP_BACKUPS_TO_AWS_GCP_AZURE= ++ oc get projects ++ kubectl get nodes ++ grep '^minikube' +++ kubectl version -o json +++ jq -r .serverVersion.gitVersion +++ grep -eks- Warning: version difference between client (1.35) and server (1.32) 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.35) and server (1.32) exceeds the supported minor version skew of +/-1 ++ '[' v1.32.13-gke.1205000 ']' ++ 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.35) and server (1.32) exceeds the supported minor version skew of +/-1 ++ KUBE_VERSION=1.32 + '[' 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 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_name=jen-psmdb-2283-73ca3795-11-cluster9 ++ 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 + k8s_cluster_region=us-central1-a + gcloud container hub memberships register jen-psmdb-2283-73ca3795-11-cluster9 --gke-cluster us-central1-a/jen-psmdb-2283-73ca3795-11-cluster9 --enable-workload-identity Membership [projects/cloud-dev-112233/locations/us-central1/memberships/jen-psmdb-2283-73ca3795-11-cluster9] already registered with the cluster [//container.googleapis.com/projects/cloud-dev-112233/locations/us-central1-a/clusters/jen-psmdb-2283-73ca3795-11-cluster9] 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-6261 + local ns=multi-cluster-service-6261 + [[ 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-2283/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.40DvCDGSsI ++ mktemp + local LAST_ERR=/tmp/tmp.8T2uVX7Wes + 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-2283/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.40DvCDGSsI 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.8T2uVX7Wes + rm /tmp/tmp.40DvCDGSsI /tmp/tmp.8T2uVX7Wes + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/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.VkX2wXnPK5 ++ mktemp + local LAST_ERR=/tmp/tmp.GyDFrb3WWU + 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.VkX2wXnPK5 + cat /tmp/tmp.GyDFrb3WWU + rm /tmp/tmp.VkX2wXnPK5 /tmp/tmp.GyDFrb3WWU + 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.GKWpdUDPRi ++ mktemp + local LAST_ERR=/tmp/tmp.GBM8oJhvgY + 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.GKWpdUDPRi + cat /tmp/tmp.GBM8oJhvgY + rm /tmp/tmp.GKWpdUDPRi /tmp/tmp.GBM8oJhvgY + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + grep -v NAMESPACE + kubectl get perconaservermongodbs.psmdb.percona.com --all-namespaces -o wide + 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.gy6ejfJzd0 ++ mktemp + local LAST_ERR=/tmp/tmp.yS6Mv3mYix + 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.gy6ejfJzd0 + cat /tmp/tmp.yS6Mv3mYix + rm /tmp/tmp.gy6ejfJzd0 /tmp/tmp.yS6Mv3mYix + 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-2283/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.AVBss9Cwrm ++ mktemp + local LAST_ERR=/tmp/tmp.bQ2pHLFnpO + 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-2283/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.AVBss9Cwrm 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.bQ2pHLFnpO + rm /tmp/tmp.AVBss9Cwrm /tmp/tmp.bQ2pHLFnpO + return 0 + check_crd_for_deletion PR-2283-73ca3795 + local git_tag=PR-2283-73ca3795 ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-2283-73ca3795/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.pGpHXFCcMC +++ mktemp ++ local LAST_ERR=/tmp/tmp.s16xQv5aiO ++ 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.pGpHXFCcMC ++ cat /tmp/tmp.s16xQv5aiO 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.pGpHXFCcMC ++ cat /tmp/tmp.s16xQv5aiO 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.pGpHXFCcMC ++ cat /tmp/tmp.s16xQv5aiO Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.pGpHXFCcMC ++ cat /tmp/tmp.s16xQv5aiO Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.pGpHXFCcMC /tmp/tmp.s16xQv5aiO ++ 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 ++ sed s/NAMESPACE// ++ awk '-F ' '{print $2}' + 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 ++ awk '{print $1}' ++ grep chaos-mesh + 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' ++ mktemp + '[' -n '' ']' + desc 'cleaned up old namespaces psmdb-operator' + xargs kubectl delete ns + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace psmdb-operator --ignore-not-found + local LAST_OUT=/tmp/tmp.N3xFpAxNER + awk '{print$1}' ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.8dStMXad2r + local LAST_OUT=/tmp/tmp.X6j5ZZ3YOH + local exit_status=0 ++ mktemp + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.n1SjBNfzlx + local exit_status=0 + local timeout=4 + for i in $(seq 0 2) + set +e + kubectl get ns ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.N3xFpAxNER + cat /tmp/tmp.8dStMXad2r + rm /tmp/tmp.N3xFpAxNER /tmp/tmp.8dStMXad2r + return 0 namespace "multi-cluster-service-12972" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.X6j5ZZ3YOH namespace "psmdb-operator" deleted + cat /tmp/tmp.n1SjBNfzlx + rm /tmp/tmp.X6j5ZZ3YOH /tmp/tmp.n1SjBNfzlx + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.UjA72PXV75 ++ mktemp + local LAST_ERR=/tmp/tmp.p1e4R4a0L6 + 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.UjA72PXV75 + cat /tmp/tmp.p1e4R4a0L6 + rm /tmp/tmp.UjA72PXV75 /tmp/tmp.p1e4R4a0L6 + 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.UEYoBpCWrR ++ mktemp + local LAST_ERR=/tmp/tmp.uyke1HK5gn + 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.UEYoBpCWrR namespace/psmdb-operator created + cat /tmp/tmp.uyke1HK5gn + rm /tmp/tmp.UEYoBpCWrR /tmp/tmp.uyke1HK5gn + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.nOAxZYTfyU +++ mktemp ++ local LAST_ERR=/tmp/tmp.uCU8YKL8lg ++ 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.nOAxZYTfyU ++ cat /tmp/tmp.uCU8YKL8lg ++ rm /tmp/tmp.nOAxZYTfyU /tmp/tmp.uCU8YKL8lg ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2283-73ca3795-11-cluster9 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.dcDgfcmuGC ++ mktemp + local LAST_ERR=/tmp/tmp.WZfWabooyj + 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-2283-73ca3795-11-cluster9 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.dcDgfcmuGC Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2283-73ca3795-11-cluster9" modified. + cat /tmp/tmp.WZfWabooyj + rm /tmp/tmp.dcDgfcmuGC /tmp/tmp.WZfWabooyj + return 0 + deploy_operator + desc 'start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2283-73ca3795' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2283-73ca3795 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/multi-cluster-service/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.OgXg7jpFyF ++ mktemp + local LAST_ERR=/tmp/tmp.ULZ62byqv2 + 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-2283/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OgXg7jpFyF 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.ULZ62byqv2 + rm /tmp/tmp.OgXg7jpFyF /tmp/tmp.ULZ62byqv2 + 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-2283/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.W6TsCCZmoa ++ mktemp + local LAST_ERR=/tmp/tmp.O5YOxXqaMs + 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.W6TsCCZmoa 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.O5YOxXqaMs + rm /tmp/tmp.W6TsCCZmoa /tmp/tmp.O5YOxXqaMs + return 0 + yq eval $'\n\t\t\t(.spec.template.spec.containers[].image = "docker.io/perconalab/percona-server-mongodb-operator:PR-2283-73ca3795") |\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-2283/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.ZXuHY0Iohx ++ mktemp + local LAST_ERR=/tmp/tmp.XUhl2ZEYjo + 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.ZXuHY0Iohx deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.XUhl2ZEYjo + rm /tmp/tmp.ZXuHY0Iohx /tmp/tmp.XUhl2ZEYjo + 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.ip1oriDyp7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.1AFWEonMbb ++ 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.ip1oriDyp7 ++ cat /tmp/tmp.1AFWEonMbb ++ rm /tmp/tmp.ip1oriDyp7 /tmp/tmp.1AFWEonMbb ++ return 0 + wait_operator_pod percona-server-mongodb-operator-79d56c85d6-cvv2m + local pod=percona-server-mongodb-operator-79d56c85d6-cvv2m + set +o xtrace waiting for pod/percona-server-mongodb-operator-79d56c85d6-cvv2m 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.QBQWzUSssu +++ mktemp ++ local LAST_ERR=/tmp/tmp.fRMHKp7N7y ++ 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.QBQWzUSssu ++ cat /tmp/tmp.fRMHKp7N7y ++ rm /tmp/tmp.QBQWzUSssu /tmp/tmp.fRMHKp7N7y ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-79d56c85d6-cvv2m ++ mktemp + local LAST_OUT=/tmp/tmp.nJpZk5DSLO ++ mktemp + local LAST_ERR=/tmp/tmp.IQUK3abBeK + 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-79d56c85d6-cvv2m + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.nJpZk5DSLO + cat /tmp/tmp.IQUK3abBeK + rm /tmp/tmp.nJpZk5DSLO /tmp/tmp.IQUK3abBeK + return 0 2026-04-09T16:40:47.850Z INFO setup Manager starting up {"gitCommit": "73ca37956356b4f3579a3ef1dce0c4105fda2da2", "gitBranch": "PR-2283-73ca3795", "buildTime": "", "goVersion": "go1.25.9", "os": "linux", "arch": "amd64"} + create_namespace multi-cluster-service-6261 + local namespace=multi-cluster-service-6261 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ sed s/NAMESPACE// ++ tail -n1 ++ awk '-F ' '{print $2}' + 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 + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' ++ mktemp + '[' -n '' ']' + desc 'cleaned up old namespaces multi-cluster-service-6261' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces multi-cluster-service-6261 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace multi-cluster-service-6261 --ignore-not-found + xargs kubectl delete ns ++ mktemp + local LAST_OUT=/tmp/tmp.43QashuBiB ++ mktemp + local LAST_OUT=/tmp/tmp.dBcDtHzFti + local LAST_ERR=/tmp/tmp.V54tPMLb0Q + local exit_status=0 + local timeout=4 ++ mktemp ++ seq 0 2 + local LAST_ERR=/tmp/tmp.Mz6dIBKyqE + local exit_status=0 + local timeout=4 ++ 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 multi-cluster-service-6261 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.43QashuBiB + cat /tmp/tmp.V54tPMLb0Q + rm /tmp/tmp.43QashuBiB /tmp/tmp.V54tPMLb0Q + 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.dBcDtHzFti + cat /tmp/tmp.Mz6dIBKyqE + rm /tmp/tmp.dBcDtHzFti /tmp/tmp.Mz6dIBKyqE + return 0 + kubectl_bin wait --for=delete namespace multi-cluster-service-6261 ++ mktemp + local LAST_OUT=/tmp/tmp.fcf5auFmfd ++ mktemp + local LAST_ERR=/tmp/tmp.DNETqCaJLA + 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-6261 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.fcf5auFmfd + cat /tmp/tmp.DNETqCaJLA + rm /tmp/tmp.fcf5auFmfd /tmp/tmp.DNETqCaJLA + return 0 + desc 'create namespace multi-cluster-service-6261' + set +o xtrace ----------------------------------------------------------------------------------- create namespace multi-cluster-service-6261 ----------------------------------------------------------------------------------- + kubectl_bin create namespace multi-cluster-service-6261 ++ mktemp + local LAST_OUT=/tmp/tmp.2fDEUnATpi ++ mktemp + local LAST_ERR=/tmp/tmp.1deLPurdeY + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace multi-cluster-service-6261 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2fDEUnATpi namespace/multi-cluster-service-6261 created + cat /tmp/tmp.1deLPurdeY + rm /tmp/tmp.2fDEUnATpi /tmp/tmp.1deLPurdeY + return 0 + set_kube_ctx multi-cluster-service-6261 + local namespace=multi-cluster-service-6261 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.2CkoTshzDa +++ mktemp ++ local LAST_ERR=/tmp/tmp.U3DE2iF94y ++ 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.2CkoTshzDa ++ cat /tmp/tmp.U3DE2iF94y ++ rm /tmp/tmp.2CkoTshzDa /tmp/tmp.U3DE2iF94y ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2283-73ca3795-11-cluster9 --namespace=multi-cluster-service-6261 ++ mktemp + local LAST_OUT=/tmp/tmp.KoSMUZ9M6r ++ mktemp + local LAST_ERR=/tmp/tmp.8WnWXF2l4m + 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-2283-73ca3795-11-cluster9 --namespace=multi-cluster-service-6261 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.KoSMUZ9M6r Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2283-73ca3795-11-cluster9" modified. + cat /tmp/tmp.8WnWXF2l4m + rm /tmp/tmp.KoSMUZ9M6r /tmp/tmp.8WnWXF2l4m + 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-2283/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.M6GB2p7zMj ++ mktemp + local LAST_ERR=/tmp/tmp.k3bNo44hYa + 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-2283/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/conf/client.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.M6GB2p7zMj secret/some-users created deployment.apps/psmdb-client created + cat /tmp/tmp.k3bNo44hYa + rm /tmp/tmp.M6GB2p7zMj /tmp/tmp.k3bNo44hYa + 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-2283/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.iY75edEYMr ++ mktemp + local LAST_ERR=/tmp/tmp.y36J5oN7w9 + 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-2283/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.iY75edEYMr 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.y36J5oN7w9 + rm /tmp/tmp.iY75edEYMr /tmp/tmp.y36J5oN7w9 + return 0 + version_gt 1.19 ++ echo '1.32 >= 1.19' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' 0 -ne 1 ']' + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/conf/container-rc.yaml + /usr/sbin/sed s/docker/runc/g + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.HD9yDRQSEA ++ mktemp + local LAST_ERR=/tmp/tmp.GLRiNcEDwj + 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.HD9yDRQSEA runtimeclass.node.k8s.io/container-rc unchanged + cat /tmp/tmp.GLRiNcEDwj + rm /tmp/tmp.HD9yDRQSEA /tmp/tmp.GLRiNcEDwj + return 0 + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/multi-cluster-service/conf/some-name.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/multi-cluster-service/conf/some-name.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2283/e2e-tests/multi-cluster-service/conf/some-name.yml ++ mktemp + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2283-73ca3795"' + local LAST_OUT=/tmp/tmp.aqmkBsTy59 ++ mktemp + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' + yq eval '.spec.upgradeOptions.apply="Never"' + /usr/sbin/sed -e s/NAME_SPACE/multi-cluster-service-6261/g + local LAST_ERR=/tmp/tmp.1nmcscgVpv + 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.aqmkBsTy59 perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.1nmcscgVpv + rm /tmp/tmp.aqmkBsTy59 /tmp/tmp.1nmcscgVpv + 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.RlREkTajXr +++ mktemp ++ local LAST_ERR=/tmp/tmp.y8bza90SKO ++ 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.RlREkTajXr ++ cat /tmp/tmp.y8bza90SKO ++ rm /tmp/tmp.RlREkTajXr /tmp/tmp.y8bza90SKO ++ 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.zLGaaducVO +++ mktemp ++ local LAST_ERR=/tmp/tmp.RUTJRied6P ++ 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.zLGaaducVO ++ cat /tmp/tmp.RUTJRied6P ++ rm /tmp/tmp.zLGaaducVO /tmp/tmp.RUTJRied6P ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Lh3MMRYByL +++ mktemp ++ local LAST_ERR=/tmp/tmp.6qILRZ8y3h ++ 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.Lh3MMRYByL ++ cat /tmp/tmp.6qILRZ8y3h ++ rm /tmp/tmp.Lh3MMRYByL /tmp/tmp.6qILRZ8y3h ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + 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.f07ZQ6YQzW +++ mktemp ++ local LAST_ERR=/tmp/tmp.MVGHKdwLMv ++ 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.f07ZQ6YQzW ++ cat /tmp/tmp.MVGHKdwLMv ++ rm /tmp/tmp.f07ZQ6YQzW /tmp/tmp.MVGHKdwLMv ++ return 0 + [[ '' == true ]] + 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.fpxDHLVH6o +++ mktemp ++ local LAST_ERR=/tmp/tmp.mkrFA8yWFV ++ 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.fpxDHLVH6o ++ cat /tmp/tmp.mkrFA8yWFV ++ rm /tmp/tmp.fpxDHLVH6o /tmp/tmp.mkrFA8yWFV ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.d97OYrt3p7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.vhGSqwgoWm ++ 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.d97OYrt3p7 ++ cat /tmp/tmp.vhGSqwgoWm ++ rm /tmp/tmp.d97OYrt3p7 /tmp/tmp.vhGSqwgoWm ++ return 0 + [[ '' == true ]] + sleep 10 + [[ false == true ]] + 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.DyZdU26xae +++ mktemp ++ local LAST_ERR=/tmp/tmp.HhrJoImvLN ++ 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.DyZdU26xae ++ cat /tmp/tmp.HhrJoImvLN ++ rm /tmp/tmp.DyZdU26xae /tmp/tmp.HhrJoImvLN ++ return 0 + [[ '' == true ]] + 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.htqVypOMcb +++ mktemp ++ local LAST_ERR=/tmp/tmp.POGrTTZWZR ++ 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.htqVypOMcb ++ cat /tmp/tmp.POGrTTZWZR ++ rm /tmp/tmp.htqVypOMcb /tmp/tmp.POGrTTZWZR ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.d57MnfVbGE +++ mktemp ++ local LAST_ERR=/tmp/tmp.qpKw64lTpx ++ 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.d57MnfVbGE ++ cat /tmp/tmp.qpKw64lTpx ++ rm /tmp/tmp.d57MnfVbGE /tmp/tmp.qpKw64lTpx ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + 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.vVXMp7z9Ab +++ mktemp ++ local LAST_ERR=/tmp/tmp.Z0ba3sHw7K ++ 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.vVXMp7z9Ab ++ cat /tmp/tmp.Z0ba3sHw7K ++ rm /tmp/tmp.vVXMp7z9Ab /tmp/tmp.Z0ba3sHw7K ++ return 0 + [[ ready == ready ]] + 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.XaXyDPKP9a ++ mktemp + local LAST_ERR=/tmp/tmp.p827BBNK5r + 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.XaXyDPKP9a perconaservermongodb.psmdb.percona.com/some-name patched + cat /tmp/tmp.p827BBNK5r + rm /tmp/tmp.XaXyDPKP9a /tmp/tmp.p827BBNK5r + 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.v9YvHVVkum +++ mktemp ++ local LAST_ERR=/tmp/tmp.Tj03Ru1mi1 ++ 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.v9YvHVVkum ++ cat /tmp/tmp.Tj03Ru1mi1 ++ rm /tmp/tmp.v9YvHVVkum /tmp/tmp.Tj03Ru1mi1 ++ return 0 + [[ initializing == ready ]] + 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.1RWeT1rqmh +++ mktemp ++ local LAST_ERR=/tmp/tmp.uxp0gNk43X ++ 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.1RWeT1rqmh ++ cat /tmp/tmp.uxp0gNk43X ++ rm /tmp/tmp.1RWeT1rqmh /tmp/tmp.uxp0gNk43X ++ return 0 + [[ initializing == ready ]] + 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.JJvVBmeaWT +++ mktemp ++ local LAST_ERR=/tmp/tmp.6z4KrTsj4O ++ 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.JJvVBmeaWT ++ cat /tmp/tmp.6z4KrTsj4O ++ rm /tmp/tmp.JJvVBmeaWT /tmp/tmp.6z4KrTsj4O ++ return 0 + [[ error == ready ]] + 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.F7z8LNIu2j +++ mktemp ++ local LAST_ERR=/tmp/tmp.s7ip6Y9f50 ++ 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.F7z8LNIu2j ++ cat /tmp/tmp.s7ip6Y9f50 ++ rm /tmp/tmp.F7z8LNIu2j /tmp/tmp.s7ip6Y9f50 ++ return 0 + [[ error == ready ]] + 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.ryBPgnntg4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.cfiEHCPgc5 ++ 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.ryBPgnntg4 ++ cat /tmp/tmp.cfiEHCPgc5 ++ rm /tmp/tmp.ryBPgnntg4 /tmp/tmp.cfiEHCPgc5 ++ return 0 + [[ error == ready ]] + 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.23NQEfGihZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.2GMPR1hiqy ++ 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.23NQEfGihZ ++ cat /tmp/tmp.2GMPR1hiqy ++ rm /tmp/tmp.23NQEfGihZ /tmp/tmp.2GMPR1hiqy ++ return 0 + [[ error == ready ]] + 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.DsVfW800io +++ mktemp ++ local LAST_ERR=/tmp/tmp.GssHsWkmKc ++ 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.DsVfW800io ++ cat /tmp/tmp.GssHsWkmKc ++ rm /tmp/tmp.DsVfW800io /tmp/tmp.GssHsWkmKc ++ return 0 + [[ error == ready ]] + 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.AOYnJyIOqX +++ mktemp ++ local LAST_ERR=/tmp/tmp.0D7Lw359lM ++ 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.AOYnJyIOqX ++ cat /tmp/tmp.0D7Lw359lM ++ rm /tmp/tmp.AOYnJyIOqX /tmp/tmp.0D7Lw359lM ++ return 0 + [[ error == ready ]] + 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.pc7a51DHwe +++ mktemp ++ local LAST_ERR=/tmp/tmp.Qe7tXW2lTO ++ 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.pc7a51DHwe ++ cat /tmp/tmp.Qe7tXW2lTO ++ rm /tmp/tmp.pc7a51DHwe /tmp/tmp.Qe7tXW2lTO ++ return 0 + [[ error == ready ]] + 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.KveBsabnMP +++ mktemp ++ local LAST_ERR=/tmp/tmp.QIMuy2944B ++ 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.KveBsabnMP ++ cat /tmp/tmp.QIMuy2944B ++ rm /tmp/tmp.KveBsabnMP /tmp/tmp.QIMuy2944B ++ return 0 + [[ error == ready ]] + 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.VSaDVYyQ45 +++ mktemp ++ local LAST_ERR=/tmp/tmp.YSD1U1NOlj ++ 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.VSaDVYyQ45 ++ cat /tmp/tmp.YSD1U1NOlj ++ rm /tmp/tmp.VSaDVYyQ45 /tmp/tmp.YSD1U1NOlj ++ return 0 + [[ error == ready ]] + 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.kWXQRapu13 +++ mktemp ++ local LAST_ERR=/tmp/tmp.XICqiH9jtB ++ 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.kWXQRapu13 ++ cat /tmp/tmp.XICqiH9jtB ++ rm /tmp/tmp.kWXQRapu13 /tmp/tmp.XICqiH9jtB ++ return 0 + [[ error == ready ]] + 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.VuskCKzKLK +++ mktemp ++ local LAST_ERR=/tmp/tmp.c0OvTxyZXv ++ 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.VuskCKzKLK ++ cat /tmp/tmp.c0OvTxyZXv ++ rm /tmp/tmp.VuskCKzKLK /tmp/tmp.c0OvTxyZXv ++ return 0 + [[ error == ready ]] + 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.XBFUdxvSpy +++ mktemp ++ local LAST_ERR=/tmp/tmp.kxg69AVxXS ++ 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.XBFUdxvSpy ++ cat /tmp/tmp.kxg69AVxXS ++ rm /tmp/tmp.XBFUdxvSpy /tmp/tmp.kxg69AVxXS ++ return 0 + [[ error == ready ]] + 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.gbJowYirS4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.4iElKT0G3J ++ 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.gbJowYirS4 ++ cat /tmp/tmp.4iElKT0G3J ++ rm /tmp/tmp.gbJowYirS4 /tmp/tmp.4iElKT0G3J ++ return 0 + [[ error == ready ]] + 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.c8CxsPzdzb +++ mktemp ++ local LAST_ERR=/tmp/tmp.LO1Ehxd70P ++ 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.c8CxsPzdzb ++ cat /tmp/tmp.LO1Ehxd70P ++ rm /tmp/tmp.c8CxsPzdzb /tmp/tmp.LO1Ehxd70P ++ return 0 + [[ error == ready ]] + 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.DHPk864BvJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.ASssT2ro3e ++ 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.DHPk864BvJ ++ cat /tmp/tmp.ASssT2ro3e ++ rm /tmp/tmp.DHPk864BvJ /tmp/tmp.ASssT2ro3e ++ return 0 + [[ error == ready ]] + 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.aBXDPKi72R +++ mktemp ++ local LAST_ERR=/tmp/tmp.XeKddpYAnd ++ 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.aBXDPKi72R ++ cat /tmp/tmp.XeKddpYAnd ++ rm /tmp/tmp.aBXDPKi72R /tmp/tmp.XeKddpYAnd ++ return 0 + [[ error == ready ]] + 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.qCkkjWKlQA +++ mktemp ++ local LAST_ERR=/tmp/tmp.ogrQ6qVtzk ++ 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.qCkkjWKlQA ++ cat /tmp/tmp.ogrQ6qVtzk ++ rm /tmp/tmp.qCkkjWKlQA /tmp/tmp.ogrQ6qVtzk ++ return 0 + [[ error == ready ]] + 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.wIXhbH1Ded +++ mktemp ++ local LAST_ERR=/tmp/tmp.DZ64AcpUVh ++ 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.wIXhbH1Ded ++ cat /tmp/tmp.DZ64AcpUVh ++ rm /tmp/tmp.wIXhbH1Ded /tmp/tmp.DZ64AcpUVh ++ return 0 + [[ error == ready ]] + 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.bNPANYKknN +++ mktemp ++ local LAST_ERR=/tmp/tmp.bVPBoMk3DP ++ 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.bNPANYKknN ++ cat /tmp/tmp.bVPBoMk3DP ++ rm /tmp/tmp.bNPANYKknN /tmp/tmp.bVPBoMk3DP ++ return 0 + [[ error == ready ]] + 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.vjBMvEAxSt +++ mktemp ++ local LAST_ERR=/tmp/tmp.CC6JAHXz6e ++ 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.vjBMvEAxSt ++ cat /tmp/tmp.CC6JAHXz6e ++ rm /tmp/tmp.vjBMvEAxSt /tmp/tmp.CC6JAHXz6e ++ return 0 + [[ error == ready ]] + 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.znVYUgmiCv +++ mktemp ++ local LAST_ERR=/tmp/tmp.5esDhoGJxK ++ 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.znVYUgmiCv ++ cat /tmp/tmp.5esDhoGJxK ++ rm /tmp/tmp.znVYUgmiCv /tmp/tmp.5esDhoGJxK ++ return 0 + [[ error == ready ]] + 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.R9JXheYfxA +++ mktemp ++ local LAST_ERR=/tmp/tmp.9zPWUZorYa ++ 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.R9JXheYfxA ++ cat /tmp/tmp.9zPWUZorYa ++ rm /tmp/tmp.R9JXheYfxA /tmp/tmp.9zPWUZorYa ++ return 0 + [[ error == ready ]] + 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.BtyIp8jd0R +++ mktemp ++ local LAST_ERR=/tmp/tmp.sFXeuwn6Vj ++ 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.BtyIp8jd0R ++ cat /tmp/tmp.sFXeuwn6Vj ++ rm /tmp/tmp.BtyIp8jd0R /tmp/tmp.sFXeuwn6Vj ++ return 0 + [[ error == ready ]] + 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.jXuHqjcEp9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Cms77S2tiL ++ 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.jXuHqjcEp9 ++ cat /tmp/tmp.Cms77S2tiL ++ rm /tmp/tmp.jXuHqjcEp9 /tmp/tmp.Cms77S2tiL ++ return 0 + [[ error == ready ]] + 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.4AJ1PtRtpy +++ mktemp ++ local LAST_ERR=/tmp/tmp.gOSHwuCmET ++ 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.4AJ1PtRtpy ++ cat /tmp/tmp.gOSHwuCmET ++ rm /tmp/tmp.4AJ1PtRtpy /tmp/tmp.gOSHwuCmET ++ return 0 + [[ error == ready ]] + 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.7sgMYyDeu4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.bmcAtx7CG2 ++ 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.7sgMYyDeu4 ++ cat /tmp/tmp.bmcAtx7CG2 ++ rm /tmp/tmp.7sgMYyDeu4 /tmp/tmp.bmcAtx7CG2 ++ return 0 + [[ error == ready ]] + 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.7u0yVakFqd +++ mktemp ++ local LAST_ERR=/tmp/tmp.BbdWcolA1n ++ 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.7u0yVakFqd ++ cat /tmp/tmp.BbdWcolA1n ++ rm /tmp/tmp.7u0yVakFqd /tmp/tmp.BbdWcolA1n ++ return 0 + [[ error == ready ]] + 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.FGWNTNxC5K +++ mktemp ++ local LAST_ERR=/tmp/tmp.esMnn37c9M ++ 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.FGWNTNxC5K ++ cat /tmp/tmp.esMnn37c9M ++ rm /tmp/tmp.FGWNTNxC5K /tmp/tmp.esMnn37c9M ++ return 0 + [[ error == ready ]] + 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.ZYo9l8fb3h +++ mktemp ++ local LAST_ERR=/tmp/tmp.GRgnpEdb3L ++ 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.ZYo9l8fb3h ++ cat /tmp/tmp.GRgnpEdb3L ++ rm /tmp/tmp.ZYo9l8fb3h /tmp/tmp.GRgnpEdb3L ++ return 0 + [[ error == ready ]] + 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.WEswPaPnnb +++ mktemp ++ local LAST_ERR=/tmp/tmp.yLF011rLPS ++ 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.WEswPaPnnb ++ cat /tmp/tmp.yLF011rLPS ++ rm /tmp/tmp.WEswPaPnnb /tmp/tmp.yLF011rLPS ++ return 0 + [[ error == ready ]] + 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