Log: /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/logs/custom-users-8-0.log Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 + create_infra custom-users-3914 + local ns=custom-users-3914 + '[' -n pxc-operator ']' + kubectl get pxc --all-namespaces -o wide + xargs -L 1 sh -xc 'kubectl patch pxc -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' + grep -v NAMESPACE + kubectl patch pxc -n custom-users-17174 some-name --type=merge -p '{"metadata":{"finalizers":[]}}' perconaxtradbcluster.pxc.percona.com/some-name patched + kubectl_bin delete pxc --all --all-namespaces ++ mktemp + local LAST_OUT=/tmp/tmp.N5isXE1LpJ ++ mktemp + local LAST_ERR=/tmp/tmp.6WsvBLmZDL + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete pxc --all --all-namespaces + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.N5isXE1LpJ perconaxtradbcluster.pxc.percona.com "some-name" deleted from custom-users-17174 namespace + cat /tmp/tmp.6WsvBLmZDL + rm /tmp/tmp.N5isXE1LpJ /tmp/tmp.6WsvBLmZDL + return 0 + kubectl_bin delete pxc-backup --all --all-namespaces ++ mktemp + local LAST_OUT=/tmp/tmp.mHOvYcXp8A ++ mktemp + local LAST_ERR=/tmp/tmp.3CwYU9eRpN + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete pxc-backup --all --all-namespaces + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.mHOvYcXp8A No resources found + cat /tmp/tmp.3CwYU9eRpN + rm /tmp/tmp.mHOvYcXp8A /tmp/tmp.3CwYU9eRpN + return 0 + kubectl_bin delete pxc-restore --all --all-namespaces ++ mktemp + local LAST_OUT=/tmp/tmp.yVT8G07qBL ++ mktemp + local LAST_ERR=/tmp/tmp.3JB8twPqxf + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete pxc-restore --all --all-namespaces + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.yVT8G07qBL No resources found + cat /tmp/tmp.3JB8twPqxf + rm /tmp/tmp.yVT8G07qBL /tmp/tmp.3JB8twPqxf + return 0 + create_namespace pxc-operator + local namespace=pxc-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ sed s/NAMESPACE// ++ awk '-F ' '{print $2}' ++ tail -n1 + local chaos_mesh_ns= + '[' -n '' ']' ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get MutatingWebhookConfiguration + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ kubectl api-resources ++ grep chaos-mesh ++ kubectl get crd ++ awk '{print $1}' ++ grep chaos-mesh.org + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get clusterrolebinding + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl get clusterrole + 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 ----------------------------------------------------------------------------------- + '[' -n '' ']' + desc 'cleaned up old namespaces pxc-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces pxc-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace pxc-operator ++ mktemp + xargs kubectl delete ns + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|pxc-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + local LAST_OUT=/tmp/tmp.mThN05oB93 ++ mktemp + local LAST_OUT=/tmp/tmp.Sndgy4Wb3J ++ mktemp + local LAST_ERR=/tmp/tmp.ympwlgioLF + local exit_status=0 ++ mktemp ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete namespace pxc-operator + local LAST_ERR=/tmp/tmp.LocH6KTbZV + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl get ns + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.Sndgy4Wb3J + cat /tmp/tmp.LocH6KTbZV + rm /tmp/tmp.Sndgy4Wb3J /tmp/tmp.LocH6KTbZV + return 0 namespace "custom-users-17174" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.mThN05oB93 namespace "pxc-operator" deleted + cat /tmp/tmp.ympwlgioLF + rm /tmp/tmp.mThN05oB93 /tmp/tmp.ympwlgioLF + return 0 + wait_for_delete namespace/pxc-operator + local res=namespace/pxc-operator + echo -n 'waiting for namespace/pxc-operator to be deleted' waiting for namespace/pxc-operator to be deleted+ set +o xtrace Error from server (NotFound): namespaces "pxc-operator" not found + desc 'create namespace pxc-operator' + set +o xtrace ----------------------------------------------------------------------------------- create namespace pxc-operator ----------------------------------------------------------------------------------- + kubectl_bin create namespace pxc-operator ++ mktemp + local LAST_OUT=/tmp/tmp.eSBaL64SG0 ++ mktemp + local LAST_ERR=/tmp/tmp.tCfqfQ9jjK + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl create namespace pxc-operator + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.eSBaL64SG0 namespace/pxc-operator created + cat /tmp/tmp.tCfqfQ9jjK + rm /tmp/tmp.eSBaL64SG0 /tmp/tmp.tCfqfQ9jjK + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.KTIa39o67B +++ mktemp ++ local LAST_ERR=/tmp/tmp.UKZ3FxOQvG ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.KTIa39o67B ++ cat /tmp/tmp.UKZ3FxOQvG ++ rm /tmp/tmp.KTIa39o67B /tmp/tmp.UKZ3FxOQvG ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-0538614f-6-cluster5 --namespace=pxc-operator ++ mktemp + local LAST_OUT=/tmp/tmp.YaCnXL7nRE ++ mktemp + local LAST_ERR=/tmp/tmp.M5lVMulcYx + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-0538614f-6-cluster5 --namespace=pxc-operator + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.YaCnXL7nRE Context "gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-0538614f-6-cluster5" modified. + cat /tmp/tmp.M5lVMulcYx + rm /tmp/tmp.YaCnXL7nRE /tmp/tmp.M5lVMulcYx + return 0 + deploy_operator + desc 'start PXC operator' + set +o xtrace ----------------------------------------------------------------------------------- start PXC operator ----------------------------------------------------------------------------------- + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.817yGobm2I ++ mktemp + local LAST_ERR=/tmp/tmp.fwAGuDmbdm + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.817yGobm2I customresourcedefinition.apiextensions.k8s.io/perconaxtradbclusterbackups.pxc.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaxtradbclusterrestores.pxc.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaxtradbclusters.pxc.percona.com serverside-applied + cat /tmp/tmp.fwAGuDmbdm + rm /tmp/tmp.817yGobm2I /tmp/tmp.fwAGuDmbdm + return 0 + '[' -n pxc-operator ']' + apply_rbac cw-rbac + local operator_namespace=pxc-operator + local rbac=cw-rbac + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: pxc-operator^' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.4QLpkSfU65 ++ mktemp + local LAST_ERR=/tmp/tmp.K8rIFJyX2j + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.4QLpkSfU65 clusterrole.rbac.authorization.k8s.io/percona-xtradb-cluster-operator unchanged serviceaccount/percona-xtradb-cluster-operator created clusterrolebinding.rbac.authorization.k8s.io/service-account-percona-xtradb-cluster-operator unchanged + cat /tmp/tmp.K8rIFJyX2j + rm /tmp/tmp.4QLpkSfU65 /tmp/tmp.K8rIFJyX2j + return 0 + yq eval '(select(.kind == "Deployment").spec.template.spec.containers[] | select(.name == "percona-xtradb-cluster-operator").env[] | select(.name == "LOG_LEVEL").value) = "VERBOSE"' - + sed -e 's^image: .*^image: perconalab/percona-xtradb-cluster-operator:PR-2154-0538614f^' + sed -e 's^failureThreshold: .*^failureThreshold: 10^' + yq eval '(select(.kind == "Deployment").spec.template.spec.containers[] | select(.name == "percona-xtradb-cluster-operator").env[] | select(.name == "DISABLE_TELEMETRY").value) = "true"' - + kubectl_bin apply -f - ++ mktemp + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/deploy/cw-operator.yaml + local LAST_OUT=/tmp/tmp.rZOOdkdEXX ++ mktemp + local LAST_ERR=/tmp/tmp.1e4oScxruh + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.rZOOdkdEXX deployment.apps/percona-xtradb-cluster-operator created service/percona-xtradb-cluster-operator created + cat /tmp/tmp.1e4oScxruh + rm /tmp/tmp.rZOOdkdEXX /tmp/tmp.1e4oScxruh + return 0 + sleep 10 + kubectl_bin wait --for=condition=Ready pods -l app.kubernetes.io/component=operator,app.kubernetes.io/instance=percona-xtradb-cluster-operator,app.kubernetes.io/name=percona-xtradb-cluster-operator --timeout=30s ++ mktemp + local LAST_OUT=/tmp/tmp.WrdnUDSfoa ++ mktemp + local LAST_ERR=/tmp/tmp.FahgRC0McH + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=condition=Ready pods -l app.kubernetes.io/component=operator,app.kubernetes.io/instance=percona-xtradb-cluster-operator,app.kubernetes.io/name=percona-xtradb-cluster-operator --timeout=30s + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.WrdnUDSfoa pod/percona-xtradb-cluster-operator-c799c8d46-sm9l2 condition met + cat /tmp/tmp.FahgRC0McH + rm /tmp/tmp.WrdnUDSfoa /tmp/tmp.FahgRC0McH + return 0 ++ get_operator_pod ++ local label_prefix=app.kubernetes.io/ +++ grep -c percona-xtradb-cluster-operator +++ kubectl get pods --selector=app.kubernetes.io/name=percona-xtradb-cluster-operator -n pxc-operator ++ local check_label=1 ++ [[ 1 -eq 0 ]] ++ kubectl_bin get pods --selector=app.kubernetes.io/name=percona-xtradb-cluster-operator -o 'jsonpath={.items[].metadata.name}' -n pxc-operator +++ mktemp ++ local LAST_OUT=/tmp/tmp.hOyMc5466o +++ mktemp ++ local LAST_ERR=/tmp/tmp.5bghLbIlkn ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=app.kubernetes.io/name=percona-xtradb-cluster-operator -o 'jsonpath={.items[].metadata.name}' -n pxc-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.hOyMc5466o ++ cat /tmp/tmp.5bghLbIlkn ++ rm /tmp/tmp.hOyMc5466o /tmp/tmp.5bghLbIlkn ++ return 0 + wait_pod percona-xtradb-cluster-operator-c799c8d46-sm9l2 480 pxc-operator + local pod=percona-xtradb-cluster-operator-c799c8d46-sm9l2 + local max_retry=480 + local ns=pxc-operator ++ egrep '^(pxc|proxysql)$' ++ echo percona-xtradb-cluster-operator-c799c8d46-sm9l2 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/percona-xtradb-cluster-operator-c799c8d46-sm9l2 condition met waiting for pod/percona-xtradb-cluster-operator-c799c8d46-sm9l2 to become Ready.Ok + sleep 3 + create_namespace custom-users-3914 + local namespace=custom-users-3914 + 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= + '[' -n '' ']' ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get MutatingWebhookConfiguration + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ grep chaos-mesh ++ kubectl api-resources ++ 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 + : ++ grep chaos-mesh ++ kubectl get clusterrolebinding ++ 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 ----------------------------------------------------------------------------------- + '[' -n '' ']' + desc 'cleaned up old namespaces custom-users-3914' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces custom-users-3914 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace custom-users-3914 + awk '{print$1}' + xargs kubectl delete ns + egrep -v '^kube-|^default|Terminating|pxc-operator|openshift|^gke-|^gmp-|^NAME' ++ mktemp + kubectl_bin get ns + local LAST_OUT=/tmp/tmp.E2lbNyP8iV ++ mktemp + local LAST_OUT=/tmp/tmp.h2lklJEy2S ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.D1kVP76Bt0 + local exit_status=0 + local LAST_ERR=/tmp/tmp.DF3qMX1z5t + local exit_status=0 ++ 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 custom-users-3914 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.h2lklJEy2S + cat /tmp/tmp.D1kVP76Bt0 + rm /tmp/tmp.h2lklJEy2S /tmp/tmp.D1kVP76Bt0 + return 0 error: resource(s) were provided, but no name was specified + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + for i in '$(seq 0 2)' + set +e + kubectl delete namespace custom-users-3914 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + for i in '$(seq 0 2)' + set +e + kubectl delete namespace custom-users-3914 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + cat /tmp/tmp.E2lbNyP8iV + cat /tmp/tmp.DF3qMX1z5t Error from server (NotFound): namespaces "custom-users-3914" not found + rm /tmp/tmp.E2lbNyP8iV /tmp/tmp.DF3qMX1z5t + return 1 + : + wait_for_delete namespace/custom-users-3914 + local res=namespace/custom-users-3914 + echo -n 'waiting for namespace/custom-users-3914 to be deleted' waiting for namespace/custom-users-3914 to be deleted+ set +o xtrace Error from server (NotFound): namespaces "custom-users-3914" not found + desc 'create namespace custom-users-3914' + set +o xtrace ----------------------------------------------------------------------------------- create namespace custom-users-3914 ----------------------------------------------------------------------------------- + kubectl_bin create namespace custom-users-3914 ++ mktemp + local LAST_OUT=/tmp/tmp.gjAuaOw3hq ++ mktemp + local LAST_ERR=/tmp/tmp.bshlbf2lF5 + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl create namespace custom-users-3914 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.gjAuaOw3hq namespace/custom-users-3914 created + cat /tmp/tmp.bshlbf2lF5 + rm /tmp/tmp.gjAuaOw3hq /tmp/tmp.bshlbf2lF5 + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.6rXpkOMWL2 +++ mktemp ++ local LAST_ERR=/tmp/tmp.eVRXpRSrVn ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.6rXpkOMWL2 ++ cat /tmp/tmp.eVRXpRSrVn ++ rm /tmp/tmp.6rXpkOMWL2 /tmp/tmp.eVRXpRSrVn ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-0538614f-6-cluster5 --namespace=custom-users-3914 ++ mktemp + local LAST_OUT=/tmp/tmp.LOdjWcuif2 ++ mktemp + local LAST_ERR=/tmp/tmp.Gi2aFBkbMs + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-0538614f-6-cluster5 --namespace=custom-users-3914 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.LOdjWcuif2 Context "gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-0538614f-6-cluster5" modified. + cat /tmp/tmp.Gi2aFBkbMs + rm /tmp/tmp.LOdjWcuif2 /tmp/tmp.Gi2aFBkbMs + return 0 + apply_secrets + desc 'create secrets for cloud storages' + set +o xtrace ----------------------------------------------------------------------------------- create secrets for cloud storages ----------------------------------------------------------------------------------- + '[' -z '' ']' + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.oELLGW3XMI ++ mktemp + local LAST_ERR=/tmp/tmp.Uj3EgXH2Qm + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.oELLGW3XMI secret/minio-secret created secret/aws-s3-secret created secret/gcp-cs-secret created secret/azure-secret created + cat /tmp/tmp.Uj3EgXH2Qm + rm /tmp/tmp.oELLGW3XMI /tmp/tmp.Uj3EgXH2Qm + return 0 + desc 'create PXC cluster' + set +o xtrace ----------------------------------------------------------------------------------- create PXC cluster ----------------------------------------------------------------------------------- + cluster=some-name + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/user-secrets.yml ++ mktemp + local LAST_OUT=/tmp/tmp.GguwaFKCVC ++ mktemp + local LAST_ERR=/tmp/tmp.VPaeFQsxS1 + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/user-secrets.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.GguwaFKCVC secret/user-secrets created + cat /tmp/tmp.VPaeFQsxS1 + rm /tmp/tmp.GguwaFKCVC /tmp/tmp.VPaeFQsxS1 + return 0 + spinup_pxc some-name /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/some-name.yml + local cluster=some-name + local config=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/some-name.yml + local size=3 + local sleep=10 + local secretsFile=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/secrets.yml + local pxcClientFile=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/client.yml + local port=3306 + desc 'create first PXC cluster' + set +o xtrace ----------------------------------------------------------------------------------- create first PXC cluster ----------------------------------------------------------------------------------- + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/secrets.yml ++ mktemp + local LAST_OUT=/tmp/tmp.llGkwfjYhM ++ mktemp + local LAST_ERR=/tmp/tmp.ZS14zzjRNV + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/secrets.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.llGkwfjYhM secret/my-cluster-secrets created secret/some-name-ssl created secret/some-name-ssl-internal created + cat /tmp/tmp.ZS14zzjRNV + rm /tmp/tmp.llGkwfjYhM /tmp/tmp.ZS14zzjRNV + return 0 + apply_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/client.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/client.yml + kubectl_bin apply -f - + /usr/bin/sed -e 's#image:.*-init$#image: perconalab/percona-xtradb-cluster-operator:PR-2154-0538614f#' + /usr/bin/sed -e 's#image:.*\/percona-xtradb-cluster:.*$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0#' + /usr/bin/sed -e 's#image:.*-haproxy$#image: perconalab/percona-xtradb-cluster-operator:main-haproxy#' + /usr/bin/sed -e 's#image:.*-logcollector$#image: perconalab/percona-xtradb-cluster-operator:main-logcollector#' + /usr/bin/sed -e 's#image:.*-proxysql$#image: perconalab/percona-xtradb-cluster-operator:main-proxysql#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/client.yml + /usr/bin/sed -e 's#apiVersion: pxc.percona.com/v.*$#apiVersion: pxc.percona.com/v1#' + /usr/bin/sed -e 's#image:.*-pmm$#image: perconalab/pmm-client:dev-latest#' + /usr/bin/sed -e 's#image:.*-backup$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup#' ++ mktemp + local LAST_OUT=/tmp/tmp.YtSD66jVGy + /usr/bin/sed -e s~minio-service.#namespace~minio-service.custom-users-3914~ + /usr/bin/sed -e 's#apply:.*#apply: Never#' + /usr/bin/sed -e 's#image:.*-pxc\([0-9]*.[0-9]*\)\{0,1\}$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0#' ++ mktemp + local LAST_ERR=/tmp/tmp.Auyd0kqG5B + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.YtSD66jVGy deployment.apps/pxc-client created + cat /tmp/tmp.Auyd0kqG5B + rm /tmp/tmp.YtSD66jVGy /tmp/tmp.Auyd0kqG5B + return 0 + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + apply_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/some-name.yml + '[' -z '' ']' + kubectl_bin apply -f - + cat_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/some-name.yml + /usr/bin/sed -e 's#apply:.*#apply: Never#' + /usr/bin/sed -e s~minio-service.#namespace~minio-service.custom-users-3914~ + /usr/bin/sed -e 's#image:.*-pxc\([0-9]*.[0-9]*\)\{0,1\}$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0#' + /usr/bin/sed -e 's#apiVersion: pxc.percona.com/v.*$#apiVersion: pxc.percona.com/v1#' + /usr/bin/sed -e 's#image:.*-proxysql$#image: perconalab/percona-xtradb-cluster-operator:main-proxysql#' + /usr/bin/sed -e 's#image:.*-haproxy$#image: perconalab/percona-xtradb-cluster-operator:main-haproxy#' + /usr/bin/sed -e 's#image:.*-logcollector$#image: perconalab/percona-xtradb-cluster-operator:main-logcollector#' + /usr/bin/sed -e 's#image:.*-backup$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup#' + /usr/bin/sed -e 's#image:.*\/percona-xtradb-cluster:.*$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0#' + /usr/bin/sed -e 's#image:.*-init$#image: perconalab/percona-xtradb-cluster-operator:PR-2154-0538614f#' + /usr/bin/sed -e 's#image:.*-pmm$#image: perconalab/pmm-client:dev-latest#' ++ mktemp + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/some-name.yml + local LAST_OUT=/tmp/tmp.lWHyQmey61 ++ mktemp + local LAST_ERR=/tmp/tmp.L8qXY1tG7F + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.lWHyQmey61 perconaxtradbcluster.pxc.percona.com/some-name created + cat /tmp/tmp.L8qXY1tG7F + rm /tmp/tmp.lWHyQmey61 /tmp/tmp.L8qXY1tG7F + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- ++ get_proxy some-name ++ local target_cluster=some-name +++ kubectl_bin get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.UM8KrHixCp ++++ mktemp +++ local LAST_ERR=/tmp/tmp.cl68CxA10K +++ local exit_status=0 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.UM8KrHixCp +++ cat /tmp/tmp.cl68CxA10K +++ rm /tmp/tmp.UM8KrHixCp /tmp/tmp.cl68CxA10K +++ return 0 ++ [[ true == \t\r\u\e ]] ++ echo some-name-haproxy ++ return + local proxy=some-name-haproxy + kubectl_bin wait --for=condition=Ready pod -l app.kubernetes.io/instance=monitoring,app.kubernetes.io/managed-by=percona-xtradb-cluster-operator --timeout=300s -n custom-users-3914 ++ mktemp + local LAST_OUT=/tmp/tmp.PAx3GzcV2P ++ mktemp + local LAST_ERR=/tmp/tmp.mFGa6Plk9d + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=condition=Ready pod -l app.kubernetes.io/instance=monitoring,app.kubernetes.io/managed-by=percona-xtradb-cluster-operator --timeout=300s -n custom-users-3914 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=condition=Ready pod -l app.kubernetes.io/instance=monitoring,app.kubernetes.io/managed-by=percona-xtradb-cluster-operator --timeout=300s -n custom-users-3914 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=condition=Ready pod -l app.kubernetes.io/instance=monitoring,app.kubernetes.io/managed-by=percona-xtradb-cluster-operator --timeout=300s -n custom-users-3914 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + cat /tmp/tmp.PAx3GzcV2P + cat /tmp/tmp.mFGa6Plk9d error: no matching resources found + rm /tmp/tmp.PAx3GzcV2P /tmp/tmp.mFGa6Plk9d + return 1 + true + wait_for_running some-name-haproxy 1 + local name=some-name-haproxy + let last_pod=0 + : + local max_retry=480 + desc 'wait for running cluster' + set +o xtrace ----------------------------------------------------------------------------------- wait for running cluster ----------------------------------------------------------------------------------- ++ seq 0 0 + for i in '$(seq 0 $last_pod)' + wait_pod some-name-haproxy-0 480 + local pod=some-name-haproxy-0 + local max_retry=480 + local ns= ++ echo some-name-haproxy-0 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/some-name-haproxy-0 condition met waiting for pod/some-name-haproxy-0 to become Ready.Ok + wait_for_running some-name-pxc 3 + local name=some-name-pxc + let last_pod=2 + local max_retry=480 + desc 'wait for running cluster' + set +o xtrace ----------------------------------------------------------------------------------- wait for running cluster ----------------------------------------------------------------------------------- ++ seq 0 2 + for i in '$(seq 0 $last_pod)' + wait_pod some-name-pxc-0 480 + local pod=some-name-pxc-0 + local max_retry=480 + local ns= ++ echo some-name-pxc-0 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container=pxc + set +o xtrace pod/some-name-pxc-0 condition met waiting for pod/some-name-pxc-0 to become Ready.Ok + for i in '$(seq 0 $last_pod)' + wait_pod some-name-pxc-1 480 + local pod=some-name-pxc-1 + local max_retry=480 + local ns= ++ echo some-name-pxc-1 ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container=pxc + set +o xtrace pod/some-name-pxc-1 condition met waiting for pod/some-name-pxc-1 to become Ready.Ok + for i in '$(seq 0 $last_pod)' + wait_pod some-name-pxc-2 480 + local pod=some-name-pxc-2 + local max_retry=480 + local ns= ++ echo some-name-pxc-2 ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container=pxc + set +o xtrace pod/some-name-pxc-2 condition met waiting for pod/some-name-pxc-2 to become Ready.Ok + sleep 10 ++ kubectl get pxc some-name -o 'jsonpath={.spec.secretsName}' + local secret_name=my-cluster-secrets ++ getSecretData my-cluster-secrets root ++ local secretName=my-cluster-secrets ++ local dataKey=root ++ kubectl_bin get secrets/my-cluster-secrets '--template={{.data.root}}' ++ base64 --decode +++ mktemp ++ local LAST_OUT=/tmp/tmp.6HmZcXZXY4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.9tT9f6TUzn ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get secrets/my-cluster-secrets '--template={{.data.root}}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.6HmZcXZXY4 ++ cat /tmp/tmp.9tT9f6TUzn ++ rm /tmp/tmp.6HmZcXZXY4 /tmp/tmp.9tT9f6TUzn ++ return 0 + local root_pass=root_password + desc 'write data' + set +o xtrace ----------------------------------------------------------------------------------- write data ----------------------------------------------------------------------------------- + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'CREATE DATABASE IF NOT EXISTS myApp; use myApp; CREATE TABLE IF NOT EXISTS myApp (id int PRIMARY KEY) ;' '-h some-name-haproxy -uroot -p'\''root_password'\'' -P3306' + local 'command=CREATE DATABASE IF NOT EXISTS myApp; use myApp; CREATE TABLE IF NOT EXISTS myApp (id int PRIMARY KEY) ;' + local 'uri=-h some-name-haproxy -uroot -p'\''root_password'\'' -P3306' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.s28ZR7prNf +++ mktemp ++ local LAST_ERR=/tmp/tmp.yYEjW07zVD ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.s28ZR7prNf ++ cat /tmp/tmp.yYEjW07zVD ++ rm /tmp/tmp.s28ZR7prNf /tmp/tmp.yYEjW07zVD ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + run_mysql 'INSERT myApp.myApp (id) VALUES (100500)' '-h some-name-haproxy -uroot -p'\''root_password'\'' -P3306' + local 'command=INSERT myApp.myApp (id) VALUES (100500)' + local 'uri=-h some-name-haproxy -uroot -p'\''root_password'\'' -P3306' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xzIQdQWl7j +++ mktemp ++ local LAST_ERR=/tmp/tmp.3H9i74Wzi8 ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.xzIQdQWl7j ++ cat /tmp/tmp.3H9i74Wzi8 ++ rm /tmp/tmp.xzIQdQWl7j /tmp/tmp.3H9i74Wzi8 ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + sleep 30 ++ seq 0 2 + for i in '$(seq 0 $((size - 1)))' + compare_mysql_cmd select-1 'SELECT * from myApp.myApp;' '-h some-name-pxc-0.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local command_id=select-1 + local 'command=SELECT * from myApp.myApp;' + local 'uri=-h some-name-pxc-0.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT * from myApp.myApp;' '-h some-name-pxc-0.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local 'command=SELECT * from myApp.myApp;' + local 'uri=-h some-name-pxc-0.some-name-pxc -uroot -p'\''root_password'\'' -P3306' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.d8iaJG1hXS +++ mktemp ++ local LAST_ERR=/tmp/tmp.fqmjSdV4Pu ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.d8iaJG1hXS ++ cat /tmp/tmp.fqmjSdV4Pu ++ rm /tmp/tmp.d8iaJG1hXS /tmp/tmp.fqmjSdV4Pu ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql /tmp/tmp.QKflK72xJR/select-1.sql + for i in '$(seq 0 $((size - 1)))' + compare_mysql_cmd select-1 'SELECT * from myApp.myApp;' '-h some-name-pxc-1.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local command_id=select-1 + local 'command=SELECT * from myApp.myApp;' + local 'uri=-h some-name-pxc-1.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT * from myApp.myApp;' '-h some-name-pxc-1.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local 'command=SELECT * from myApp.myApp;' + local 'uri=-h some-name-pxc-1.some-name-pxc -uroot -p'\''root_password'\'' -P3306' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.2HXwvQ8umu +++ mktemp ++ local LAST_ERR=/tmp/tmp.dEHhthv2GE ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.2HXwvQ8umu ++ cat /tmp/tmp.dEHhthv2GE ++ rm /tmp/tmp.2HXwvQ8umu /tmp/tmp.dEHhthv2GE ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql /tmp/tmp.QKflK72xJR/select-1.sql + for i in '$(seq 0 $((size - 1)))' + compare_mysql_cmd select-1 'SELECT * from myApp.myApp;' '-h some-name-pxc-2.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local command_id=select-1 + local 'command=SELECT * from myApp.myApp;' + local 'uri=-h some-name-pxc-2.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT * from myApp.myApp;' '-h some-name-pxc-2.some-name-pxc -uroot -p'\''root_password'\'' -P3306' + local 'command=SELECT * from myApp.myApp;' + local 'uri=-h some-name-pxc-2.some-name-pxc -uroot -p'\''root_password'\'' -P3306' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.5Br1W9S9Ia +++ mktemp ++ local LAST_ERR=/tmp/tmp.WlENBeBxHL ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.5Br1W9S9Ia ++ cat /tmp/tmp.WlENBeBxHL ++ rm /tmp/tmp.5Br1W9S9Ia /tmp/tmp.WlENBeBxHL ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql /tmp/tmp.QKflK72xJR/select-1.sql ++ is_keyring_plugin_in_use some-name ++ local cluster=some-name ++ kubectl_bin exec -it some-name-pxc-0 -c pxc -- bash -c 'cat /etc/mysql/node.cnf' ++ egrep -o 'early-plugin-load=keyring_\w+.so' +++ mktemp ++ local LAST_OUT=/tmp/tmp.WqzjggBplG +++ mktemp ++ local LAST_ERR=/tmp/tmp.mGtNL4wzIE ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl exec -it some-name-pxc-0 -c pxc -- bash -c 'cat /etc/mysql/node.cnf' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.WqzjggBplG ++ cat /tmp/tmp.mGtNL4wzIE Unable to use a TTY - input is not a terminal or the right kind of file ++ rm /tmp/tmp.WqzjggBplG /tmp/tmp.mGtNL4wzIE ++ return 0 + '[' '' ']' + desc 'check users created on cluster creation' + set +o xtrace ----------------------------------------------------------------------------------- check users created on cluster creation ----------------------------------------------------------------------------------- + compare_mysql_user '-h some-name-haproxy -uuser-one -ptestpass' + local 'uri=-h some-name-haproxy -uuser-one -ptestpass' + local postfix= ++ echo -h some-name-haproxy -uuser-one -ptestpass ++ sed -e 's/.*-u//; s/ .*//' + local user=user-one + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-one -ptestpass' + local 'command=SHOW GRANTS;' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + local 'uri=-h some-name-haproxy -uuser-one -ptestpass' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.HL25ikOzuZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.i2XyZQwFqO ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.HL25ikOzuZ ++ cat /tmp/tmp.i2XyZQwFqO ++ rm /tmp/tmp.HL25ikOzuZ /tmp/tmp.i2XyZQwFqO ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one.sql /tmp/tmp.QKflK72xJR/user-one.sql + compare_mysql_cmd user-one-1 'SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-one-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.7xW1TA6WF9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.tSqgZDE7LF ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.7xW1TA6WF9 ++ cat /tmp/tmp.tSqgZDE7LF ++ rm /tmp/tmp.7xW1TA6WF9 /tmp/tmp.tSqgZDE7LF ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-one-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-1.sql /tmp/tmp.QKflK72xJR/user-one-1.sql + compare_mysql_cmd user-one-2 'SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-one-2 + local 'command=SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-2.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-2-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.7Bn47AGULz +++ mktemp ++ local LAST_ERR=/tmp/tmp.VE6Bwk724x ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.7Bn47AGULz ++ cat /tmp/tmp.VE6Bwk724x ++ rm /tmp/tmp.7Bn47AGULz /tmp/tmp.VE6Bwk724x ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-one-2.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-2.sql /tmp/tmp.QKflK72xJR/user-one-2.sql + compare_mysql_user '-h some-name-haproxy -uuser-two -ptestpass3' + local 'uri=-h some-name-haproxy -uuser-two -ptestpass3' + local postfix= ++ echo -h some-name-haproxy -uuser-two -ptestpass3 ++ sed -e 's/.*-u//; s/ .*//' + local user=user-two + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-two -ptestpass3' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-two -ptestpass3' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.iCNRTJveRQ +++ mktemp ++ local LAST_ERR=/tmp/tmp.oHMmYI0pgU ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.iCNRTJveRQ ++ cat /tmp/tmp.oHMmYI0pgU ++ rm /tmp/tmp.iCNRTJveRQ /tmp/tmp.oHMmYI0pgU ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two.sql /tmp/tmp.QKflK72xJR/user-two.sql + compare_mysql_cmd user-two-1 'SELECT User, Host from mysql.user WHERE User = '\''user-two'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-two-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-two'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-two'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-two'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.uSl7PpVJng +++ mktemp ++ local LAST_ERR=/tmp/tmp.iw9L1D2yjz ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.uSl7PpVJng ++ cat /tmp/tmp.iw9L1D2yjz ++ rm /tmp/tmp.uSl7PpVJng /tmp/tmp.iw9L1D2yjz ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-two-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two-1.sql /tmp/tmp.QKflK72xJR/user-two-1.sql + generatedUserSecret=some-name-custom-user-secret ++ kubectl_bin get secret some-name-custom-user-secret -o 'jsonpath={.data.user-three}' ++ base64 -d +++ mktemp ++ local LAST_OUT=/tmp/tmp.R6Jsj2ImoR +++ mktemp ++ local LAST_ERR=/tmp/tmp.IljmsNb2Fb ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get secret some-name-custom-user-secret -o 'jsonpath={.data.user-three}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.R6Jsj2ImoR ++ cat /tmp/tmp.IljmsNb2Fb ++ rm /tmp/tmp.R6Jsj2ImoR /tmp/tmp.IljmsNb2Fb ++ return 0 + userThreePass='J>ttzPISSg,ni0u%' + compare_mysql_user '-h some-name-haproxy -uuser-three -p'\''J>ttzPISSg,ni0u%'\''' + local 'uri=-h some-name-haproxy -uuser-three -p'\''J>ttzPISSg,ni0u%'\''' + local postfix= ++ sed -e 's/.*-u//; s/ .*//' ++ echo -h some-name-haproxy -uuser-three '-p'\''J>ttzPISSg,ni0u%'\''' + local user=user-three + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-three.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-three-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-three -p'\''J>ttzPISSg,ni0u%'\''' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-three -p'\''J>ttzPISSg,ni0u%'\''' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.U6yy2N7BiJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.1rO8LdgFJi ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.U6yy2N7BiJ ++ cat /tmp/tmp.1rO8LdgFJi ++ rm /tmp/tmp.U6yy2N7BiJ /tmp/tmp.1rO8LdgFJi ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-three.sql /tmp/tmp.QKflK72xJR/user-three.sql + compare_mysql_cmd user-three-1 'SELECT User, Host from mysql.user WHERE User = '\''user-three'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-three-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-three'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-three-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-three-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-three'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-three'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CKRU04rxOB +++ mktemp ++ local LAST_ERR=/tmp/tmp.vUzEg1DFT2 ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.CKRU04rxOB ++ cat /tmp/tmp.vUzEg1DFT2 ++ rm /tmp/tmp.CKRU04rxOB /tmp/tmp.vUzEg1DFT2 ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-three-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-three-1.sql /tmp/tmp.QKflK72xJR/user-three-1.sql + desc 'check password change' + set +o xtrace ----------------------------------------------------------------------------------- check password change ----------------------------------------------------------------------------------- + kubectl_bin patch secret user-secrets '-p={"stringData":{"pwd-key-one": "new-password"}}' ++ mktemp + local LAST_OUT=/tmp/tmp.EMYA9p6pMU ++ mktemp + local LAST_ERR=/tmp/tmp.qxiq6MGCc5 + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl patch secret user-secrets '-p={"stringData":{"pwd-key-one": "new-password"}}' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.EMYA9p6pMU secret/user-secrets patched + cat /tmp/tmp.qxiq6MGCc5 + rm /tmp/tmp.EMYA9p6pMU /tmp/tmp.qxiq6MGCc5 + return 0 + sleep 15 + compare_mysql_user '-h some-name-haproxy -uuser-one -pnew-password' + local 'uri=-h some-name-haproxy -uuser-one -pnew-password' + local postfix= ++ echo -h some-name-haproxy -uuser-one -pnew-password ++ sed -e 's/.*-u//; s/ .*//' + local user=user-one + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-one -pnew-password' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-one -pnew-password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.hYV2kNjeSw +++ mktemp ++ local LAST_ERR=/tmp/tmp.oaRR8U3tDy ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.hYV2kNjeSw ++ cat /tmp/tmp.oaRR8U3tDy ++ rm /tmp/tmp.hYV2kNjeSw /tmp/tmp.oaRR8U3tDy ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one.sql /tmp/tmp.QKflK72xJR/user-one.sql + compare_mysql_cmd user-one-1 'SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-one-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-one'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ndHZrPhJAV +++ mktemp ++ local LAST_ERR=/tmp/tmp.HKmZU3bZYZ ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.ndHZrPhJAV ++ cat /tmp/tmp.HKmZU3bZYZ ++ rm /tmp/tmp.ndHZrPhJAV /tmp/tmp.HKmZU3bZYZ ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-one-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-1.sql /tmp/tmp.QKflK72xJR/user-one-1.sql + compare_mysql_cmd user-one-2 'SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-one-2 + local 'command=SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-2.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-2-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SHOW GRANTS FOR '\''user-one'\''@'\''127.0.0.1'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.9vZtOerY6T +++ mktemp ++ local LAST_ERR=/tmp/tmp.vKIHPy7YpZ ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.9vZtOerY6T ++ cat /tmp/tmp.vKIHPy7YpZ ++ rm /tmp/tmp.9vZtOerY6T /tmp/tmp.vKIHPy7YpZ ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-one-2.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-2.sql /tmp/tmp.QKflK72xJR/user-one-2.sql + desc 'check removing secretPasswordRef from user generates user password stored in generated custom-user-secret' + set +o xtrace ----------------------------------------------------------------------------------- check removing secretPasswordRef from user generates user password stored in generated custom-user-secret ----------------------------------------------------------------------------------- + kubectl_bin patch pxc some-name --type=json '-p=[{"op": "replace", "path": "/spec/users/1/passwordSecretRef", "value": null}]' ++ mktemp + local LAST_OUT=/tmp/tmp.nTFPkKkwAd ++ mktemp + local LAST_ERR=/tmp/tmp.GyUDvwQrd9 + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl patch pxc some-name --type=json '-p=[{"op": "replace", "path": "/spec/users/1/passwordSecretRef", "value": null}]' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.nTFPkKkwAd perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.GyUDvwQrd9 + rm /tmp/tmp.nTFPkKkwAd /tmp/tmp.GyUDvwQrd9 + return 0 + wait_cluster_consistency some-name 3 3 + local cluster_name=some-name + local cluster_size=3 + local proxy_size=3 + '[' -z 3 ']' + desc 'wait cluster consistency' + set +o xtrace ----------------------------------------------------------------------------------- wait cluster consistency ----------------------------------------------------------------------------------- + local i=0 + local max=300 + sleep 7 + echo -n 'waiting for pxc/some-name to be ready' waiting for pxc/some-name to be ready++ kubectl_bin get pxc some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qH5uZoT3DV +++ mktemp ++ local LAST_ERR=/tmp/tmp.FwaHJ0McgM ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.qH5uZoT3DV ++ cat /tmp/tmp.FwaHJ0McgM ++ rm /tmp/tmp.qH5uZoT3DV /tmp/tmp.FwaHJ0McgM ++ return 0 + [[ ready == \r\e\a\d\y ]] ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.RovXP9zQai +++ mktemp ++ local LAST_ERR=/tmp/tmp.IdGc3ApM6g ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.RovXP9zQai ++ cat /tmp/tmp.IdGc3ApM6g ++ rm /tmp/tmp.RovXP9zQai /tmp/tmp.IdGc3ApM6g ++ return 0 + [[ 3 == \3 ]] +++ get_proxy_engine some-name +++ local cluster_name=some-name ++++ get_proxy some-name ++++ local target_cluster=some-name +++++ kubectl_bin get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.9vbsA93IRX ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.uPICPvlhjT +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in '$(seq 0 2)' +++++ set +e +++++ kubectl get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.9vbsA93IRX +++++ cat /tmp/tmp.uPICPvlhjT +++++ rm /tmp/tmp.9vbsA93IRX /tmp/tmp.uPICPvlhjT +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo some-name-haproxy ++++ return +++ local cluster_proxy=some-name-haproxy +++ echo haproxy ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.haproxy.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CSQe9ushMM +++ mktemp ++ local LAST_ERR=/tmp/tmp.O7vZtgrnVP ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.haproxy.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.CSQe9ushMM ++ cat /tmp/tmp.O7vZtgrnVP ++ rm /tmp/tmp.CSQe9ushMM /tmp/tmp.O7vZtgrnVP ++ return 0 + [[ 3 == \3 ]] + echo ++ kubectl_bin get secret some-name-custom-user-secret -o 'jsonpath={.data.user-two}' ++ base64 -d +++ mktemp ++ local LAST_OUT=/tmp/tmp.BKSWJMNwD9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.OsFHxRMkXn ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get secret some-name-custom-user-secret -o 'jsonpath={.data.user-two}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.BKSWJMNwD9 ++ cat /tmp/tmp.OsFHxRMkXn ++ rm /tmp/tmp.BKSWJMNwD9 /tmp/tmp.OsFHxRMkXn ++ return 0 + userTwoPass='3*j63aP$gbq>[cPGL' + compare_mysql_user '-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' + local 'uri=-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' + local postfix= ++ sed -e 's/.*-u//; s/ .*//' ++ echo -h some-name-haproxy -uuser-two '-p'\''3*j63aP$gbq>[cPGL'\''' + local user=user-two + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.kfT6w1FbF2 +++ mktemp ++ local LAST_ERR=/tmp/tmp.4M44tI3T45 ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.kfT6w1FbF2 ++ cat /tmp/tmp.4M44tI3T45 ++ rm /tmp/tmp.kfT6w1FbF2 /tmp/tmp.4M44tI3T45 ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two.sql /tmp/tmp.QKflK72xJR/user-two.sql + desc 'delete initial users from CR and create a new one' + set +o xtrace ----------------------------------------------------------------------------------- delete initial users from CR and create a new one ----------------------------------------------------------------------------------- + kubectl_bin patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-four", "dbs": ["db1", "db2"], "grants":["SELECT, UPDATE"], "hosts": ["%"] } ]} }' ++ mktemp + local LAST_OUT=/tmp/tmp.IgUnST33oa ++ mktemp + local LAST_ERR=/tmp/tmp.lbQJFLBelF + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-four", "dbs": ["db1", "db2"], "grants":["SELECT, UPDATE"], "hosts": ["%"] } ]} }' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.IgUnST33oa perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.lbQJFLBelF + rm /tmp/tmp.IgUnST33oa /tmp/tmp.lbQJFLBelF + return 0 + wait_cluster_consistency some-name 3 3 + local cluster_name=some-name + local cluster_size=3 + local proxy_size=3 + '[' -z 3 ']' + desc 'wait cluster consistency' + set +o xtrace ----------------------------------------------------------------------------------- wait cluster consistency ----------------------------------------------------------------------------------- + local i=0 + local max=300 + sleep 7 + echo -n 'waiting for pxc/some-name to be ready' waiting for pxc/some-name to be ready++ kubectl_bin get pxc some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.hoGydYDaIc +++ mktemp ++ local LAST_ERR=/tmp/tmp.DbiE8woxzQ ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.hoGydYDaIc ++ cat /tmp/tmp.DbiE8woxzQ ++ rm /tmp/tmp.hoGydYDaIc /tmp/tmp.DbiE8woxzQ ++ return 0 + [[ ready == \r\e\a\d\y ]] ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0bSPEIlzVH +++ mktemp ++ local LAST_ERR=/tmp/tmp.y4InoNxqgS ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.0bSPEIlzVH ++ cat /tmp/tmp.y4InoNxqgS ++ rm /tmp/tmp.0bSPEIlzVH /tmp/tmp.y4InoNxqgS ++ return 0 + [[ 3 == \3 ]] +++ get_proxy_engine some-name +++ local cluster_name=some-name ++++ get_proxy some-name ++++ local target_cluster=some-name +++++ kubectl_bin get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.Xv4MfHPZ53 ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.CpUra9aiON +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in '$(seq 0 2)' +++++ set +e +++++ kubectl get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.Xv4MfHPZ53 +++++ cat /tmp/tmp.CpUra9aiON +++++ rm /tmp/tmp.Xv4MfHPZ53 /tmp/tmp.CpUra9aiON +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo some-name-haproxy ++++ return +++ local cluster_proxy=some-name-haproxy +++ echo haproxy ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.haproxy.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ww7CnxEqrA +++ mktemp ++ local LAST_ERR=/tmp/tmp.8Gzfis5t5f ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.haproxy.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.ww7CnxEqrA ++ cat /tmp/tmp.8Gzfis5t5f ++ rm /tmp/tmp.ww7CnxEqrA /tmp/tmp.8Gzfis5t5f ++ return 0 + [[ 3 == \3 ]] + echo ++ kubectl_bin get secret some-name-custom-user-secret -o 'jsonpath={.data.user-four}' ++ base64 -d +++ mktemp ++ local LAST_OUT=/tmp/tmp.upaW1UamLb +++ mktemp ++ local LAST_ERR=/tmp/tmp.FgocNoBZ9g ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get secret some-name-custom-user-secret -o 'jsonpath={.data.user-four}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.upaW1UamLb ++ cat /tmp/tmp.FgocNoBZ9g ++ rm /tmp/tmp.upaW1UamLb /tmp/tmp.FgocNoBZ9g ++ return 0 + userFourPass='io8W3,@aS},%rh?[)N!' + compare_mysql_user '-h some-name-haproxy -uuser-four -p'\''io8W3,@aS},%rh?[)N!'\''' + local 'uri=-h some-name-haproxy -uuser-four -p'\''io8W3,@aS},%rh?[)N!'\''' + local postfix= ++ echo -h some-name-haproxy -uuser-four '-p'\''io8W3,@aS},%rh?[)N!'\''' ++ sed -e 's/.*-u//; s/ .*//' + local user=user-four + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-four -p'\''io8W3,@aS},%rh?[)N!'\''' + local 'command=SHOW GRANTS;' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + local 'uri=-h some-name-haproxy -uuser-four -p'\''io8W3,@aS},%rh?[)N!'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.q69Lbw16kl +++ mktemp ++ local LAST_ERR=/tmp/tmp.eW7stfLamo ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.q69Lbw16kl ++ cat /tmp/tmp.eW7stfLamo ++ rm /tmp/tmp.q69Lbw16kl /tmp/tmp.eW7stfLamo ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four.sql /tmp/tmp.QKflK72xJR/user-four.sql + compare_mysql_cmd user-four-1 'SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-four-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.jWnv7zDFTT +++ mktemp ++ local LAST_ERR=/tmp/tmp.zRjGWvknEf ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.jWnv7zDFTT ++ cat /tmp/tmp.zRjGWvknEf ++ rm /tmp/tmp.jWnv7zDFTT /tmp/tmp.zRjGWvknEf ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-four-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1.sql /tmp/tmp.QKflK72xJR/user-four-1.sql + compare_mysql_user '-h some-name-haproxy -uuser-one -pnew-password' + local 'uri=-h some-name-haproxy -uuser-one -pnew-password' + local postfix= ++ echo -h some-name-haproxy -uuser-one -pnew-password ++ sed -e 's/.*-u//; s/ .*//' + local user=user-one + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-one -pnew-password' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-one -pnew-password' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.vJd106pI2P +++ mktemp ++ local LAST_ERR=/tmp/tmp.fOjXmr8hsU ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.vJd106pI2P ++ cat /tmp/tmp.fOjXmr8hsU ++ rm /tmp/tmp.vJd106pI2P /tmp/tmp.fOjXmr8hsU ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-one.sql /tmp/tmp.QKflK72xJR/user-one.sql + compare_mysql_user '-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' + local 'uri=-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' + local postfix= ++ echo -h some-name-haproxy -uuser-two '-p'\''3*j63aP$gbq>[cPGL'\''' ++ sed -e 's/.*-u//; s/ .*//' + local user=user-two + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-two -p'\''3*j63aP$gbq>[cPGL'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.B3jSkhA4H8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.PhTCYTsAmm ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.B3jSkhA4H8 ++ cat /tmp/tmp.PhTCYTsAmm ++ rm /tmp/tmp.B3jSkhA4H8 /tmp/tmp.PhTCYTsAmm ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ egrep '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-two.sql /tmp/tmp.QKflK72xJR/user-two.sql + desc 'check user DBs updated' + set +o xtrace ----------------------------------------------------------------------------------- check user DBs updated ----------------------------------------------------------------------------------- + kubectl_bin patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-four", "dbs": ["db1", "db2", "db3"], "grants":["SELECT, UPDATE"], "hosts": ["%"] } ]} }' ++ mktemp + local LAST_OUT=/tmp/tmp.qjsIrMGUEK ++ mktemp + local LAST_ERR=/tmp/tmp.C8F4MVGPkd + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-four", "dbs": ["db1", "db2", "db3"], "grants":["SELECT, UPDATE"], "hosts": ["%"] } ]} }' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.qjsIrMGUEK perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.C8F4MVGPkd + rm /tmp/tmp.qjsIrMGUEK /tmp/tmp.C8F4MVGPkd + return 0 + wait_cluster_consistency some-name 3 3 + local cluster_name=some-name + local cluster_size=3 + local proxy_size=3 + '[' -z 3 ']' + desc 'wait cluster consistency' + set +o xtrace ----------------------------------------------------------------------------------- wait cluster consistency ----------------------------------------------------------------------------------- + local i=0 + local max=300 + sleep 7 + echo -n 'waiting for pxc/some-name to be ready' waiting for pxc/some-name to be ready++ kubectl_bin get pxc some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.J90m91vbQM +++ mktemp ++ local LAST_ERR=/tmp/tmp.ybY0DwLfvT ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.J90m91vbQM ++ cat /tmp/tmp.ybY0DwLfvT ++ rm /tmp/tmp.J90m91vbQM /tmp/tmp.ybY0DwLfvT ++ return 0 + [[ ready == \r\e\a\d\y ]] ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.C8kTzLpLOp +++ mktemp ++ local LAST_ERR=/tmp/tmp.dQVtUO1pSR ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.C8kTzLpLOp ++ cat /tmp/tmp.dQVtUO1pSR ++ rm /tmp/tmp.C8kTzLpLOp /tmp/tmp.dQVtUO1pSR ++ return 0 + [[ 3 == \3 ]] +++ get_proxy_engine some-name +++ local cluster_name=some-name ++++ get_proxy some-name ++++ local target_cluster=some-name +++++ kubectl_bin get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.IFd9IXZsg0 ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.VF67GAfSHK +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in '$(seq 0 2)' +++++ set +e +++++ kubectl get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.IFd9IXZsg0 +++++ cat /tmp/tmp.VF67GAfSHK +++++ rm /tmp/tmp.IFd9IXZsg0 /tmp/tmp.VF67GAfSHK +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo some-name-haproxy ++++ return +++ local cluster_proxy=some-name-haproxy +++ echo haproxy ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.haproxy.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.3lh3z2r5c3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.a87wyUMViB ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.haproxy.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.3lh3z2r5c3 ++ cat /tmp/tmp.a87wyUMViB ++ rm /tmp/tmp.3lh3z2r5c3 /tmp/tmp.a87wyUMViB ++ return 0 + [[ 3 == \3 ]] + echo + compare_mysql_cmd user-four-2 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-four-2 + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-2.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-2-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.AHjLiUamgW +++ mktemp ++ local LAST_ERR=/tmp/tmp.qPIIAWOsyQ ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.AHjLiUamgW ++ cat /tmp/tmp.qPIIAWOsyQ ++ rm /tmp/tmp.AHjLiUamgW /tmp/tmp.qPIIAWOsyQ ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-four-2.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-2.sql /tmp/tmp.QKflK72xJR/user-four-2.sql + desc 'check user grants updated' + set +o xtrace ----------------------------------------------------------------------------------- check user grants updated ----------------------------------------------------------------------------------- + kubectl_bin patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-four", "dbs": ["db1", "db2", "db3"], "grants":["SELECT, UPDATE, DELETE"], "hosts": ["%"] } ]} }' ++ mktemp + local LAST_OUT=/tmp/tmp.xpnVenvEmG ++ mktemp + local LAST_ERR=/tmp/tmp.jbs69b0u7H + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-four", "dbs": ["db1", "db2", "db3"], "grants":["SELECT, UPDATE, DELETE"], "hosts": ["%"] } ]} }' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.xpnVenvEmG perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.jbs69b0u7H + rm /tmp/tmp.xpnVenvEmG /tmp/tmp.jbs69b0u7H + return 0 + wait_cluster_consistency some-name 3 3 + local cluster_name=some-name + local cluster_size=3 + local proxy_size=3 + '[' -z 3 ']' + desc 'wait cluster consistency' + set +o xtrace ----------------------------------------------------------------------------------- wait cluster consistency ----------------------------------------------------------------------------------- + local i=0 + local max=300 + sleep 7 + echo -n 'waiting for pxc/some-name to be ready' waiting for pxc/some-name to be ready++ kubectl_bin get pxc some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0YwrsHqmzM +++ mktemp ++ local LAST_ERR=/tmp/tmp.fCbQG06T7l ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.0YwrsHqmzM ++ cat /tmp/tmp.fCbQG06T7l ++ rm /tmp/tmp.0YwrsHqmzM /tmp/tmp.fCbQG06T7l ++ return 0 + [[ ready == \r\e\a\d\y ]] ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.cr8eUGTmQV +++ mktemp ++ local LAST_ERR=/tmp/tmp.70OzXNKMn4 ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.cr8eUGTmQV ++ cat /tmp/tmp.70OzXNKMn4 ++ rm /tmp/tmp.cr8eUGTmQV /tmp/tmp.70OzXNKMn4 ++ return 0 + [[ 3 == \3 ]] +++ get_proxy_engine some-name +++ local cluster_name=some-name ++++ get_proxy some-name ++++ local target_cluster=some-name +++++ kubectl_bin get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.0q2qROW5LE ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.kq5kWlc9JT +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in '$(seq 0 2)' +++++ set +e +++++ kubectl get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.0q2qROW5LE +++++ cat /tmp/tmp.kq5kWlc9JT +++++ rm /tmp/tmp.0q2qROW5LE /tmp/tmp.kq5kWlc9JT +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo some-name-haproxy ++++ return +++ local cluster_proxy=some-name-haproxy +++ echo haproxy ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.haproxy.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.drAz7abE1h +++ mktemp ++ local LAST_ERR=/tmp/tmp.KzUwkxjW04 ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.haproxy.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.drAz7abE1h ++ cat /tmp/tmp.KzUwkxjW04 ++ rm /tmp/tmp.drAz7abE1h /tmp/tmp.KzUwkxjW04 ++ return 0 + [[ 3 == \3 ]] + echo + compare_mysql_cmd user-four-3 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-four-3 + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-3.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-3-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.sq7BMMlPEC +++ mktemp ++ local LAST_ERR=/tmp/tmp.Fxt19lATux ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.sq7BMMlPEC ++ cat /tmp/tmp.Fxt19lATux ++ rm /tmp/tmp.sq7BMMlPEC /tmp/tmp.Fxt19lATux ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-four-3.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-3.sql /tmp/tmp.QKflK72xJR/user-four-3.sql + desc 'check user recreated after deleted from DB' + set +o xtrace ----------------------------------------------------------------------------------- check user recreated after deleted from DB ----------------------------------------------------------------------------------- + run_mysql 'DROP USER '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=DROP USER '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CXf32j93dX +++ mktemp ++ local LAST_ERR=/tmp/tmp.0477YZQ4NE ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.CXf32j93dX ++ cat /tmp/tmp.0477YZQ4NE ++ rm /tmp/tmp.CXf32j93dX /tmp/tmp.0477YZQ4NE ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + sleep 15 + compare_mysql_cmd user-four-1 'SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-four-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6H3dCzHXSE +++ mktemp ++ local LAST_ERR=/tmp/tmp.isZ8JaKLjG ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.6H3dCzHXSE ++ cat /tmp/tmp.isZ8JaKLjG ++ rm /tmp/tmp.6H3dCzHXSE /tmp/tmp.isZ8JaKLjG ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-four-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1.sql /tmp/tmp.QKflK72xJR/user-four-1.sql + compare_mysql_cmd user-four-3 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-four-3 + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-3.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-3-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0QAXY66CA7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.ynYJl5xQiF ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.0QAXY66CA7 ++ cat /tmp/tmp.ynYJl5xQiF ++ rm /tmp/tmp.0QAXY66CA7 /tmp/tmp.ynYJl5xQiF ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-four-3.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-3.sql /tmp/tmp.QKflK72xJR/user-four-3.sql + desc 'check user update from DB' + set +o xtrace ----------------------------------------------------------------------------------- check user update from DB ----------------------------------------------------------------------------------- + run_mysql 'GRANT INSERT ON db1.* TO '\''user-four'\''@'\''%'\''' '-h some-name-haproxy -uroot -proot_password' + local 'command=GRANT INSERT ON db1.* TO '\''user-four'\''@'\''%'\''' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.pPHrBh4GYW +++ mktemp ++ local LAST_ERR=/tmp/tmp.6bJy2VTPQp ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.pPHrBh4GYW ++ cat /tmp/tmp.6bJy2VTPQp ++ rm /tmp/tmp.pPHrBh4GYW /tmp/tmp.6bJy2VTPQp ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ egrep '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + sleep 15 + compare_mysql_cmd user-four-1 'SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-four-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-four'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.N5agzsBaHN +++ mktemp ++ local LAST_ERR=/tmp/tmp.DNTRkEbxTn ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.N5agzsBaHN ++ cat /tmp/tmp.DNTRkEbxTn ++ rm /tmp/tmp.N5agzsBaHN /tmp/tmp.DNTRkEbxTn ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-gk6wx ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-four-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-1.sql /tmp/tmp.QKflK72xJR/user-four-1.sql + compare_mysql_cmd user-four-4 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-four-4 + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-4.sql + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + [[ -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-4-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SHOW GRANTS FOR '\''user-four'\''@'\''%'\'';' + local 'uri=-h some-name-haproxy -uroot -proot_password' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.pdyAyyYAvR +++ mktemp ++ local LAST_ERR=/tmp/tmp.81tUi3MQet ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.pdyAyyYAvR ++ cat /tmp/tmp.81tUi3MQet ++ rm /tmp/tmp.pdyAyyYAvR /tmp/tmp.81tUi3MQet ++ return 0 + client_pod=pxc-client-59944c5bbf-gk6wx + wait_pod pxc-client-59944c5bbf-gk6wx + local pod=pxc-client-59944c5bbf-gk6wx + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-gk6wx ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ egrep '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-gk6wx condition met waiting for pod/pxc-client-59944c5bbf-gk6wx to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.QKflK72xJR/user-four-4.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-four-4.sql /tmp/tmp.QKflK72xJR/user-four-4.sql + desc 'check new user created after updated user name via CR' + set +o xtrace ----------------------------------------------------------------------------------- check new user created after updated user name via CR ----------------------------------------------------------------------------------- + kubectl_bin patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-five", "dbs": ["db1", "db2", "db3"], "grants":["SELECT, UPDATE, DELETE"], "hosts": ["%"] } ]} }' ++ mktemp + local LAST_OUT=/tmp/tmp.R1dNmq7dho ++ mktemp + local LAST_ERR=/tmp/tmp.d6cZCU9Yty + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl patch pxc some-name --type=merge '-p={ "spec": {"users":[ { "name":"user-five", "dbs": ["db1", "db2", "db3"], "grants":["SELECT, UPDATE, DELETE"], "hosts": ["%"] } ]} }' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.R1dNmq7dho perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.d6cZCU9Yty + rm /tmp/tmp.R1dNmq7dho /tmp/tmp.d6cZCU9Yty + return 0 + wait_cluster_consistency some-name 3 3 + local cluster_name=some-name + local cluster_size=3 + local proxy_size=3 + '[' -z 3 ']' + desc 'wait cluster consistency' + set +o xtrace ----------------------------------------------------------------------------------- wait cluster consistency ----------------------------------------------------------------------------------- + local i=0 + local max=300 + sleep 7 + echo -n 'waiting for pxc/some-name to be ready' waiting for pxc/some-name to be ready++ kubectl_bin get pxc some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.9Wh7WwX4fK +++ mktemp ++ local LAST_ERR=/tmp/tmp.kvrxy8OFm2 ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.9Wh7WwX4fK ++ cat /tmp/tmp.kvrxy8OFm2 ++ rm /tmp/tmp.9Wh7WwX4fK /tmp/tmp.kvrxy8OFm2 ++ return 0 + [[ ready == \r\e\a\d\y ]] ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Z6jnTWFTxv +++ mktemp ++ local LAST_ERR=/tmp/tmp.Wf8Vcai6Vi ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.Z6jnTWFTxv ++ cat /tmp/tmp.Wf8Vcai6Vi ++ rm /tmp/tmp.Z6jnTWFTxv /tmp/tmp.Wf8Vcai6Vi ++ return 0 + [[ 3 == \3 ]] +++ get_proxy_engine some-name +++ local cluster_name=some-name ++++ get_proxy some-name ++++ local target_cluster=some-name +++++ kubectl_bin get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.s2IbRvTFpB ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.1RI2y6hUJ9 +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in '$(seq 0 2)' +++++ set +e +++++ kubectl get pxc some-name -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.s2IbRvTFpB +++++ cat /tmp/tmp.1RI2y6hUJ9 +++++ rm /tmp/tmp.s2IbRvTFpB /tmp/tmp.1RI2y6hUJ9 +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo some-name-haproxy ++++ return +++ local cluster_proxy=some-name-haproxy +++ echo haproxy ++ kubectl_bin get pxc some-name -o 'jsonpath={.status.haproxy.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bJrgXiIOsz +++ mktemp ++ local LAST_ERR=/tmp/tmp.QFmUq47dJ0 ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pxc some-name -o 'jsonpath={.status.haproxy.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.bJrgXiIOsz ++ cat /tmp/tmp.QFmUq47dJ0 ++ rm /tmp/tmp.bJrgXiIOsz /tmp/tmp.QFmUq47dJ0 ++ return 0 + [[ 3 == \3 ]] + echo ++ kubectl_bin get secret some-name-custom-user-secret -o 'jsonpath={.data.user-five}' +++ mktemp ++ base64 -d ++ local LAST_OUT=/tmp/tmp.6ZpcelvLv8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.IGJppgKomn ++ local exit_status=0 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get secret some-name-custom-user-secret -o 'jsonpath={.data.user-five}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.6ZpcelvLv8 ++ cat /tmp/tmp.IGJppgKomn ++ rm /tmp/tmp.6ZpcelvLv8 /tmp/tmp.IGJppgKomn ++ return 0 + userFivePass='M]O=W$lVD&V&