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-10113 + local ns=custom-users-10113 + '[' -n pxc-operator ']' + kubectl get pxc --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch pxc -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' + kubectl patch pxc -n custom-users-9373 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.2VI1rB4AIv ++ mktemp + local LAST_ERR=/tmp/tmp.BwIVQMzBLN + 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.2VI1rB4AIv perconaxtradbcluster.pxc.percona.com "some-name" deleted from custom-users-9373 namespace + cat /tmp/tmp.BwIVQMzBLN + rm /tmp/tmp.2VI1rB4AIv /tmp/tmp.BwIVQMzBLN + return 0 + kubectl_bin delete pxc-backup --all --all-namespaces ++ mktemp + local LAST_OUT=/tmp/tmp.OSxSWiItcr ++ mktemp + local LAST_ERR=/tmp/tmp.HgE5MWoCI5 + 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.OSxSWiItcr No resources found + cat /tmp/tmp.HgE5MWoCI5 + rm /tmp/tmp.OSxSWiItcr /tmp/tmp.HgE5MWoCI5 + return 0 + kubectl_bin delete pxc-restore --all --all-namespaces ++ mktemp + local LAST_OUT=/tmp/tmp.HCmgYwiwkG ++ mktemp + local LAST_ERR=/tmp/tmp.faQdbShIcR + 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.HCmgYwiwkG No resources found + cat /tmp/tmp.faQdbShIcR + rm /tmp/tmp.HCmgYwiwkG /tmp/tmp.faQdbShIcR + return 0 + create_namespace pxc-operator + local namespace=pxc-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ sed s/NAMESPACE// ++ awk '-F ' '{print $2}' ++ tail -n1 ++ helm list --all-namespaces --filter chaos-mesh + local chaos_mesh_ns= + '[' -n '' ']' ++ grep chaos-mesh ++ kubectl get MutatingWebhookConfiguration ++ awk '{print $1}' + 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 + : ++ grep validate-auth ++ awk '{print $1}' ++ kubectl get ValidatingWebhookConfiguration + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl get clusterrolebinding + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ kubectl get clusterrole ++ 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 pxc-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces pxc-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace pxc-operator ++ mktemp + local LAST_OUT=/tmp/tmp.TliWmzmndv + xargs kubectl delete ns + kubectl_bin get ns ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.xTW6GuzarI ++ mktemp + local LAST_ERR=/tmp/tmp.YZdzzOsXPX + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl get ns + grep -E -v '^kube-|^default|Terminating|pxc-operator|openshift|^gke-|^gmp-|^NAME' + local LAST_ERR=/tmp/tmp.1pSoToo76f + local exit_status=0 + awk '{print$1}' ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete namespace pxc-operator + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.xTW6GuzarI + cat /tmp/tmp.YZdzzOsXPX + rm /tmp/tmp.xTW6GuzarI /tmp/tmp.YZdzzOsXPX + return 0 namespace "custom-users-9373" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.TliWmzmndv namespace "pxc-operator" deleted + cat /tmp/tmp.1pSoToo76f + rm /tmp/tmp.TliWmzmndv /tmp/tmp.1pSoToo76f + 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.dDG0XLgNLf ++ mktemp + local LAST_ERR=/tmp/tmp.QqqvKyLHND + 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.dDG0XLgNLf namespace/pxc-operator created + cat /tmp/tmp.QqqvKyLHND + rm /tmp/tmp.dDG0XLgNLf /tmp/tmp.QqqvKyLHND + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.TXBVvT0qko +++ mktemp ++ local LAST_ERR=/tmp/tmp.eZt4tNIjR9 ++ 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.TXBVvT0qko ++ cat /tmp/tmp.eZt4tNIjR9 ++ rm /tmp/tmp.TXBVvT0qko /tmp/tmp.eZt4tNIjR9 ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-7a623b10-7-cluster4 --namespace=pxc-operator ++ mktemp + local LAST_OUT=/tmp/tmp.BnXlLGLEF0 ++ mktemp + local LAST_ERR=/tmp/tmp.UkoTLW3nWQ + 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-7a623b10-7-cluster4 --namespace=pxc-operator + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.BnXlLGLEF0 Context "gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-7a623b10-7-cluster4" modified. + cat /tmp/tmp.UkoTLW3nWQ + rm /tmp/tmp.BnXlLGLEF0 /tmp/tmp.UkoTLW3nWQ + 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.9zLtwiBhYD ++ mktemp + local LAST_ERR=/tmp/tmp.V3dzfRbqa1 + 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.9zLtwiBhYD 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.V3dzfRbqa1 + rm /tmp/tmp.9zLtwiBhYD /tmp/tmp.V3dzfRbqa1 + return 0 + '[' -n pxc-operator ']' + apply_rbac cw-rbac + local operator_namespace=pxc-operator + local rbac=cw-rbac + sed -e 's^namespace: .*^namespace: pxc-operator^' + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/deploy/cw-rbac.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.v9XRiLT3Si ++ mktemp + local LAST_ERR=/tmp/tmp.52mqSy5xn2 + 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.v9XRiLT3Si 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.52mqSy5xn2 + rm /tmp/tmp.v9XRiLT3Si /tmp/tmp.52mqSy5xn2 + return 0 + kubectl_bin apply -f - + yq eval '(select(.kind == "Deployment").spec.template.spec.containers[] | select(.name == "percona-xtradb-cluster-operator").env[] | select(.name == "DISABLE_TELEMETRY").value) = "true"' - + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/deploy/cw-operator.yaml + yq eval '(select(.kind == "Deployment").spec.template.spec.containers[] | select(.name == "percona-xtradb-cluster-operator").env[] | select(.name == "LOG_LEVEL").value) = "VERBOSE"' - ++ mktemp + local LAST_OUT=/tmp/tmp.8aj9Mt0QWU ++ mktemp + local LAST_ERR=/tmp/tmp.NiFKCXBuCA + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + sed -e 's^image: .*^image: perconalab/percona-xtradb-cluster-operator:PR-2154-7a623b10^' + sed -e 's^failureThreshold: .*^failureThreshold: 10^' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.8aj9Mt0QWU deployment.apps/percona-xtradb-cluster-operator created service/percona-xtradb-cluster-operator created + cat /tmp/tmp.NiFKCXBuCA + rm /tmp/tmp.8aj9Mt0QWU /tmp/tmp.NiFKCXBuCA + 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.ygrUg8XG0z ++ mktemp + local LAST_ERR=/tmp/tmp.IbtDw9TANZ + 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.ygrUg8XG0z pod/percona-xtradb-cluster-operator-6cf85965f9-h2qnb condition met + cat /tmp/tmp.IbtDw9TANZ + rm /tmp/tmp.ygrUg8XG0z /tmp/tmp.IbtDw9TANZ + 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.cR45WNAKfm +++ mktemp ++ local LAST_ERR=/tmp/tmp.dReb4S6txA ++ 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.cR45WNAKfm ++ cat /tmp/tmp.dReb4S6txA ++ rm /tmp/tmp.cR45WNAKfm /tmp/tmp.dReb4S6txA ++ return 0 + wait_pod percona-xtradb-cluster-operator-6cf85965f9-h2qnb 480 pxc-operator + local pod=percona-xtradb-cluster-operator-6cf85965f9-h2qnb + local max_retry=480 + local ns=pxc-operator ++ echo percona-xtradb-cluster-operator-6cf85965f9-h2qnb ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/percona-xtradb-cluster-operator-6cf85965f9-h2qnb condition met waiting for pod/percona-xtradb-cluster-operator-6cf85965f9-h2qnb to become Ready.Ok + sleep 3 + create_namespace custom-users-10113 + local namespace=custom-users-10113 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// ++ tail -n1 ++ helm list --all-namespaces --filter chaos-mesh + local chaos_mesh_ns= + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl api-resources ++ 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 + : ++ awk '{print $1}' ++ kubectl get clusterrolebinding ++ grep chaos-mesh + 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-10113' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces custom-users-10113 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace custom-users-10113 ++ mktemp + grep -E -v '^kube-|^default|Terminating|pxc-operator|openshift|^gke-|^gmp-|^NAME' + kubectl_bin get ns ++ mktemp + local LAST_OUT=/tmp/tmp.RNTErGu2bO ++ mktemp + local LAST_ERR=/tmp/tmp.6iqoV0V1NT + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl get ns + local LAST_OUT=/tmp/tmp.TTYWpyMn1d ++ mktemp + awk '{print$1}' + xargs kubectl delete ns + local LAST_ERR=/tmp/tmp.rR8D9nDT0N + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete namespace custom-users-10113 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.RNTErGu2bO + cat /tmp/tmp.6iqoV0V1NT + rm /tmp/tmp.RNTErGu2bO /tmp/tmp.6iqoV0V1NT + return 0 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + for i in '$(seq 0 2)' + set +e + kubectl delete namespace custom-users-10113 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-10113 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + cat /tmp/tmp.TTYWpyMn1d + cat /tmp/tmp.rR8D9nDT0N Error from server (NotFound): namespaces "custom-users-10113" not found + rm /tmp/tmp.TTYWpyMn1d /tmp/tmp.rR8D9nDT0N + return 1 + : + wait_for_delete namespace/custom-users-10113 + local res=namespace/custom-users-10113 + echo -n 'waiting for namespace/custom-users-10113 to be deleted' waiting for namespace/custom-users-10113 to be deleted+ set +o xtrace Error from server (NotFound): namespaces "custom-users-10113" not found + desc 'create namespace custom-users-10113' + set +o xtrace ----------------------------------------------------------------------------------- create namespace custom-users-10113 ----------------------------------------------------------------------------------- + kubectl_bin create namespace custom-users-10113 ++ mktemp + local LAST_OUT=/tmp/tmp.j60J3RG09x ++ mktemp + local LAST_ERR=/tmp/tmp.0YTl6ouHfg + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl create namespace custom-users-10113 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.j60J3RG09x namespace/custom-users-10113 created + cat /tmp/tmp.0YTl6ouHfg + rm /tmp/tmp.j60J3RG09x /tmp/tmp.0YTl6ouHfg + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.KqtD4muNuI +++ mktemp ++ local LAST_ERR=/tmp/tmp.vzDL24ilzE ++ 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.KqtD4muNuI ++ cat /tmp/tmp.vzDL24ilzE ++ rm /tmp/tmp.KqtD4muNuI /tmp/tmp.vzDL24ilzE ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-7a623b10-7-cluster4 --namespace=custom-users-10113 ++ mktemp + local LAST_OUT=/tmp/tmp.sqY4xfUMa3 ++ mktemp + local LAST_ERR=/tmp/tmp.Z6upJ56F2W + 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-7a623b10-7-cluster4 --namespace=custom-users-10113 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.sqY4xfUMa3 Context "gke_cloud-dev-112233_us-central1-a_jen-pxc-2154-7a623b10-7-cluster4" modified. + cat /tmp/tmp.Z6upJ56F2W + rm /tmp/tmp.sqY4xfUMa3 /tmp/tmp.Z6upJ56F2W + 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.cJfqgYiRWX ++ mktemp + local LAST_ERR=/tmp/tmp.brO3nsvFmS + 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.cJfqgYiRWX secret/minio-secret created secret/aws-s3-secret created secret/gcp-cs-secret created secret/azure-secret created + cat /tmp/tmp.brO3nsvFmS + rm /tmp/tmp.cJfqgYiRWX /tmp/tmp.brO3nsvFmS + 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.JERICm6O3v ++ mktemp + local LAST_ERR=/tmp/tmp.2agy3KkTa8 + 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.JERICm6O3v secret/user-secrets created + cat /tmp/tmp.2agy3KkTa8 + rm /tmp/tmp.JERICm6O3v /tmp/tmp.2agy3KkTa8 + 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.H52brrpDFM ++ mktemp + local LAST_ERR=/tmp/tmp.GOR76To3wn + 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.H52brrpDFM secret/my-cluster-secrets created secret/some-name-ssl created secret/some-name-ssl-internal created + cat /tmp/tmp.GOR76To3wn + rm /tmp/tmp.H52brrpDFM /tmp/tmp.GOR76To3wn + return 0 + apply_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/client.yml + '[' -z '' ']' + kubectl_bin apply -f - + cat_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/client.yml + /usr/bin/sed -e s~minio-service.#namespace~minio-service.custom-users-10113~ ++ mktemp + /usr/bin/sed -e 's#image:.*-logcollector$#image: perconalab/percona-xtradb-cluster-operator:main-logcollector#' + /usr/bin/sed -e 's#image:.*-haproxy$#image: perconalab/percona-xtradb-cluster-operator:main-haproxy#' + /usr/bin/sed -e 's#image:.*-proxysql$#image: perconalab/percona-xtradb-cluster-operator:main-proxysql#' + local LAST_OUT=/tmp/tmp.Kg1idmTqfV + /usr/bin/sed -e 's#apiVersion: pxc.percona.com/v.*$#apiVersion: pxc.percona.com/v1#' + /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#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/conf/client.yml + /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-7a623b10#' ++ mktemp + local LAST_ERR=/tmp/tmp.SaRsQc1gSB + local exit_status=0 + /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#' ++ 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.Kg1idmTqfV deployment.apps/pxc-client created + cat /tmp/tmp.SaRsQc1gSB + rm /tmp/tmp.Kg1idmTqfV /tmp/tmp.SaRsQc1gSB + 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 ++ mktemp + /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#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-7a623b10#' + /usr/bin/sed -e 's#image:.*-pmm$#image: perconalab/pmm-client:dev-latest#' + local LAST_OUT=/tmp/tmp.s2mnvx2zdH + /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~minio-service.#namespace~minio-service.custom-users-10113~ ++ mktemp + local LAST_ERR=/tmp/tmp.nMDcoh8abj + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/conf/some-name.yml + /usr/bin/sed -e 's#apiVersion: pxc.percona.com/v.*$#apiVersion: pxc.percona.com/v1#' + /usr/bin/sed -e 's#image:.*-backup$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup#' + /usr/bin/sed -e 's#image:.*-proxysql$#image: perconalab/percona-xtradb-cluster-operator:main-proxysql#' + /usr/bin/sed -e 's#apply:.*#apply: Never#' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.s2mnvx2zdH perconaxtradbcluster.pxc.percona.com/some-name created + cat /tmp/tmp.nMDcoh8abj + rm /tmp/tmp.s2mnvx2zdH /tmp/tmp.nMDcoh8abj + 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.yEpN9cbwyu ++++ mktemp +++ local LAST_ERR=/tmp/tmp.tTPMVNe7c1 +++ 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.yEpN9cbwyu +++ cat /tmp/tmp.tTPMVNe7c1 +++ rm /tmp/tmp.yEpN9cbwyu /tmp/tmp.tTPMVNe7c1 +++ 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-10113 ++ mktemp + local LAST_OUT=/tmp/tmp.EUi48rcEbI ++ mktemp + local LAST_ERR=/tmp/tmp.DKqwh3gna3 + 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-10113 + 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-10113 + 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-10113 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + cat /tmp/tmp.EUi48rcEbI + cat /tmp/tmp.DKqwh3gna3 error: no matching resources found + rm /tmp/tmp.EUi48rcEbI /tmp/tmp.DKqwh3gna3 + 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/' ++ grep -E '^(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= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' ++ echo some-name-pxc-0 + 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 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + 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= ++ grep -E '^(pxc|proxysql)$' ++ echo some-name-pxc-2 ++ /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.PsFPutPvSS +++ mktemp ++ local LAST_ERR=/tmp/tmp.9CjjVVokEA ++ 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.PsFPutPvSS ++ cat /tmp/tmp.9CjjVVokEA ++ rm /tmp/tmp.PsFPutPvSS /tmp/tmp.9CjjVVokEA ++ 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.9EtFz6VJjL +++ mktemp ++ local LAST_ERR=/tmp/tmp.68Yvi4xvAX ++ 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.9EtFz6VJjL ++ cat /tmp/tmp.68Yvi4xvAX ++ rm /tmp/tmp.9EtFz6VJjL /tmp/tmp.68Yvi4xvAX ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.pCI6MC9DQZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.KkUuonhxmp ++ 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.pCI6MC9DQZ ++ cat /tmp/tmp.KkUuonhxmp ++ rm /tmp/tmp.pCI6MC9DQZ /tmp/tmp.KkUuonhxmp ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.xp5Jms8aIi +++ mktemp ++ local LAST_ERR=/tmp/tmp.nzaXiV9BRX ++ 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.xp5Jms8aIi ++ cat /tmp/tmp.nzaXiV9BRX ++ rm /tmp/tmp.xp5Jms8aIi /tmp/tmp.nzaXiV9BRX ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-9kqtt + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql /tmp/tmp.Y1MYnHjeVS/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.uoxgelFVhs +++ mktemp ++ local LAST_ERR=/tmp/tmp.u3JzYOjrZh ++ 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.uoxgelFVhs ++ cat /tmp/tmp.u3JzYOjrZh ++ rm /tmp/tmp.uoxgelFVhs /tmp/tmp.u3JzYOjrZh ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql /tmp/tmp.Y1MYnHjeVS/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.boKvdeJF2S +++ mktemp ++ local LAST_ERR=/tmp/tmp.m5X8StMaMS ++ 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.boKvdeJF2S ++ cat /tmp/tmp.m5X8StMaMS ++ rm /tmp/tmp.boKvdeJF2S /tmp/tmp.m5X8StMaMS ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/select-1.sql /tmp/tmp.Y1MYnHjeVS/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' +++ mktemp ++ local LAST_OUT=/tmp/tmp.KgCmjnWCg6 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Gayqa2IqeD ++ local exit_status=0 ++ grep -E -o 'early-plugin-load=keyring_\w+.so' +++ 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.KgCmjnWCg6 ++ cat /tmp/tmp.Gayqa2IqeD Unable to use a TTY - input is not a terminal or the right kind of file ++ rm /tmp/tmp.KgCmjnWCg6 /tmp/tmp.Gayqa2IqeD ++ 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;' + 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 + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' ++ local LAST_OUT=/tmp/tmp.r8CXtvUDRB +++ mktemp ++ local LAST_ERR=/tmp/tmp.iBrGUzqQni ++ 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.r8CXtvUDRB ++ cat /tmp/tmp.iBrGUzqQni ++ rm /tmp/tmp.r8CXtvUDRB /tmp/tmp.iBrGUzqQni ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-9kqtt + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/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.FQ7LdypTLv +++ mktemp ++ local LAST_ERR=/tmp/tmp.Y1uj76RS6X ++ 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.FQ7LdypTLv ++ cat /tmp/tmp.Y1uj76RS6X ++ rm /tmp/tmp.FQ7LdypTLv /tmp/tmp.Y1uj76RS6X ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.FKjhh2PUXJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.oGxj7cBiNb ++ 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.FKjhh2PUXJ ++ cat /tmp/tmp.oGxj7cBiNb ++ rm /tmp/tmp.FKjhh2PUXJ /tmp/tmp.oGxj7cBiNb ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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 ]] + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-two -ptestpass3' + 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.NJNMmVNkbJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.ohGK7AcIrP ++ 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.NJNMmVNkbJ ++ cat /tmp/tmp.ohGK7AcIrP ++ rm /tmp/tmp.NJNMmVNkbJ /tmp/tmp.ohGK7AcIrP ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/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.rXtP1guPUJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.GgYAYinxRa ++ 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.rXtP1guPUJ ++ cat /tmp/tmp.GgYAYinxRa ++ rm /tmp/tmp.rXtP1guPUJ /tmp/tmp.GgYAYinxRa ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.WlIKKLkIBx +++ mktemp ++ local LAST_ERR=/tmp/tmp.nXJLGN0Kwa ++ 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.WlIKKLkIBx ++ cat /tmp/tmp.nXJLGN0Kwa ++ rm /tmp/tmp.WlIKKLkIBx /tmp/tmp.nXJLGN0Kwa ++ return 0 + userThreePass='#@g?S[wNDxfvwizL' + compare_mysql_user '-h some-name-haproxy -uuser-three -p'\''#@g?S[wNDxfvwizL'\''' + local 'uri=-h some-name-haproxy -uuser-three -p'\''#@g?S[wNDxfvwizL'\''' + local postfix= ++ sed -e 's/.*-u//; s/ .*//' ++ echo -h some-name-haproxy -uuser-three '-p'\''#@g?S[wNDxfvwizL'\''' + 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 ]] + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-three -p'\''#@g?S[wNDxfvwizL'\''' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-three -p'\''#@g?S[wNDxfvwizL'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.JvUXD6KI2f +++ mktemp ++ local LAST_ERR=/tmp/tmp.X1AgFy1UpC ++ 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.JvUXD6KI2f ++ cat /tmp/tmp.X1AgFy1UpC ++ rm /tmp/tmp.JvUXD6KI2f /tmp/tmp.X1AgFy1UpC ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/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.1k7NtsscEQ +++ mktemp ++ local LAST_ERR=/tmp/tmp.gbRFaI7s6I ++ 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.1k7NtsscEQ ++ cat /tmp/tmp.gbRFaI7s6I ++ rm /tmp/tmp.1k7NtsscEQ /tmp/tmp.gbRFaI7s6I ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.NDkgp58M9i ++ mktemp + local LAST_ERR=/tmp/tmp.gFlRFvd9jl + 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.NDkgp58M9i secret/user-secrets patched + cat /tmp/tmp.gFlRFvd9jl + rm /tmp/tmp.NDkgp58M9i /tmp/tmp.gFlRFvd9jl + 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 ]] + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-one -pnew-password' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + 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.RT4SMDKlHu +++ mktemp ++ local LAST_ERR=/tmp/tmp.3qmgvS9uDN ++ 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.RT4SMDKlHu ++ cat /tmp/tmp.3qmgvS9uDN ++ rm /tmp/tmp.RT4SMDKlHu /tmp/tmp.3qmgvS9uDN ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/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.jmCc1ZCbto +++ mktemp ++ local LAST_ERR=/tmp/tmp.di7abj5SIm ++ 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.jmCc1ZCbto ++ cat /tmp/tmp.di7abj5SIm ++ rm /tmp/tmp.jmCc1ZCbto /tmp/tmp.di7abj5SIm ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.wuelKYtp76 +++ mktemp ++ local LAST_ERR=/tmp/tmp.kiPn2nAAhG ++ 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.wuelKYtp76 ++ cat /tmp/tmp.kiPn2nAAhG ++ rm /tmp/tmp.wuelKYtp76 /tmp/tmp.kiPn2nAAhG ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.xmhB2hcaEV ++ mktemp + local LAST_ERR=/tmp/tmp.kK5WdLYiDj + 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.xmhB2hcaEV perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.kK5WdLYiDj + rm /tmp/tmp.xmhB2hcaEV /tmp/tmp.kK5WdLYiDj + 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.noS1dGW38t +++ mktemp ++ local LAST_ERR=/tmp/tmp.RawftqeDab ++ 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.noS1dGW38t ++ cat /tmp/tmp.RawftqeDab ++ rm /tmp/tmp.noS1dGW38t /tmp/tmp.RawftqeDab ++ 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.P7S2EP2h73 +++ mktemp ++ local LAST_ERR=/tmp/tmp.4Rf573FPWZ ++ 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.P7S2EP2h73 ++ cat /tmp/tmp.4Rf573FPWZ ++ rm /tmp/tmp.P7S2EP2h73 /tmp/tmp.4Rf573FPWZ ++ 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.JTfa23aLJL ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.negiOcg13m +++++ 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.JTfa23aLJL +++++ cat /tmp/tmp.negiOcg13m +++++ rm /tmp/tmp.JTfa23aLJL /tmp/tmp.negiOcg13m +++++ 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.Xa5lCklYmb +++ mktemp ++ local LAST_ERR=/tmp/tmp.0e8gOnDHVS ++ 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.Xa5lCklYmb ++ cat /tmp/tmp.0e8gOnDHVS ++ rm /tmp/tmp.Xa5lCklYmb /tmp/tmp.0e8gOnDHVS ++ return 0 + [[ 3 == \3 ]] + echo ++ base64 -d ++ kubectl_bin get secret some-name-custom-user-secret -o 'jsonpath={.data.user-two}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.8RZqmJD4Cz +++ mktemp ++ local LAST_ERR=/tmp/tmp.SsW0IBaRNZ ++ 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.8RZqmJD4Cz ++ cat /tmp/tmp.SsW0IBaRNZ ++ rm /tmp/tmp.8RZqmJD4Cz /tmp/tmp.SsW0IBaRNZ ++ return 0 + userTwoPass='#(^jQawy^&U5?$R7' + compare_mysql_user '-h some-name-haproxy -uuser-two -p'\''#(^jQawy^&U5?$R7'\''' + local 'uri=-h some-name-haproxy -uuser-two -p'\''#(^jQawy^&U5?$R7'\''' + local postfix= ++ echo -h some-name-haproxy -uuser-two '-p'\''#(^jQawy^&U5?$R7'\''' ++ 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'\''#(^jQawy^&U5?$R7'\''' + local 'command=SHOW GRANTS;' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + local 'uri=-h some-name-haproxy -uuser-two -p'\''#(^jQawy^&U5?$R7'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.sNTHfuN1Ak +++ mktemp ++ local LAST_ERR=/tmp/tmp.TjGJV1Tj2E ++ 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.sNTHfuN1Ak ++ cat /tmp/tmp.TjGJV1Tj2E ++ rm /tmp/tmp.sNTHfuN1Ak /tmp/tmp.TjGJV1Tj2E ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/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.TwXfGcpQua ++ mktemp + local LAST_ERR=/tmp/tmp.XIbcQhyE49 + 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.TwXfGcpQua perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.XIbcQhyE49 + rm /tmp/tmp.TwXfGcpQua /tmp/tmp.XIbcQhyE49 + 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.P2jcQ78l52 +++ mktemp ++ local LAST_ERR=/tmp/tmp.0kZO09a0vb ++ 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.P2jcQ78l52 ++ cat /tmp/tmp.0kZO09a0vb ++ rm /tmp/tmp.P2jcQ78l52 /tmp/tmp.0kZO09a0vb ++ 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.B5tXMkeyvT +++ mktemp ++ local LAST_ERR=/tmp/tmp.eWS0NFiguH ++ 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.B5tXMkeyvT ++ cat /tmp/tmp.eWS0NFiguH ++ rm /tmp/tmp.B5tXMkeyvT /tmp/tmp.eWS0NFiguH ++ 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.0YFxJnl9lh ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.DI3dJONjDg +++++ 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.0YFxJnl9lh +++++ cat /tmp/tmp.DI3dJONjDg +++++ rm /tmp/tmp.0YFxJnl9lh /tmp/tmp.DI3dJONjDg +++++ 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.XfKbaHvzc8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.IwN8Yjwgqs ++ 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.XfKbaHvzc8 ++ cat /tmp/tmp.IwN8Yjwgqs ++ rm /tmp/tmp.XfKbaHvzc8 /tmp/tmp.IwN8Yjwgqs ++ 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.5aMklVtXiq +++ mktemp ++ local LAST_ERR=/tmp/tmp.oPCq60OTyd ++ 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.5aMklVtXiq ++ cat /tmp/tmp.oPCq60OTyd ++ rm /tmp/tmp.5aMklVtXiq /tmp/tmp.oPCq60OTyd ++ return 0 + userFourPass='pgb_*u,m91EjGE-6}o' + compare_mysql_user '-h some-name-haproxy -uuser-four -p'\''pgb_*u,m91EjGE-6}o'\''' + local 'uri=-h some-name-haproxy -uuser-four -p'\''pgb_*u,m91EjGE-6}o'\''' + local postfix= ++ sed -e 's/.*-u//; s/ .*//' ++ echo -h some-name-haproxy -uuser-four '-p'\''pgb_*u,m91EjGE-6}o'\''' + 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 ]] + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-four -p'\''pgb_*u,m91EjGE-6}o'\''' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-four -p'\''pgb_*u,m91EjGE-6}o'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.H41UVBaOCn +++ mktemp ++ local LAST_ERR=/tmp/tmp.tiny1yCFiY ++ 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.H41UVBaOCn ++ cat /tmp/tmp.tiny1yCFiY ++ rm /tmp/tmp.H41UVBaOCn /tmp/tmp.tiny1yCFiY ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/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.JJYeZP1yBa +++ mktemp ++ local LAST_ERR=/tmp/tmp.oOUHjlRTfV ++ 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.JJYeZP1yBa ++ cat /tmp/tmp.oOUHjlRTfV ++ rm /tmp/tmp.JJYeZP1yBa /tmp/tmp.oOUHjlRTfV ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' +++ mktemp ++ local LAST_OUT=/tmp/tmp.H45cEU3Zko +++ mktemp ++ local LAST_ERR=/tmp/tmp.NiuQ8DLjjF ++ 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.H45cEU3Zko ++ cat /tmp/tmp.NiuQ8DLjjF ++ rm /tmp/tmp.H45cEU3Zko /tmp/tmp.NiuQ8DLjjF ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/user-one.sql + compare_mysql_user '-h some-name-haproxy -uuser-two -p'\''#(^jQawy^&U5?$R7'\''' + local 'uri=-h some-name-haproxy -uuser-two -p'\''#(^jQawy^&U5?$R7'\''' + local postfix= ++ echo -h some-name-haproxy -uuser-two '-p'\''#(^jQawy^&U5?$R7'\''' ++ 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 ]] + /usr/bin/sed -E 's/'\''(10|192)[.][0-9][^'\'']*'\''//; s/'\''[^'\'']*[.]internal'\''//' + run_mysql 'SHOW GRANTS;' '-h some-name-haproxy -uuser-two -p'\''#(^jQawy^&U5?$R7'\''' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-two -p'\''#(^jQawy^&U5?$R7'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.8BavZsooYW +++ mktemp ++ local LAST_ERR=/tmp/tmp.nlZNcE4qS8 ++ 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.8BavZsooYW ++ cat /tmp/tmp.nlZNcE4qS8 ++ rm /tmp/tmp.8BavZsooYW /tmp/tmp.nlZNcE4qS8 ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-9kqtt + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.Y1MYnHjeVS/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.SHPyNbbR84 ++ mktemp + local LAST_ERR=/tmp/tmp.VqJnGlDPTi + 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.SHPyNbbR84 perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.VqJnGlDPTi + rm /tmp/tmp.SHPyNbbR84 /tmp/tmp.VqJnGlDPTi + 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.idV0rfsBOo +++ mktemp ++ local LAST_ERR=/tmp/tmp.p8642cMpZB ++ 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.idV0rfsBOo ++ cat /tmp/tmp.p8642cMpZB ++ rm /tmp/tmp.idV0rfsBOo /tmp/tmp.p8642cMpZB ++ 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.PYw7jyI4Ks +++ mktemp ++ local LAST_ERR=/tmp/tmp.kGDNGukLrp ++ 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.PYw7jyI4Ks ++ cat /tmp/tmp.kGDNGukLrp ++ rm /tmp/tmp.PYw7jyI4Ks /tmp/tmp.kGDNGukLrp ++ 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.a6gdB08Khw ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.ICG9MLxjrK +++++ 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.a6gdB08Khw +++++ cat /tmp/tmp.ICG9MLxjrK +++++ rm /tmp/tmp.a6gdB08Khw /tmp/tmp.ICG9MLxjrK +++++ 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.prCACLqCDA +++ mktemp ++ local LAST_ERR=/tmp/tmp.Jt7MqN6OSo ++ 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.prCACLqCDA ++ cat /tmp/tmp.Jt7MqN6OSo ++ rm /tmp/tmp.prCACLqCDA /tmp/tmp.Jt7MqN6OSo ++ 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.4XvLq1CQ1S +++ mktemp ++ local LAST_ERR=/tmp/tmp.kIQQRkyfEU ++ 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.4XvLq1CQ1S ++ cat /tmp/tmp.kIQQRkyfEU ++ rm /tmp/tmp.4XvLq1CQ1S /tmp/tmp.kIQQRkyfEU ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.CfwE2kiCfV ++ mktemp + local LAST_ERR=/tmp/tmp.jpjEdsHiFK + 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.CfwE2kiCfV perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.jpjEdsHiFK + rm /tmp/tmp.CfwE2kiCfV /tmp/tmp.jpjEdsHiFK + 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.GQz0996jT7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.lUpLMTBgUl ++ 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.GQz0996jT7 ++ cat /tmp/tmp.lUpLMTBgUl ++ rm /tmp/tmp.GQz0996jT7 /tmp/tmp.lUpLMTBgUl ++ 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.95dPOmWlTF +++ mktemp ++ local LAST_ERR=/tmp/tmp.ncRFKsLWnf ++ 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.95dPOmWlTF ++ cat /tmp/tmp.ncRFKsLWnf ++ rm /tmp/tmp.95dPOmWlTF /tmp/tmp.ncRFKsLWnf ++ 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.tsVE4q1bDv ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.mPdhpsK71e +++++ 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.tsVE4q1bDv +++++ cat /tmp/tmp.mPdhpsK71e +++++ rm /tmp/tmp.tsVE4q1bDv /tmp/tmp.mPdhpsK71e +++++ 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.kPr9QoQJyA +++ mktemp ++ local LAST_ERR=/tmp/tmp.Ge9yTtHAgZ ++ 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.kPr9QoQJyA ++ cat /tmp/tmp.Ge9yTtHAgZ ++ rm /tmp/tmp.kPr9QoQJyA /tmp/tmp.Ge9yTtHAgZ ++ 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.OYNOIDpeyd +++ mktemp ++ local LAST_ERR=/tmp/tmp.Wljt3sELsq ++ 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.OYNOIDpeyd ++ cat /tmp/tmp.Wljt3sELsq ++ rm /tmp/tmp.OYNOIDpeyd /tmp/tmp.Wljt3sELsq ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.2PBC0l9Jqj +++ mktemp ++ local LAST_ERR=/tmp/tmp.QvD5xVadL4 ++ 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.2PBC0l9Jqj ++ cat /tmp/tmp.QvD5xVadL4 ++ rm /tmp/tmp.2PBC0l9Jqj /tmp/tmp.QvD5xVadL4 ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-9kqtt + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.KiJXaPrVlU +++ mktemp ++ local LAST_ERR=/tmp/tmp.1VvKCvs7vG ++ 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.KiJXaPrVlU ++ cat /tmp/tmp.1VvKCvs7vG ++ rm /tmp/tmp.KiJXaPrVlU /tmp/tmp.1VvKCvs7vG ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.jGAEUB5AAH +++ mktemp ++ local LAST_ERR=/tmp/tmp.moLMYzPbLR ++ 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.jGAEUB5AAH ++ cat /tmp/tmp.moLMYzPbLR ++ rm /tmp/tmp.jGAEUB5AAH /tmp/tmp.moLMYzPbLR ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.yinL2REIui +++ mktemp ++ local LAST_ERR=/tmp/tmp.wTTUQSA1jF ++ 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.yinL2REIui ++ cat /tmp/tmp.wTTUQSA1jF ++ rm /tmp/tmp.yinL2REIui /tmp/tmp.wTTUQSA1jF ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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.prfpG5pavp +++ mktemp ++ local LAST_ERR=/tmp/tmp.DUj4AN5lTQ ++ 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.prfpG5pavp ++ cat /tmp/tmp.DUj4AN5lTQ ++ rm /tmp/tmp.prfpG5pavp /tmp/tmp.DUj4AN5lTQ ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.oB8EIv2BT1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.PAQnx17YLN ++ 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.oB8EIv2BT1 ++ cat /tmp/tmp.PAQnx17YLN ++ rm /tmp/tmp.oB8EIv2BT1 /tmp/tmp.PAQnx17YLN ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/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.Y1MYnHjeVS/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.2QRHJWzL1U ++ mktemp + local LAST_ERR=/tmp/tmp.irJMgL9Fww + 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.2QRHJWzL1U perconaxtradbcluster.pxc.percona.com/some-name patched + cat /tmp/tmp.irJMgL9Fww + rm /tmp/tmp.2QRHJWzL1U /tmp/tmp.irJMgL9Fww + 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.JGWMVGkzF4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.udlsAWaafY ++ 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.JGWMVGkzF4 ++ cat /tmp/tmp.udlsAWaafY ++ rm /tmp/tmp.JGWMVGkzF4 /tmp/tmp.udlsAWaafY ++ 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.TZmm9uzGLN +++ mktemp ++ local LAST_ERR=/tmp/tmp.f64xJZ96vh ++ 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.TZmm9uzGLN ++ cat /tmp/tmp.f64xJZ96vh ++ rm /tmp/tmp.TZmm9uzGLN /tmp/tmp.f64xJZ96vh ++ 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.iH7zKx6PCc ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.yNmJiiHWjt +++++ 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.iH7zKx6PCc +++++ cat /tmp/tmp.yNmJiiHWjt +++++ rm /tmp/tmp.iH7zKx6PCc /tmp/tmp.yNmJiiHWjt +++++ 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.2p0x3pbMga +++ mktemp ++ local LAST_ERR=/tmp/tmp.pOTRxRuoCm ++ 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.2p0x3pbMga ++ cat /tmp/tmp.pOTRxRuoCm ++ rm /tmp/tmp.2p0x3pbMga /tmp/tmp.pOTRxRuoCm ++ 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.ciH4MnCSzK +++ mktemp ++ local LAST_ERR=/tmp/tmp.QbmrTMLoOf ++ 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.ciH4MnCSzK ++ cat /tmp/tmp.QbmrTMLoOf ++ rm /tmp/tmp.ciH4MnCSzK /tmp/tmp.QbmrTMLoOf ++ return 0 + userFivePass='yvE[i+2OhgaUt45gHI$' + compare_mysql_user '-h some-name-haproxy -uuser-five -p'\''yvE[i+2OhgaUt45gHI$'\''' + local 'uri=-h some-name-haproxy -uuser-five -p'\''yvE[i+2OhgaUt45gHI$'\''' + local postfix= ++ echo -h some-name-haproxy -uuser-five '-p'\''yvE[i+2OhgaUt45gHI$'\''' ++ sed -e 's/.*-u//; s/ .*//' + local user=user-five + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-five.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-five-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-five -p'\''yvE[i+2OhgaUt45gHI$'\''' + local 'command=SHOW GRANTS;' + local 'uri=-h some-name-haproxy -uuser-five -p'\''yvE[i+2OhgaUt45gHI$'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.D97RQzunc1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.p3NEKlA4Zt ++ 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.D97RQzunc1 ++ cat /tmp/tmp.p3NEKlA4Zt ++ rm /tmp/tmp.D97RQzunc1 /tmp/tmp.p3NEKlA4Zt ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt 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-five.sql /tmp/tmp.Y1MYnHjeVS/user-five.sql + compare_mysql_cmd user-five-1 'SELECT User, Host from mysql.user WHERE User = '\''user-five'\'';' '-h some-name-haproxy -uroot -proot_password' + local command_id=user-five-1 + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-five'\'';' + 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-five-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-five-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT User, Host from mysql.user WHERE User = '\''user-five'\'';' '-h some-name-haproxy -uroot -proot_password' + local 'command=SELECT User, Host from mysql.user WHERE User = '\''user-five'\'';' + 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.s28aOcpLbf +++ mktemp ++ local LAST_ERR=/tmp/tmp.XgXZ0fztyI ++ 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.s28aOcpLbf ++ cat /tmp/tmp.XgXZ0fztyI ++ rm /tmp/tmp.s28aOcpLbf /tmp/tmp.XgXZ0fztyI ++ return 0 + client_pod=pxc-client-59944c5bbf-9kqtt + wait_pod pxc-client-59944c5bbf-9kqtt + local pod=pxc-client-59944c5bbf-9kqtt + local max_retry=480 + local ns= ++ echo pxc-client-59944c5bbf-9kqtt ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-59944c5bbf-9kqtt condition met waiting for pod/pxc-client-59944c5bbf-9kqtt to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + '[' '!' -s /tmp/tmp.Y1MYnHjeVS/user-five-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2154/e2e-tests/custom-users/compare/user-five-1.sql /tmp/tmp.Y1MYnHjeVS/user-five-1.sql + destroy custom-users-10113 + local namespace=custom-users-10113 + local ignore_logs=true + desc 'destroy cluster/operator and all other resources' + set +o xtrace ----------------------------------------------------------------------------------- destroy cluster/operator and all other resources ----------------------------------------------------------------------------------- + '[' true == false -o 1 == 1 ']' + /usr/bin/sed -r 's/"ts":[0-9.]+//; s^limits-[0-9.]+/^^g' + grep -v 'get backup status: Job.batch' + grep -v level=info + grep -v 'the object has been modified' ++ get_operator_pod ++ local label_prefix=app.kubernetes.io/ + sort -u + tee /tmp/tmp.Y1MYnHjeVS/operator.log +++ kubectl get pods --selector=app.kubernetes.io/name=percona-xtradb-cluster-operator -n pxc-operator +++ grep -c percona-xtradb-cluster-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.D6zxbJMNKp +++ mktemp ++ local LAST_ERR=/tmp/tmp.Ix7DB4Sroj ++ 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.D6zxbJMNKp ++ cat /tmp/tmp.Ix7DB4Sroj ++ rm /tmp/tmp.D6zxbJMNKp /tmp/tmp.Ix7DB4Sroj ++ return 0 + kubectl_bin logs -n pxc-operator percona-xtradb-cluster-operator-6cf85965f9-h2qnb ++ mktemp + local LAST_OUT=/tmp/tmp.fvM5qjyLyI ++ mktemp + local LAST_ERR=/tmp/tmp.c39RDYidVs + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl logs -n pxc-operator percona-xtradb-cluster-operator-6cf85965f9-h2qnb + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.fvM5qjyLyI + cat /tmp/tmp.c39RDYidVs + rm /tmp/tmp.fvM5qjyLyI /tmp/tmp.c39RDYidVs + return 0 2025-11-19T16:52:04.357Z INFO setup Manager starting up {"gitCommit": "7a623b10a97567887377e516f24d3500d7412fc7", "gitBranch": "PR-2154-7a623b10", "buildTime": "2025-11-19T16:30:53Z", "goVersion": "go1.25.4", "os": "linux", "arch": "amd64"} 2025-11-19T16:52:04.357Z INFO setup Runs on {"platform": "kubernetes", "version": "v1.31.13-gke.1377000"} 2025-11-19T16:52:04.360Z INFO setup Registering Components. 2025-11-19T16:52:05.462Z INFO controller-runtime.metrics Serving metrics server {"bindAddress": ":8080", "secure": false} 2025-11-19T16:52:05.462Z INFO controller-runtime.metrics Starting metrics server 2025-11-19T16:52:05.462Z INFO controller-runtime.webhook Registering webhook {"path": "/validate-percona-xtradbcluster"} 2025-11-19T16:52:05.462Z INFO setup Starting the Cmd. 2025-11-19T16:52:05.463Z INFO controller-runtime.certwatcher Starting certificate poll+watcher {"cert": "/tmp/k8s-webhook-server/serving-certs/tls.crt", "key": "/tmp/k8s-webhook-server/serving-certs/tls.key", "interval": "10s"} 2025-11-19T16:52:05.463Z INFO controller-runtime.certwatcher Updated current TLS certificate {"cert": "/tmp/k8s-webhook-server/serving-certs/tls.crt", "key": "/tmp/k8s-webhook-server/serving-certs/tls.key"} 2025-11-19T16:52:05.463Z INFO controller-runtime.webhook Serving webhook server {"host": "", "port": 9443} 2025-11-19T16:52:05.463Z INFO controller-runtime.webhook Starting webhook server 2025-11-19T16:52:05.463Z INFO starting server {"name": "health probe", "addr": "[::]:8081"} 2025-11-19T16:52:05.563Z INFO attempting to acquire leader lease pxc-operator/08db1feb.percona.com... 2025-11-19T16:52:05.588Z DEBUG events percona-xtradb-cluster-operator-6cf85965f9-h2qnb_e0b4c1a0-78b3-45ac-89a3-7841e40911a5 became leader {"type": "Normal", "object": {"kind":"Lease","namespace":"pxc-operator","name":"08db1feb.percona.com","uid":"7dc8834c-50c5-4c0e-89f2-09bad6fea027","apiVersion":"coordination.k8s.io/v1","resourceVersion":"1763571125582351009"}, "reason": "LeaderElection"} 2025-11-19T16:52:05.588Z INFO Starting EventSource {"controller": "pxcbackup-controller", "source": "kind source: *v1.PerconaXtraDBClusterBackup"} 2025-11-19T16:52:05.588Z INFO Starting EventSource {"controller": "pxc-controller", "source": "kind source: *v1.PerconaXtraDBCluster"} 2025-11-19T16:52:05.588Z INFO Starting EventSource {"controller": "pxc-controller", "source": "kind source: *v1.Secret"} 2025-11-19T16:52:05.588Z INFO Starting EventSource {"controller": "pxcrestore-controller", "source": "kind source: *v1.PerconaXtraDBClusterRestore"} 2025-11-19T16:52:05.588Z INFO successfully acquired lease pxc-operator/08db1feb.percona.com 2025-11-19T16:52:05.689Z INFO Starting Controller {"controller": "pxcbackup-controller"} 2025-11-19T16:52:05.689Z INFO Starting Controller {"controller": "pxc-controller"} 2025-11-19T16:52:05.689Z INFO Starting Controller {"controller": "pxcrestore-controller"} 2025-11-19T16:52:05.689Z INFO Starting workers {"controller": "pxcbackup-controller", "worker count": 1} 2025-11-19T16:52:05.689Z INFO Starting workers {"controller": "pxc-controller", "worker count": 1} 2025-11-19T16:52:05.689Z INFO Starting workers {"controller": "pxcrestore-controller", "worker count": 1} 2025-11-19T16:53:00.178Z INFO Set CR version {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "version": "1.19.0"} 2025-11-19T16:53:00.514Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "object": "auto-some-name-pxc", "kind": "&TypeMeta{Kind:ConfigMap,APIVersion:v1,}"} 2025-11-19T16:53:00.635Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "object": "some-name-haproxy", "kind": "&TypeMeta{Kind:StatefulSet,APIVersion:apps/v1,}"} 2025-11-19T16:53:00.671Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "object": "some-name-pxc", "kind": "&TypeMeta{Kind:StatefulSet,APIVersion:apps/v1,}"} 2025-11-19T16:53:00.718Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "object": "some-name-pxc", "kind": "&TypeMeta{Kind:Service,APIVersion:v1,}"} 2025-11-19T16:53:00.753Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "object": "some-name-pxc-unready", "kind": "&TypeMeta{Kind:Service,APIVersion:v1,}"} 2025-11-19T16:53:00.800Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "object": "some-name-haproxy", "kind": "&TypeMeta{Kind:Service,APIVersion:v1,}"} 2025-11-19T16:53:01.056Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ae5b5fbe-6769-4f22-a0a4-86310d357d68", "object": "some-name-haproxy-replicas", "kind": "&TypeMeta{Kind:Service,APIVersion:v1,}"} 2025-11-19T16:53:02.294Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "f9781ff4-dfe5-405e-aa63-a382e06723bc", "object": "some-name-pxc", "kind": "&TypeMeta{Kind:PodDisruptionBudget,APIVersion:policy/v1,}"} 2025-11-19T16:53:02.441Z DEBUG Creating object {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "f9781ff4-dfe5-405e-aa63-a382e06723bc", "object": "some-name-haproxy", "kind": "&TypeMeta{Kind:PodDisruptionBudget,APIVersion:policy/v1,}"} 2025-11-19T16:54:19.182Z INFO Password expiration policy updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "2f62e167-28ce-486d-9863-42f66eabeea9", "user": "operator"} 2025-11-19T16:54:19.219Z INFO Password expiration policy updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "2f62e167-28ce-486d-9863-42f66eabeea9", "user": "monitor"} 2025-11-19T16:54:19.274Z INFO User monitor: granted privileges {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "2f62e167-28ce-486d-9863-42f66eabeea9"} 2025-11-19T16:54:19.309Z INFO monitor user privileges granted {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "2f62e167-28ce-486d-9863-42f66eabeea9"} 2025-11-19T16:54:19.357Z INFO Password expiration policy updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "2f62e167-28ce-486d-9863-42f66eabeea9", "user": "xtrabackup"} 2025-11-19T16:54:19.401Z INFO User xtrabackup: granted privileges {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "2f62e167-28ce-486d-9863-42f66eabeea9"} 2025-11-19T16:54:19.431Z INFO Password expiration policy updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "2f62e167-28ce-486d-9863-42f66eabeea9", "user": "replication"} 2025-11-19T16:56:40.873Z INFO Password expiration policy updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "root"} 2025-11-19T16:56:40.932Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-one"} 2025-11-19T16:56:40.932Z INFO User not created {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-one"} 2025-11-19T16:56:41.010Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-one"} 2025-11-19T16:56:41.011Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-two"} 2025-11-19T16:56:41.011Z INFO User not created {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-two"} 2025-11-19T16:56:41.040Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-two"} 2025-11-19T16:56:41.060Z INFO Created custom user secrets {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "secrets": "my-cluster-secrets"} 2025-11-19T16:56:41.060Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-three"} 2025-11-19T16:56:41.060Z INFO User not created {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-three"} 2025-11-19T16:56:41.082Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "user": "user-three"} 2025-11-19T16:56:41.159Z INFO update PXC version (fetched from db) {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "bc975ac4-9c7f-476a-8739-fff7a577b44a", "new version": "8.0.43-34.1"} 2025-11-19T16:59:05.699Z INFO User password changed {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "e3e11c0c-26a4-4aeb-a4ba-867b31118457", "user": "user-one"} 2025-11-19T16:59:05.738Z INFO User password updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "e3e11c0c-26a4-4aeb-a4ba-867b31118457", "user": "user-one"} 2025-11-19T16:59:13.582Z INFO controller-runtime.cache Warning: watch ended with error {"reflector": "pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/reflector.go:290", "type": "*v1.Event", "err": "very short watch: pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/reflector.go:290: Unexpected watch close - watch lasted less than a second and no items received"} 2025-11-19T16:59:43.702Z INFO User password changed {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "b32f4911-1487-4d7a-b925-b88b7887f0c9", "user": "user-two"} 2025-11-19T16:59:43.735Z INFO User password updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "b32f4911-1487-4d7a-b925-b88b7887f0c9", "user": "user-two"} 2025-11-19T17:00:03.968Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "e051850a-2c65-4a47-987d-7cb3820b3f3e", "user": "user-four"} 2025-11-19T17:00:03.968Z INFO User not created {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "e051850a-2c65-4a47-987d-7cb3820b3f3e", "user": "user-four"} 2025-11-19T17:00:04.026Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "e051850a-2c65-4a47-987d-7cb3820b3f3e", "user": "user-four"} 2025-11-19T17:00:45.024Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ff679827-dd18-4de0-a6b7-c2c47495fd47", "user": "user-four"} 2025-11-19T17:00:45.024Z INFO DBs changed {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ff679827-dd18-4de0-a6b7-c2c47495fd47", "current": {"db1":{},"db2":{}}, "desired": ["db1", "db2", "db3"], "user": "user-four"} 2025-11-19T17:00:45.081Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "ff679827-dd18-4de0-a6b7-c2c47495fd47", "user": "user-four"} 2025-11-19T17:01:08.512Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "c12479ba-b783-41dc-9815-296de78b0775", "user": "user-four"} 2025-11-19T17:01:08.512Z INFO Grant not present in current grants {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "c12479ba-b783-41dc-9815-296de78b0775", "grant": "SELECT, UPDATE, DELETE", "user": "user-four"} 2025-11-19T17:01:08.570Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "c12479ba-b783-41dc-9815-296de78b0775", "user": "user-four"} 2025-11-19T17:01:48.985Z INFO User not created {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "a6aab214-2724-42d5-8461-44e0cb94525c", "user": "user-four"} 2025-11-19T17:01:48.986Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "a6aab214-2724-42d5-8461-44e0cb94525c", "user": "user-four"} 2025-11-19T17:01:49.045Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "a6aab214-2724-42d5-8461-44e0cb94525c", "user": "user-four"} 2025-11-19T17:02:32.102Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "219cc6a1-6466-4d36-af2b-d10c823b4e76", "user": "user-four"} 2025-11-19T17:02:32.102Z INFO Grant not present in current grants {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "219cc6a1-6466-4d36-af2b-d10c823b4e76", "grant": "SELECT, UPDATE, DELETE", "user": "user-four"} 2025-11-19T17:02:32.375Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "219cc6a1-6466-4d36-af2b-d10c823b4e76", "user": "user-four"} 2025-11-19T17:02:38.375Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "b3e25fdf-ecc4-4396-9d41-7715ceb83fbf", "user": "user-four"} 2025-11-19T17:02:38.375Z INFO Grant not present in current grants {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "b3e25fdf-ecc4-4396-9d41-7715ceb83fbf", "grant": "SELECT, UPDATE, DELETE", "user": "user-four"} 2025-11-19T17:02:38.523Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "b3e25fdf-ecc4-4396-9d41-7715ceb83fbf", "user": "user-four"} 2025-11-19T17:02:44.075Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "7f46c117-3a21-4ddd-9309-ee4c4e7f461b", "user": "user-four"} 2025-11-19T17:02:44.075Z INFO Grant not present in current grants {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "7f46c117-3a21-4ddd-9309-ee4c4e7f461b", "grant": "SELECT, UPDATE, DELETE", "user": "user-four"} 2025-11-19T17:02:44.142Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "7f46c117-3a21-4ddd-9309-ee4c4e7f461b", "user": "user-four"} 2025-11-19T17:02:49.663Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "d2ee6cb8-8885-4229-9d3a-6663377bd2ad", "user": "user-four"} 2025-11-19T17:02:49.663Z INFO Grant not present in current grants {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "d2ee6cb8-8885-4229-9d3a-6663377bd2ad", "grant": "SELECT, UPDATE, DELETE", "user": "user-four"} 2025-11-19T17:02:49.720Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "d2ee6cb8-8885-4229-9d3a-6663377bd2ad", "user": "user-four"} 2025-11-19T17:02:55.031Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "8de16aa9-8086-446b-aeb3-afa819974e67", "user": "user-four"} 2025-11-19T17:02:55.031Z INFO Grant not present in current grants {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "8de16aa9-8086-446b-aeb3-afa819974e67", "grant": "SELECT, UPDATE, DELETE", "user": "user-four"} 2025-11-19T17:02:55.082Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "8de16aa9-8086-446b-aeb3-afa819974e67", "user": "user-four"} 2025-11-19T17:03:00.335Z INFO Creating/updating user {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "8be0b0ac-7d29-498f-88b4-685fa1d7e666", "user": "user-five"} 2025-11-19T17:03:00.335Z INFO User not created {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "8be0b0ac-7d29-498f-88b4-685fa1d7e666", "user": "user-five"} 2025-11-19T17:03:00.397Z INFO User created/updated {"controller": "pxc-controller", "namespace": "custom-users-10113", "name": "some-name", "reconcileID": "8be0b0ac-7d29-498f-88b4-685fa1d7e666", "user": "user-five"} + grep -v NAMESPACE + kubectl get pxc --all-namespaces -o wide + xargs -L 1 sh -xc 'kubectl patch pxc -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' + kubectl patch pxc -n custom-users-10113 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.Ivy4Wk2JIl ++ mktemp + local LAST_ERR=/tmp/tmp.vQpkcgCeZO + 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.Ivy4Wk2JIl perconaxtradbcluster.pxc.percona.com "some-name" deleted from custom-users-10113 namespace + cat /tmp/tmp.vQpkcgCeZO + rm /tmp/tmp.Ivy4Wk2JIl /tmp/tmp.vQpkcgCeZO + return 0 + kubectl_bin delete pxc-backup --all --all-namespaces ++ mktemp + local LAST_OUT=/tmp/tmp.qhzLuBhO4e ++ mktemp + local LAST_ERR=/tmp/tmp.Q1BHi1vTJu + 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.qhzLuBhO4e No resources found + cat /tmp/tmp.Q1BHi1vTJu + rm /tmp/tmp.qhzLuBhO4e /tmp/tmp.Q1BHi1vTJu + return 0 + kubectl_bin delete pxc-restore --all --all-namespaces ++ mktemp + local LAST_OUT=/tmp/tmp.nPjVsnbyD4 ++ mktemp + local LAST_ERR=/tmp/tmp.cIU6X9sTab + 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.nPjVsnbyD4 No resources found + cat /tmp/tmp.cIU6X9sTab + rm /tmp/tmp.nPjVsnbyD4 /tmp/tmp.cIU6X9sTab + return 0 + kubectl_bin delete ValidatingWebhookConfiguration percona-xtradbcluster-webhook ++ mktemp + local LAST_OUT=/tmp/tmp.cbpDB9QOYe ++ mktemp + local LAST_ERR=/tmp/tmp.zwPpOByIDa + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete ValidatingWebhookConfiguration percona-xtradbcluster-webhook + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.cbpDB9QOYe validatingwebhookconfiguration.admissionregistration.k8s.io "percona-xtradbcluster-webhook" deleted + cat /tmp/tmp.zwPpOByIDa + rm /tmp/tmp.cbpDB9QOYe /tmp/tmp.zwPpOByIDa + return 0 + kubectl_bin delete -f https://github.com/jetstack/cert-manager/releases/download/v1.18.2/cert-manager.yaml + : + '[' '!' -z '' ']' + '[' -n pxc-operator ']' + kubectl_bin delete --grace-period=0 --force=true namespace custom-users-10113 + rm -rf /tmp/tmp.Y1MYnHjeVS + kubectl_bin delete --grace-period=0 --force=true namespace pxc-operator ++ mktemp + desc 'test passed' + set +o xtrace ----------------------------------------------------------------------------------- test passed ----------------------------------------------------------------------------------- + local LAST_OUT=/tmp/tmp.cvn9akCIue ++ mktemp + local LAST_ERR=/tmp/tmp.QGhDt27ok4 + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete --grace-period=0 --force=true namespace pxc-operator ++ mktemp + local LAST_OUT=/tmp/tmp.QCltFvdwK7 ++ mktemp + local LAST_ERR=/tmp/tmp.kqjt93ucS2 + local exit_status=0 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete --grace-period=0 --force=true namespace custom-users-10113