Log: /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/logs/security-context-8-0.log Warning: version difference between client (1.37) and server (1.34) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.37) and server (1.34) exceeds the supported minor version skew of +/-1 + create_infra security-context-23097 + local ns=security-context-23097 + '[' -n pxc-operator ']' + read -r pns name + kubectl_bin get pxc --all-namespaces -o 'jsonpath={range .items[*]}{.metadata.namespace} {.metadata.name}{"\n"}{end}' + [[ -z security-context-13260 ]] + [[ -z sec-context ]] + kubectl_bin patch pxc -n security-context-13260 sec-context --type=merge -p '{"metadata":{"finalizers":[]}}' ++ mktemp + local LAST_OUT=/tmp/tmp.nHxqbOESS7 ++ mktemp + local LAST_ERR=/tmp/tmp.IAtizGBg2p + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch pxc -n security-context-13260 sec-context --type=merge -p '{"metadata":{"finalizers":[]}}' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.nHxqbOESS7 perconaxtradbcluster.pxc.percona.com/sec-context patched + cat /tmp/tmp.IAtizGBg2p + rm /tmp/tmp.nHxqbOESS7 /tmp/tmp.IAtizGBg2p + return 0 + read -r pns name + read -r pns name + kubectl_bin get pxc-backup --all-namespaces -o 'jsonpath={range .items[*]}{.metadata.namespace} {.metadata.name}{"\n"}{end}' + [[ -z security-context-13260 ]] + [[ -z on-demand-backup-pvc ]] + kubectl_bin patch pxc-backup -n security-context-13260 on-demand-backup-pvc --type=merge -p '{"metadata":{"finalizers":[]}}' ++ mktemp + local LAST_OUT=/tmp/tmp.1hbawIWa0E ++ mktemp + local LAST_ERR=/tmp/tmp.elslGzz0lL + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch pxc-backup -n security-context-13260 on-demand-backup-pvc --type=merge -p '{"metadata":{"finalizers":[]}}' + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.1hbawIWa0E perconaxtradbclusterbackup.pxc.percona.com/on-demand-backup-pvc patched (no change) + cat /tmp/tmp.elslGzz0lL + rm /tmp/tmp.1hbawIWa0E /tmp/tmp.elslGzz0lL + return 0 + read -r pns name + timeout 300 kubectl delete pxc --all --all-namespaces --wait=false --ignore-not-found perconaxtradbcluster.pxc.percona.com "sec-context" deleted from security-context-13260 namespace + timeout 300 kubectl delete pxc-backup --all --all-namespaces --wait=false --ignore-not-found perconaxtradbclusterbackup.pxc.percona.com "on-demand-backup-pvc" deleted from security-context-13260 namespace + timeout 300 kubectl delete pxc-restore --all --all-namespaces --wait=false --ignore-not-found perconaxtradbclusterrestore.pxc.percona.com "restore-pvc" deleted from security-context-13260 namespace + create_namespace pxc-operator + local namespace=pxc-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + '[' -n '' ']' ++ awk '{print $1}' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl get ValidatingWebhookConfiguration + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ grep validate-auth ++ kubectl get ValidatingWebhookConfiguration + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl api-resources ++ 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}' ++ grep chaos-mesh ++ kubectl get clusterrole + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + '[' -n '' ']' + desc 'cleaned up old namespaces pxc-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces pxc-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace pxc-operator ++ mktemp + awk '{print$1}' + grep -E -v '^kube-|^default|Terminating|pxc-operator|openshift|^gke-|^gmp-|^NAME' + xargs kubectl delete ns + local LAST_OUT=/tmp/tmp.cv80gqHDg5 + kubectl_bin get ns ++ mktemp + local LAST_ERR=/tmp/tmp.okPOe7XmWS + local exit_status=0 ++ seq 0 2 ++ mktemp + local LAST_OUT=/tmp/tmp.SkJxa9RBaN + for i in $(seq 0 2) + set +e + kubectl delete namespace pxc-operator ++ mktemp + local LAST_ERR=/tmp/tmp.yKUCWIuTNg + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.SkJxa9RBaN + cat /tmp/tmp.yKUCWIuTNg + rm /tmp/tmp.SkJxa9RBaN /tmp/tmp.yKUCWIuTNg + return 0 namespace "cert-manager" deleted namespace "security-context-13260" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.cv80gqHDg5 namespace "pxc-operator" deleted + cat /tmp/tmp.okPOe7XmWS + rm /tmp/tmp.cv80gqHDg5 /tmp/tmp.okPOe7XmWS + 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.6tY2lHTaR5 ++ mktemp + local LAST_ERR=/tmp/tmp.D4DBvxNQTz + 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.6tY2lHTaR5 namespace/pxc-operator created + cat /tmp/tmp.D4DBvxNQTz + rm /tmp/tmp.6tY2lHTaR5 /tmp/tmp.D4DBvxNQTz + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ev7POUxCBG +++ mktemp ++ local LAST_ERR=/tmp/tmp.IUz7uoITPx ++ 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.Ev7POUxCBG ++ cat /tmp/tmp.IUz7uoITPx ++ rm /tmp/tmp.Ev7POUxCBG /tmp/tmp.IUz7uoITPx ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2546-caf25420-2-cluster13 --namespace=pxc-operator ++ mktemp + local LAST_OUT=/tmp/tmp.9VVZBhzLYR ++ mktemp + local LAST_ERR=/tmp/tmp.M7zrtLcqeS + 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-2546-caf25420-2-cluster13 --namespace=pxc-operator + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.9VVZBhzLYR Context "gke_cloud-dev-112233_us-central1-a_jen-pxc-2546-caf25420-2-cluster13" modified. + cat /tmp/tmp.M7zrtLcqeS + rm /tmp/tmp.9VVZBhzLYR /tmp/tmp.M7zrtLcqeS + 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-2546/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.5SQJPdDvNC ++ mktemp + local LAST_ERR=/tmp/tmp.5ugyhWWv2o + 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-2546/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.5SQJPdDvNC 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.5ugyhWWv2o + rm /tmp/tmp.5SQJPdDvNC /tmp/tmp.5ugyhWWv2o + return 0 + kubectl_bin wait --for=condition=Established --timeout=120s crd/perconaxtradbclusters.pxc.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.5wG6L7b2kv ++ mktemp + local LAST_ERR=/tmp/tmp.aQKZ3fdwp0 + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=condition=Established --timeout=120s crd/perconaxtradbclusters.pxc.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.5wG6L7b2kv customresourcedefinition.apiextensions.k8s.io/perconaxtradbclusters.pxc.percona.com condition met + cat /tmp/tmp.aQKZ3fdwp0 + rm /tmp/tmp.5wG6L7b2kv /tmp/tmp.aQKZ3fdwp0 + return 0 + kubectl_bin wait --for=condition=Established --timeout=120s crd/perconaxtradbclusterbackups.pxc.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.9XTLP3ZgfV ++ mktemp + local LAST_ERR=/tmp/tmp.sUbYPlGJ33 + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=condition=Established --timeout=120s crd/perconaxtradbclusterbackups.pxc.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.9XTLP3ZgfV customresourcedefinition.apiextensions.k8s.io/perconaxtradbclusterbackups.pxc.percona.com condition met + cat /tmp/tmp.sUbYPlGJ33 + rm /tmp/tmp.9XTLP3ZgfV /tmp/tmp.sUbYPlGJ33 + return 0 + kubectl_bin wait --for=condition=Established --timeout=120s crd/perconaxtradbclusterrestores.pxc.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.gZtJqyVV6a ++ mktemp + local LAST_ERR=/tmp/tmp.ZJKSB3Oyou + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=condition=Established --timeout=120s crd/perconaxtradbclusterrestores.pxc.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.gZtJqyVV6a customresourcedefinition.apiextensions.k8s.io/perconaxtradbclusterrestores.pxc.percona.com condition met + cat /tmp/tmp.ZJKSB3Oyou + rm /tmp/tmp.gZtJqyVV6a /tmp/tmp.ZJKSB3Oyou + return 0 + '[' -n pxc-operator ']' + apply_rbac cw-rbac + local operator_namespace=pxc-operator + local rbac=cw-rbac + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: pxc-operator^' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.BURlCJYPW6 ++ mktemp + local LAST_ERR=/tmp/tmp.E4HFl8Luaq + 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.BURlCJYPW6 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.E4HFl8Luaq + rm /tmp/tmp.BURlCJYPW6 /tmp/tmp.E4HFl8Luaq + return 0 + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/deploy/cw-operator.yaml + yq eval '(select(.kind == "Deployment").spec.template.spec.containers[] | select(.name == "percona-xtradb-cluster-operator").env[] | select(.name == "DISABLE_TELEMETRY").value) = "true"' - + kubectl_bin apply -f - + sed -e 's^failureThreshold: .*^failureThreshold: 10^' + yq eval '(select(.kind == "Deployment").spec.template.spec.containers[] | select(.name == "percona-xtradb-cluster-operator").env[] | select(.name == "LOG_LEVEL").value) = "VERBOSE"' - + yq eval '(select(.kind == "Deployment").spec.template.spec.containers[] | select(.name == "percona-xtradb-cluster-operator").env[] | select(.name == "PXCO_FEATURE_GATES").value) = ""' - + sed -e 's^image: .*^image: perconalab/percona-xtradb-cluster-operator:PR-2546-caf25420^' ++ mktemp + local LAST_OUT=/tmp/tmp.gKIW8gdGWe ++ mktemp + local LAST_ERR=/tmp/tmp.8Gg61xhl3V + 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.gKIW8gdGWe deployment.apps/percona-xtradb-cluster-operator created service/percona-xtradb-cluster-operator created + cat /tmp/tmp.8Gg61xhl3V + rm /tmp/tmp.gKIW8gdGWe /tmp/tmp.8Gg61xhl3V + 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.cTvI36g8b0 ++ mktemp + local LAST_ERR=/tmp/tmp.VtzR1L8fuW + 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.cTvI36g8b0 pod/percona-xtradb-cluster-operator-658fcf4b98-hgbxd condition met + cat /tmp/tmp.VtzR1L8fuW + rm /tmp/tmp.cTvI36g8b0 /tmp/tmp.VtzR1L8fuW + 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 ]] ++ jq -r '.items[] | select(.metadata.deletionTimestamp == null) | .metadata.name' ++ kubectl_bin get pods --selector=app.kubernetes.io/name=percona-xtradb-cluster-operator --field-selector=status.phase=Running -o json -n pxc-operator ++ head -1 +++ mktemp ++ local LAST_OUT=/tmp/tmp.esiLVQR1Lz +++ mktemp ++ local LAST_ERR=/tmp/tmp.pUq2fNYkCi ++ 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 --field-selector=status.phase=Running -o json -n pxc-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.esiLVQR1Lz ++ cat /tmp/tmp.pUq2fNYkCi ++ rm /tmp/tmp.esiLVQR1Lz /tmp/tmp.pUq2fNYkCi ++ return 0 + wait_pod percona-xtradb-cluster-operator-658fcf4b98-hgbxd 480 pxc-operator + local pod=percona-xtradb-cluster-operator-658fcf4b98-hgbxd + local max_retry=480 + local ns=pxc-operator ++ echo percona-xtradb-cluster-operator-658fcf4b98-hgbxd ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/percona-xtradb-cluster-operator-658fcf4b98-hgbxd condition met waiting for pod/percona-xtradb-cluster-operator-658fcf4b98-hgbxd to become Ready.Ok + sleep 3 + create_namespace security-context-23097 + local namespace=security-context-23097 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ awk '-F ' '{print $2}' ++ tail -n1 ++ sed s/NAMESPACE// + local chaos_mesh_ns= + '[' -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 + : ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl get ValidatingWebhookConfiguration + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ grep validate-auth ++ kubectl get ValidatingWebhookConfiguration + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ grep chaos-mesh ++ kubectl api-resources ++ awk '{print $1}' ++ kubectl get crd ++ 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 + : ++ 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 security-context-23097' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces security-context-23097 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace security-context-23097 + grep -E -v '^kube-|^default|Terminating|pxc-operator|openshift|^gke-|^gmp-|^NAME' + kubectl_bin get ns + awk '{print$1}' ++ mktemp + local LAST_OUT=/tmp/tmp.ZdKEinhc64 + xargs kubectl delete ns ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.jaj3BEWvV9 + local LAST_ERR=/tmp/tmp.0xLGN5iZJ2 + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace security-context-23097 ++ mktemp + local LAST_ERR=/tmp/tmp.9quCkWZC4Q + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + for i in $(seq 0 2) + set +e + kubectl delete namespace security-context-23097 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 + for i in $(seq 0 2) + set +e + kubectl delete namespace security-context-23097 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.jaj3BEWvV9 + cat /tmp/tmp.9quCkWZC4Q + rm /tmp/tmp.jaj3BEWvV9 /tmp/tmp.9quCkWZC4Q + return 0 + exit_status=1 + set -e + '[' 1 '!=' 0 ']' + '[' 1 == 1 ']' + sleep 0 error: resource(s) were provided, but no name was specified + cat /tmp/tmp.ZdKEinhc64 + cat /tmp/tmp.0xLGN5iZJ2 Error from server (NotFound): namespaces "security-context-23097" not found + rm /tmp/tmp.ZdKEinhc64 /tmp/tmp.0xLGN5iZJ2 + return 1 + : + wait_for_delete namespace/security-context-23097 + local res=namespace/security-context-23097 + echo -n 'waiting for namespace/security-context-23097 to be deleted' waiting for namespace/security-context-23097 to be deleted+ set +o xtrace Error from server (NotFound): namespaces "security-context-23097" not found + desc 'create namespace security-context-23097' + set +o xtrace ----------------------------------------------------------------------------------- create namespace security-context-23097 ----------------------------------------------------------------------------------- + kubectl_bin create namespace security-context-23097 ++ mktemp + local LAST_OUT=/tmp/tmp.EuHmlCP4bA ++ mktemp + local LAST_ERR=/tmp/tmp.CCY5uFeMZn + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace security-context-23097 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.EuHmlCP4bA namespace/security-context-23097 created + cat /tmp/tmp.CCY5uFeMZn + rm /tmp/tmp.EuHmlCP4bA /tmp/tmp.CCY5uFeMZn + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.edzEsQEcyF +++ mktemp ++ local LAST_ERR=/tmp/tmp.D9AoBI00zF ++ 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.edzEsQEcyF ++ cat /tmp/tmp.D9AoBI00zF ++ rm /tmp/tmp.edzEsQEcyF /tmp/tmp.D9AoBI00zF ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2546-caf25420-2-cluster13 --namespace=security-context-23097 ++ mktemp + local LAST_OUT=/tmp/tmp.gU7V7mPMz0 ++ mktemp + local LAST_ERR=/tmp/tmp.3r5EPVGrUK + 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-2546-caf25420-2-cluster13 --namespace=security-context-23097 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.gU7V7mPMz0 Context "gke_cloud-dev-112233_us-central1-a_jen-pxc-2546-caf25420-2-cluster13" modified. + cat /tmp/tmp.3r5EPVGrUK + rm /tmp/tmp.gU7V7mPMz0 /tmp/tmp.3r5EPVGrUK + 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-2546/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.6L4IpQkPyv ++ mktemp + local LAST_ERR=/tmp/tmp.ssMSU49Y4q + 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-2546/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.6L4IpQkPyv secret/minio-secret created secret/aws-s3-secret created secret/do-spaces-secret created secret/gcp-cs-secret created secret/azure-secret created + cat /tmp/tmp.ssMSU49Y4q + rm /tmp/tmp.6L4IpQkPyv /tmp/tmp.ssMSU49Y4q + return 0 + deploy_cert_manager + desc 'deploy cert manager' + set +o xtrace ----------------------------------------------------------------------------------- deploy cert manager ----------------------------------------------------------------------------------- + kubectl_bin create namespace cert-manager ++ mktemp + local LAST_OUT=/tmp/tmp.ZHqEkDHrx9 ++ mktemp + local LAST_ERR=/tmp/tmp.ICmcmLb29S + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace cert-manager + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.ZHqEkDHrx9 namespace/cert-manager created + cat /tmp/tmp.ICmcmLb29S + rm /tmp/tmp.ZHqEkDHrx9 /tmp/tmp.ICmcmLb29S + return 0 + kubectl_bin label namespace cert-manager certmanager.k8s.io/disable-validation=true ++ mktemp + local LAST_OUT=/tmp/tmp.8GZQtCGI65 ++ mktemp + local LAST_ERR=/tmp/tmp.ZTlv0Hyc88 + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl label namespace cert-manager certmanager.k8s.io/disable-validation=true + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.8GZQtCGI65 namespace/cert-manager labeled + cat /tmp/tmp.ZTlv0Hyc88 + rm /tmp/tmp.8GZQtCGI65 /tmp/tmp.ZTlv0Hyc88 + return 0 + kubectl_bin apply -f https://github.com/jetstack/cert-manager/releases/download/v1.20.2/cert-manager.yaml --validate=false ++ mktemp + local LAST_OUT=/tmp/tmp.ml5iV2nb0A ++ mktemp + local LAST_ERR=/tmp/tmp.BPSvmil8N4 + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.20.2/cert-manager.yaml --validate=false + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.ml5iV2nb0A namespace/cert-manager configured customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/orders.acme.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/clusterissuers.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io unchanged serviceaccount/cert-manager-cainjector created serviceaccount/cert-manager created serviceaccount/cert-manager-webhook created clusterrole.rbac.authorization.k8s.io/cert-manager-cainjector unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-issuers unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificates unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-orders unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-challenges unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-cluster-view unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-view unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-edit unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-approve:cert-manager-io unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificatesigningrequests unchanged clusterrole.rbac.authorization.k8s.io/cert-manager-webhook:subjectaccessreviews unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-cainjector unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-issuers unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificates unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-orders unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-challenges unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-approve:cert-manager-io unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificatesigningrequests unchanged clusterrolebinding.rbac.authorization.k8s.io/cert-manager-webhook:subjectaccessreviews unchanged role.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection unchanged role.rbac.authorization.k8s.io/cert-manager:leaderelection unchanged role.rbac.authorization.k8s.io/cert-manager-tokenrequest created role.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created rolebinding.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection unchanged rolebinding.rbac.authorization.k8s.io/cert-manager:leaderelection unchanged rolebinding.rbac.authorization.k8s.io/cert-manager-tokenrequest created rolebinding.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving created service/cert-manager-cainjector created service/cert-manager created service/cert-manager-webhook created deployment.apps/cert-manager-cainjector created deployment.apps/cert-manager created deployment.apps/cert-manager-webhook created mutatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook configured validatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook configured + cat /tmp/tmp.BPSvmil8N4 Warning: resource namespaces/cert-manager is missing the kubectl.kubernetes.io/last-applied-configuration annotation which is required by kubectl apply. kubectl apply should only be used on resources created declaratively by either kubectl create --save-config or kubectl apply. The missing annotation will be patched automatically. + rm /tmp/tmp.ml5iV2nb0A /tmp/tmp.BPSvmil8N4 + return 0 + '[' '' == 4.10 ']' + kubectl_bin -n cert-manager rollout status deployment/cert-manager --timeout=120s ++ mktemp + local LAST_OUT=/tmp/tmp.DLHWH4Nexx ++ mktemp + local LAST_ERR=/tmp/tmp.1QppNwYbA3 + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager rollout status deployment/cert-manager --timeout=120s + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.DLHWH4Nexx deployment "cert-manager" successfully rolled out + cat /tmp/tmp.1QppNwYbA3 + rm /tmp/tmp.DLHWH4Nexx /tmp/tmp.1QppNwYbA3 + return 0 + kubectl_bin -n cert-manager rollout status deployment/cert-manager-cainjector --timeout=120s ++ mktemp + local LAST_OUT=/tmp/tmp.cZlALFtYlG ++ mktemp + local LAST_ERR=/tmp/tmp.vTSXFOcfOm + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager rollout status deployment/cert-manager-cainjector --timeout=120s + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.cZlALFtYlG deployment "cert-manager-cainjector" successfully rolled out + cat /tmp/tmp.vTSXFOcfOm + rm /tmp/tmp.cZlALFtYlG /tmp/tmp.vTSXFOcfOm + return 0 + kubectl_bin -n cert-manager rollout status deployment/cert-manager-webhook --timeout=120s ++ mktemp + local LAST_OUT=/tmp/tmp.TCyLSwDkd6 ++ mktemp + local LAST_ERR=/tmp/tmp.42X3BGN02S + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager rollout status deployment/cert-manager-webhook --timeout=120s + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.TCyLSwDkd6 deployment "cert-manager-webhook" successfully rolled out + cat /tmp/tmp.42X3BGN02S + rm /tmp/tmp.TCyLSwDkd6 /tmp/tmp.42X3BGN02S + return 0 + log 'waiting for cert-manager webhook caBundle to be injected' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:30:22+0000]' waiting for cert-manager webhook caBundle to be injected [2026-10-05T14:30:22+0000] waiting for cert-manager webhook caBundle to be injected ++ date +%s + local deadline=1791210742 + grep -q . + kubectl_bin get validatingwebhookconfigurations cert-manager-webhook -o 'jsonpath={.webhooks[0].clientConfig.caBundle}' + log 'probing cert-manager webhook' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:30:23+0000]' probing cert-manager webhook [2026-10-05T14:30:23+0000] probing cert-manager webhook + local probe_file ++ mktemp + probe_file=/tmp/tmp.ryUa9FOELn + cat + local retries=0 + kubectl_bin apply -f /tmp/tmp.ryUa9FOELn --dry-run=server + rm -f /tmp/tmp.ryUa9FOELn + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/service-account.yml ++ mktemp + local LAST_OUT=/tmp/tmp.El12daPTV6 ++ mktemp + local LAST_ERR=/tmp/tmp.nojojeDL88 + 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-2546/e2e-tests/security-context/conf/service-account.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.El12daPTV6 serviceaccount/percona-xtradb-cluster-operator-workload created + cat /tmp/tmp.nojojeDL88 + rm /tmp/tmp.El12daPTV6 /tmp/tmp.nojojeDL88 + return 0 + [[ -n '' ]] + desc 'create first PXC cluster' + set +o xtrace ----------------------------------------------------------------------------------- create first PXC cluster ----------------------------------------------------------------------------------- + cluster=sec-context + spinup_pxc sec-context /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context.yml 3 10 /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/secrets_without_tls.yml + local cluster=sec-context + local config=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context.yml + local size=3 + local sleep=10 + local secretsFile=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/secrets_without_tls.yml + local pxcClientFile=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/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-2546/e2e-tests/conf/secrets_without_tls.yml ++ mktemp + local LAST_OUT=/tmp/tmp.QQRrlGNWTU ++ mktemp + local LAST_ERR=/tmp/tmp.iO6GQTQeCU + 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-2546/e2e-tests/conf/secrets_without_tls.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.QQRrlGNWTU secret/my-cluster-secrets created + cat /tmp/tmp.iO6GQTQeCU + rm /tmp/tmp.QQRrlGNWTU /tmp/tmp.iO6GQTQeCU + return 0 + apply_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/client.yml + local config_file=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/client.yml + local pvc_name= + '[' -z '' ']' + kubectl_bin apply -f - + cat_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/client.yml '' + local input_file=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/client.yml + local pvc_name= + /usr/bin/sed -e s~minio-service.#namespace~minio-service.security-context-23097~ + /usr/bin/sed -e 's#image:.*-logcollector$#image: perconalab/fluentbit:main-logcollector#' + /usr/bin/sed -e 's#apply:.*#apply: Never#' + /usr/bin/sed -e 's#image:.*-haproxy$#image: perconalab/percona-xtradb-cluster-operator:main-haproxy#' + /usr/bin/sed -e 's#claimName:..*-backup-pvc$#claimName: #' + /usr/bin/sed -e 's#image:.*-proxysql$#image: perconalab/percona-xtradb-cluster-operator:main-proxysql#' + /usr/bin/sed -e 's#apiVersion: pxc.percona.com/v.*$#apiVersion: pxc.percona.com/v1#' + /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:.*-backup$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup#' + /usr/bin/sed -e 's#image:.*-init$#image: perconalab/percona-xtradb-cluster-operator:PR-2546-caf25420#' + /usr/bin/sed -e 's#image:.*\/percona-xtradb-cluster:.*$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.P1aZJ8eotT + /usr/bin/sed -e 's#image:.*-pmm$#image: perconalab/pmm-client:dev-latest#' ++ mktemp + local LAST_ERR=/tmp/tmp.spObot6MoX + 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.P1aZJ8eotT deployment.apps/pxc-client created + cat /tmp/tmp.spObot6MoX + rm /tmp/tmp.P1aZJ8eotT /tmp/tmp.spObot6MoX + return 0 + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + apply_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context.yml + local config_file=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context.yml + local pvc_name= + '[' -z '' ']' + kubectl_bin apply -f - + cat_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context.yml '' + local input_file=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context.yml + local pvc_name= + /usr/bin/sed -e 's#image:.*-proxysql$#image: perconalab/percona-xtradb-cluster-operator:main-proxysql#' + /usr/bin/sed -e 's#claimName:..*-backup-pvc$#claimName: #' + /usr/bin/sed -e 's#image:.*-backup$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup#' + /usr/bin/sed -e 's#apply:.*#apply: Never#' + /usr/bin/sed -e 's#image:.*-pmm$#image: perconalab/pmm-client:dev-latest#' ++ mktemp + /usr/bin/sed -e 's#image:.*-haproxy$#image: perconalab/percona-xtradb-cluster-operator:main-haproxy#' + local LAST_OUT=/tmp/tmp.4sMtNhrJcD + /usr/bin/sed -e 's#image:.*-logcollector$#image: perconalab/fluentbit:main-logcollector#' + /usr/bin/sed -e 's#apiVersion: pxc.percona.com/v.*$#apiVersion: pxc.percona.com/v1#' + /usr/bin/sed -e s~minio-service.#namespace~minio-service.security-context-23097~ + /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-2546-caf25420#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context.yml ++ mktemp + local LAST_ERR=/tmp/tmp.wr8h4gsN0D + 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.4sMtNhrJcD perconaxtradbcluster.pxc.percona.com/sec-context created + cat /tmp/tmp.wr8h4gsN0D + rm /tmp/tmp.4sMtNhrJcD /tmp/tmp.wr8h4gsN0D + return 0 + desc 'waiting pods to be running for sec-context' + set +o xtrace ----------------------------------------------------------------------------------- waiting pods to be running for sec-context ----------------------------------------------------------------------------------- ++ get_proxy sec-context ++ local target_cluster=sec-context +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.1tb2zyyIZF ++++ mktemp +++ local LAST_ERR=/tmp/tmp.bwew77HULJ +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.1tb2zyyIZF +++ cat /tmp/tmp.bwew77HULJ +++ rm /tmp/tmp.1tb2zyyIZF /tmp/tmp.bwew77HULJ +++ return 0 ++ [[ '' == \t\r\u\e ]] +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.SWPtgm2Ylz ++++ mktemp +++ local LAST_ERR=/tmp/tmp.6eOwTkWOnH +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.SWPtgm2Ylz +++ cat /tmp/tmp.6eOwTkWOnH +++ rm /tmp/tmp.SWPtgm2Ylz /tmp/tmp.6eOwTkWOnH +++ return 0 ++ [[ true == \t\r\u\e ]] ++ echo sec-context-proxysql ++ return + local proxy=sec-context-proxysql ++ get_proxy_size sec-context ++ local cluster=sec-context ++ local size=0 +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.G8V1VrQl3L ++++ mktemp +++ local LAST_ERR=/tmp/tmp.5Gl8URvtK6 +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.G8V1VrQl3L +++ cat /tmp/tmp.5Gl8URvtK6 +++ rm /tmp/tmp.G8V1VrQl3L /tmp/tmp.5Gl8URvtK6 +++ return 0 ++ [[ '' == \t\r\u\e ]] +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.pouEIvoU73 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.KbewFRtqmD +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.pouEIvoU73 +++ cat /tmp/tmp.KbewFRtqmD +++ rm /tmp/tmp.pouEIvoU73 /tmp/tmp.KbewFRtqmD +++ return 0 ++ [[ true == \t\r\u\e ]] +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.size}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.sjLub64GKB ++++ mktemp +++ local LAST_ERR=/tmp/tmp.SiTcyWry3M +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.size}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.sjLub64GKB +++ cat /tmp/tmp.SiTcyWry3M +++ rm /tmp/tmp.sjLub64GKB /tmp/tmp.SiTcyWry3M +++ return 0 ++ size=2 ++ echo 2 + local proxy_size=2 + wait_for_running sec-context-pxc 3 + local name=sec-context-pxc + local size=3 + local last_pod + local max_retry=480 + [[ -z sec-context-pxc ]] + [[ 3 -le 0 ]] + last_pod=2 + desc 'Waiting for 3 running pods for sec-context-pxc' + set +o xtrace ----------------------------------------------------------------------------------- Waiting for 3 running pods for sec-context-pxc ----------------------------------------------------------------------------------- ++ seq 0 2 + for i in $(seq 0 $last_pod) + wait_pod sec-context-pxc-0 480 + local pod=sec-context-pxc-0 + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ echo sec-context-pxc-0 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container=pxc + set +o xtrace pod/sec-context-pxc-0 condition met waiting for pod/sec-context-pxc-0 to become Ready.Ok + for i in $(seq 0 $last_pod) + wait_pod sec-context-pxc-1 480 + local pod=sec-context-pxc-1 + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ echo sec-context-pxc-1 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container=pxc + set +o xtrace pod/sec-context-pxc-1 condition met waiting for pod/sec-context-pxc-1 to become Ready.Ok + for i in $(seq 0 $last_pod) + wait_pod sec-context-pxc-2 480 + local pod=sec-context-pxc-2 + local max_retry=480 + local ns= ++ echo sec-context-pxc-2 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container=pxc + set +o xtrace pod/sec-context-pxc-2 condition met waiting for pod/sec-context-pxc-2 to become Ready.Ok + wait_for_running sec-context-proxysql 2 + local name=sec-context-proxysql + local size=2 + local last_pod + local max_retry=480 + [[ -z sec-context-proxysql ]] + [[ 2 -le 0 ]] + last_pod=1 + desc 'Waiting for 2 running pods for sec-context-proxysql' + set +o xtrace ----------------------------------------------------------------------------------- Waiting for 2 running pods for sec-context-proxysql ----------------------------------------------------------------------------------- ++ seq 0 1 + for i in $(seq 0 $last_pod) + wait_pod sec-context-proxysql-0 480 + local pod=sec-context-proxysql-0 + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo sec-context-proxysql-0 ++ grep -E '^(pxc|proxysql)$' + local container=proxysql + set +o xtrace pod/sec-context-proxysql-0 condition met waiting for pod/sec-context-proxysql-0 to become Ready.Ok + for i in $(seq 0 $last_pod) + wait_pod sec-context-proxysql-1 480 + local pod=sec-context-proxysql-1 + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' ++ echo sec-context-proxysql-1 + local container=proxysql + set +o xtrace pod/sec-context-proxysql-1 condition met waiting for pod/sec-context-proxysql-1 to become Ready.Ok + wait_cluster_consistency sec-context 3 2 + local cluster_name=sec-context + local pxc_size=3 + local proxy_size=2 + desc 'wait cluster consistency' + set +o xtrace ----------------------------------------------------------------------------------- wait cluster consistency ----------------------------------------------------------------------------------- + local max_seconds=1500 + local delay=5 + local retries=300 + local pxc_ready + local proxy_ready + sleep 7 + echo -n 'waiting for pxc/sec-context to be ready' waiting for pxc/sec-context to be ready++ seq 1 300 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CDgUuRnFND +++ mktemp ++ local LAST_ERR=/tmp/tmp.JfIntrDgzr ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.CDgUuRnFND ++ cat /tmp/tmp.JfIntrDgzr ++ rm /tmp/tmp.CDgUuRnFND /tmp/tmp.JfIntrDgzr ++ return 0 + state=ready ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Jgq3Dop1by +++ mktemp ++ local LAST_ERR=/tmp/tmp.Kn3qhVVbrO ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.Jgq3Dop1by ++ cat /tmp/tmp.Kn3qhVVbrO ++ rm /tmp/tmp.Jgq3Dop1by /tmp/tmp.Kn3qhVVbrO ++ return 0 + pxc_ready=3 + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.bnN68APwJa ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.4g6U54Yc1o +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.bnN68APwJa +++++ cat /tmp/tmp.4g6U54Yc1o +++++ rm /tmp/tmp.bnN68APwJa /tmp/tmp.4g6U54Yc1o +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.oedneLeMXU ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.fiuPFh5Wbi +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.oedneLeMXU +++++ cat /tmp/tmp.fiuPFh5Wbi +++++ rm /tmp/tmp.oedneLeMXU /tmp/tmp.fiuPFh5Wbi +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.tVC1B7oB5j +++ mktemp ++ local LAST_ERR=/tmp/tmp.Mep8UCEmNH ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.tVC1B7oB5j ++ cat /tmp/tmp.Mep8UCEmNH ++ rm /tmp/tmp.tVC1B7oB5j /tmp/tmp.Mep8UCEmNH ++ return 0 + proxy_ready=2 + [[ ready == \r\e\a\d\y ]] + [[ 3 == \3 ]] + [[ 2 == \2 ]] + echo + return + sleep 10 ++ kubectl get pxc sec-context -o 'jsonpath={.spec.secretsName}' + local secret_name=my-cluster-secrets ++ getSecretData my-cluster-secrets root ++ local secretName=my-cluster-secrets ++ local dataKey=root ++ base64 --decode ++ kubectl_bin get secrets/my-cluster-secrets '--template={{.data.root}}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ht36MfoJTy +++ mktemp ++ local LAST_ERR=/tmp/tmp.eMyMKWDrq8 ++ 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.Ht36MfoJTy ++ cat /tmp/tmp.eMyMKWDrq8 ++ rm /tmp/tmp.Ht36MfoJTy /tmp/tmp.eMyMKWDrq8 ++ 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 sec-context-pxc-0.sec-context-pxc -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 sec-context-pxc-0.sec-context-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.mus7QmbcLu +++ mktemp ++ local LAST_ERR=/tmp/tmp.lFFGBJX0bP ++ 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.mus7QmbcLu ++ cat /tmp/tmp.lFFGBJX0bP ++ rm /tmp/tmp.mus7QmbcLu /tmp/tmp.lFFGBJX0bP ++ return 0 + client_pod=pxc-client-6fc75f888d-jz2t2 + wait_pod pxc-client-6fc75f888d-jz2t2 + local pod=pxc-client-6fc75f888d-jz2t2 + local max_retry=480 + local ns= ++ echo pxc-client-6fc75f888d-jz2t2 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-6fc75f888d-jz2t2 condition met waiting for pod/pxc-client-6fc75f888d-jz2t2 to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + write_data sec-context 100500 no-proxy -P3306 + local cluster=sec-context + local id=100500 + local use_proxy=no-proxy + local port=-P3306 + local database=myApp + local table=myApp + local root_pass ++ get_password sec-context root ++ local cluster=sec-context ++ local user=root +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.secretsName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.8tpPwxkTAW ++++ mktemp +++ local LAST_ERR=/tmp/tmp.2RrgU3lTrN +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.secretsName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.8tpPwxkTAW +++ cat /tmp/tmp.2RrgU3lTrN +++ rm /tmp/tmp.8tpPwxkTAW /tmp/tmp.2RrgU3lTrN +++ return 0 ++ getSecretData my-cluster-secrets root ++ local secretName=my-cluster-secrets ++ local dataKey=root ++ base64 --decode ++ kubectl_bin get secrets/my-cluster-secrets '--template={{.data.root}}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.WEGydDBlVq +++ mktemp ++ local LAST_ERR=/tmp/tmp.AmcPEcG0WS ++ 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.WEGydDBlVq ++ cat /tmp/tmp.AmcPEcG0WS ++ rm /tmp/tmp.WEGydDBlVq /tmp/tmp.AmcPEcG0WS ++ return 0 + root_pass=root_password ++ get_proxy sec-context ++ local target_cluster=sec-context +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.MUzYJBvOMX ++++ mktemp +++ local LAST_ERR=/tmp/tmp.qOQSobUgB8 +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.MUzYJBvOMX +++ cat /tmp/tmp.qOQSobUgB8 +++ rm /tmp/tmp.MUzYJBvOMX /tmp/tmp.qOQSobUgB8 +++ return 0 ++ [[ '' == \t\r\u\e ]] +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.P40CM5fblq ++++ mktemp +++ local LAST_ERR=/tmp/tmp.TP1AkpKAtK +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.P40CM5fblq +++ cat /tmp/tmp.TP1AkpKAtK +++ rm /tmp/tmp.P40CM5fblq /tmp/tmp.TP1AkpKAtK +++ return 0 ++ [[ true == \t\r\u\e ]] ++ echo sec-context-proxysql ++ return + proxy=sec-context-proxysql + [[ no-proxy == true ]] + [[ no-proxy == \u\s\e\-\p\r\o\x\y ]] + host='-h sec-context-pxc-0.sec-context-pxc' + run_mysql 'INSERT IGNORE myApp.myApp (id) VALUES (100500)' '-h sec-context-pxc-0.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local 'command=INSERT IGNORE myApp.myApp (id) VALUES (100500)' + local 'uri=-h sec-context-pxc-0.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.5fOdIt9ygY +++ mktemp ++ local LAST_ERR=/tmp/tmp.pcmVlUmQcM ++ 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.5fOdIt9ygY ++ cat /tmp/tmp.pcmVlUmQcM ++ rm /tmp/tmp.5fOdIt9ygY /tmp/tmp.pcmVlUmQcM ++ return 0 + client_pod=pxc-client-6fc75f888d-jz2t2 + wait_pod pxc-client-6fc75f888d-jz2t2 + local pod=pxc-client-6fc75f888d-jz2t2 + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' ++ echo pxc-client-6fc75f888d-jz2t2 + local container= + set +o xtrace pod/pxc-client-6fc75f888d-jz2t2 condition met waiting for pod/pxc-client-6fc75f888d-jz2t2 to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + sleep 30 + desc 'compare initial data' + set +o xtrace ----------------------------------------------------------------------------------- compare initial data ----------------------------------------------------------------------------------- + compare_data sec-context select-1 no-proxy -P3306 + local cluster=sec-context + local compare=select-1 + local use_proxy=no-proxy + local port=-P3306 + local database=myApp + local table=myApp + local size + local root_pass ++ get_password sec-context root ++ local cluster=sec-context ++ local user=root +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.secretsName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.UK9gA1UOM1 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.Xf5mveIkrp +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.secretsName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.UK9gA1UOM1 +++ cat /tmp/tmp.Xf5mveIkrp +++ rm /tmp/tmp.UK9gA1UOM1 /tmp/tmp.Xf5mveIkrp +++ return 0 ++ getSecretData my-cluster-secrets root ++ local secretName=my-cluster-secrets ++ local dataKey=root ++ base64 --decode ++ kubectl_bin get secrets/my-cluster-secrets '--template={{.data.root}}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.zjYvhGgG9H +++ mktemp ++ local LAST_ERR=/tmp/tmp.bruuRvazTC ++ 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.zjYvhGgG9H ++ cat /tmp/tmp.bruuRvazTC ++ rm /tmp/tmp.zjYvhGgG9H /tmp/tmp.bruuRvazTC ++ return 0 + root_pass=root_password + [[ no-proxy == true ]] + [[ no-proxy == \u\s\e\-\p\r\o\x\y ]] ++ get_pxc_size sec-context ++ local cluster=sec-context ++ local size=0 +++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.pxc.size}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.zJ3sJcD3oI ++++ mktemp +++ local LAST_ERR=/tmp/tmp.UzTd3mPkSr +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc sec-context -o 'jsonpath={.spec.pxc.size}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.zJ3sJcD3oI +++ cat /tmp/tmp.UzTd3mPkSr +++ rm /tmp/tmp.zJ3sJcD3oI /tmp/tmp.UzTd3mPkSr +++ return 0 ++ size=3 ++ echo 3 + size=3 ++ seq 0 2 + for i in $(seq 0 $((size - 1))) + compare_mysql_cmd select-1 'SELECT id FROM myApp.myApp ORDER BY id;' '-h sec-context-pxc-0.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local command_id=select-1 + local 'command=SELECT id FROM myApp.myApp ORDER BY id;' + local 'uri=-h sec-context-pxc-0.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/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-2546/e2e-tests/security-context/compare/select-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT id FROM myApp.myApp ORDER BY id;' '-h sec-context-pxc-0.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local 'command=SELECT id FROM myApp.myApp ORDER BY id;' + local 'uri=-h sec-context-pxc-0.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.u1MZCHslvf +++ mktemp ++ local LAST_ERR=/tmp/tmp.2H2haUgGew ++ 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.u1MZCHslvf ++ cat /tmp/tmp.2H2haUgGew ++ rm /tmp/tmp.u1MZCHslvf /tmp/tmp.2H2haUgGew ++ return 0 + client_pod=pxc-client-6fc75f888d-jz2t2 + wait_pod pxc-client-6fc75f888d-jz2t2 + local pod=pxc-client-6fc75f888d-jz2t2 + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo pxc-client-6fc75f888d-jz2t2 ++ grep -E '^(pxc|proxysql)$' + local container= + set +o xtrace pod/pxc-client-6fc75f888d-jz2t2 condition met waiting for pod/pxc-client-6fc75f888d-jz2t2 to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + [[ ! -s /tmp/tmp.RvUbHvZPc0/select-1.sql ]] ++ grep 'Unknown MySQL server host' /tmp/tmp.RvUbHvZPc0/select-1.sql + [[ -n '' ]] + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/select-1.sql /tmp/tmp.RvUbHvZPc0/select-1.sql + for i in $(seq 0 $((size - 1))) + compare_mysql_cmd select-1 'SELECT id FROM myApp.myApp ORDER BY id;' '-h sec-context-pxc-1.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local command_id=select-1 + local 'command=SELECT id FROM myApp.myApp ORDER BY id;' + local 'uri=-h sec-context-pxc-1.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/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-2546/e2e-tests/security-context/compare/select-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT id FROM myApp.myApp ORDER BY id;' '-h sec-context-pxc-1.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local 'command=SELECT id FROM myApp.myApp ORDER BY id;' + local 'uri=-h sec-context-pxc-1.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.cujMTgMVKp +++ mktemp ++ local LAST_ERR=/tmp/tmp.lNfP9r8G8h ++ 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.cujMTgMVKp ++ cat /tmp/tmp.lNfP9r8G8h ++ rm /tmp/tmp.cujMTgMVKp /tmp/tmp.lNfP9r8G8h ++ return 0 + client_pod=pxc-client-6fc75f888d-jz2t2 + wait_pod pxc-client-6fc75f888d-jz2t2 + local pod=pxc-client-6fc75f888d-jz2t2 + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ echo pxc-client-6fc75f888d-jz2t2 ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' + local container= + set +o xtrace pod/pxc-client-6fc75f888d-jz2t2 condition met waiting for pod/pxc-client-6fc75f888d-jz2t2 to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + [[ ! -s /tmp/tmp.RvUbHvZPc0/select-1.sql ]] ++ grep 'Unknown MySQL server host' /tmp/tmp.RvUbHvZPc0/select-1.sql + [[ -n '' ]] + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/select-1.sql /tmp/tmp.RvUbHvZPc0/select-1.sql + for i in $(seq 0 $((size - 1))) + compare_mysql_cmd select-1 'SELECT id FROM myApp.myApp ORDER BY id;' '-h sec-context-pxc-2.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local command_id=select-1 + local 'command=SELECT id FROM myApp.myApp ORDER BY id;' + local 'uri=-h sec-context-pxc-2.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/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-2546/e2e-tests/security-context/compare/select-1-80.sql ]] + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 5\.7 ]] + run_mysql 'SELECT id FROM myApp.myApp ORDER BY id;' '-h sec-context-pxc-2.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' + local 'command=SELECT id FROM myApp.myApp ORDER BY id;' + local 'uri=-h sec-context-pxc-2.sec-context-pxc -P3306 -uroot -p'\''root_password'\''' ++ get_client_pod ++ kubectl_bin get pods --selector=name=pxc-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.TJX4DPmXEB +++ mktemp ++ local LAST_ERR=/tmp/tmp.JO4lgbUZVn ++ 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.TJX4DPmXEB ++ cat /tmp/tmp.JO4lgbUZVn ++ rm /tmp/tmp.TJX4DPmXEB /tmp/tmp.JO4lgbUZVn ++ return 0 + client_pod=pxc-client-6fc75f888d-jz2t2 + wait_pod pxc-client-6fc75f888d-jz2t2 + local pod=pxc-client-6fc75f888d-jz2t2 + local max_retry=480 + local ns= ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ grep -E '^(pxc|proxysql)$' ++ echo pxc-client-6fc75f888d-jz2t2 + local container= + set +o xtrace pod/pxc-client-6fc75f888d-jz2t2 condition met waiting for pod/pxc-client-6fc75f888d-jz2t2 to become ReadyDefaulted container "pxc-client" out of: pxc-client, backup .Ok + set +o xtrace + [[ ! -s /tmp/tmp.RvUbHvZPc0/select-1.sql ]] ++ grep 'Unknown MySQL server host' /tmp/tmp.RvUbHvZPc0/select-1.sql + [[ -n '' ]] + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/select-1.sql /tmp/tmp.RvUbHvZPc0/select-1.sql + is_keyring_plugin_in_use sec-context + local cluster=sec-context + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + grep -E -o 'early-plugin-load=keyring_\w+.so' + kubectl exec sec-context-pxc-0 -c pxc -- bash -c 'cat /etc/mysql/node.cnf' + return 1 + desc 'check if service and statefulset created with expected config' + set +o xtrace ----------------------------------------------------------------------------------- check if service and statefulset created with expected config ----------------------------------------------------------------------------------- + compare_kubectl statefulset/sec-context-pxc + local resource=statefulset/sec-context-pxc + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc.yml + local new_result=/tmp/tmp.RvUbHvZPc0/statefulset_sec-context-pxc.yml + desc 'compare statefulset/sec-context-pxc-' + set +o xtrace ----------------------------------------------------------------------------------- compare statefulset/sec-context-pxc- ----------------------------------------------------------------------------------- + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-eks.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-80.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + version_gt 1.33 ++ echo '1.34 >= 1.33' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-k133.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-k129.yml ']' + version_gt 1.27 ++ echo '1.34 >= 1.27' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-k127.yml ']' + version_gt 1.24 ++ echo '1.34 >= 1.24' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-k124.yml ']' + version_gt 1.22 ++ echo '1.34 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-k122.yml ']' + version_gt 1.21 ++ echo '1.34 >= 1.21' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-k121.yml ']' + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-oc.yml ']' + version_gt 1.29 ++ echo '1.34 >= 1.29' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-k129-oc.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-eks.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-aks.yml ']' + kubectl_bin get -o yaml statefulset/sec-context-pxc + yq eval ' del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "CLUSTER_HASH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "BACKUP_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_URL")) | del(.spec.template.spec.containers[].env[] | select(.name == "AZURE_CONTAINER_NAME")) | del(.spec.template.spec.containers[].env[] | select(.name == "XTRABACKUP_ENABLED")) | del(.metadata.selfLink) | del(.metadata.deletionTimestamp) | del(.metadata.labels."batch.kubernetes.io/job-name") | del(.metadata.labels."job-name") | del(.metadata.labels."topology.kubernetes.io/region") | del(.metadata.labels."topology.kubernetes.io/zone") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.metadata.annotations."kubernetes.io/psp") | del(.metadata.annotations."batch.kubernetes.io/job-tracking") | del(.metadata.annotations."networking.gke.io/target-pool") | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."k8s.v1.cni.cncf.io*") | del(.metadata.annotations."k8s.ovn.org/pod-networks") | del(.metadata.annotations."kubernetes.digitalocean.com/load-balancer-id") | del(.metadata.annotations."service.beta.kubernetes.io/do-loadbalancer-type") | del(.spec.template.metadata.annotations."last-applied-secret") | del(.spec.template.metadata.labels."batch.kubernetes.io/job-name") | del(.spec.template.metadata.labels."job-name") | del(.. | select(has("batch.kubernetes.io/controller-uid"))."batch.kubernetes.io/controller-uid") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.spec.nodeName) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/env-secret-config-hash"))."percona.com/env-secret-config-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.. | select(has("kubectl.kubernetes.io/default-container"))."kubectl.kubernetes.io/default-container") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.. | select(has("imagePullSecrets")).imagePullSecrets) | del(.. | select(has("enableServiceLinks")).enableServiceLinks) | del(.status) | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.metadata.ownerReferences[].apiVersion) | del(.. | select(has("controller-uid")).controller-uid) | del(.. | select(has("preemptionPolicy")).preemptionPolicy) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | del(.spec.updateStrategy.rollingUpdate.maxUnavailable) | (.. | select(. == "policy/v1beta1")) = "policy/v1" | del(.. | select(has("kubernetes.io/hostname"))."kubernetes.io/hostname") | (.. | select(tag == "!!str")) |= sub("security-context-23097", "namespace") | (.. | select(tag == "!!str")) |= sub("kube-api-access-.*", "kube-api-access") | del(.. | select(has("annotations")).annotations | select(length==0)) | del(.spec.crVersion) | del(.. | select(.[] == "percona-xtradb-cluster-operator-workload-token*"))' - ++ mktemp + local LAST_OUT=/tmp/tmp.PI7E57sBDt ++ mktemp + local LAST_ERR=/tmp/tmp.bRKKp4fz1W + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/sec-context-pxc + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.PI7E57sBDt + cat /tmp/tmp.bRKKp4fz1W + rm /tmp/tmp.PI7E57sBDt /tmp/tmp.bRKKp4fz1W + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc.yml /tmp/tmp.RvUbHvZPc0/statefulset_sec-context-pxc.yml + log 'compare_kubectl: statefulset/sec-context-pxc OK' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:38:26+0000]' compare_kubectl: statefulset/sec-context-pxc OK [2026-10-05T14:38:26+0000] compare_kubectl: statefulset/sec-context-pxc OK + compare_kubectl statefulset/sec-context-proxysql + local resource=statefulset/sec-context-proxysql + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql.yml + local new_result=/tmp/tmp.RvUbHvZPc0/statefulset_sec-context-proxysql.yml + desc 'compare statefulset/sec-context-proxysql-' + set +o xtrace ----------------------------------------------------------------------------------- compare statefulset/sec-context-proxysql- ----------------------------------------------------------------------------------- + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-eks.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-80.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + version_gt 1.33 ++ echo '1.34 >= 1.33' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-k133.yml ']' + version_gt 1.29 ++ echo '1.34 >= 1.29' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-k129.yml ']' + version_gt 1.27 ++ bc -l ++ echo '1.34 >= 1.27' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-k127.yml ']' + version_gt 1.24 ++ bc -l ++ echo '1.34 >= 1.24' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-k124.yml ']' + version_gt 1.22 ++ bc -l ++ echo '1.34 >= 1.22' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-k122.yml ']' + version_gt 1.21 ++ bc -l ++ echo '1.34 >= 1.21' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-k121.yml ']' + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-oc.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-k129-oc.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-eks.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-aks.yml ']' + yq eval ' del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "CLUSTER_HASH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "BACKUP_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_URL")) | del(.spec.template.spec.containers[].env[] | select(.name == "AZURE_CONTAINER_NAME")) | del(.spec.template.spec.containers[].env[] | select(.name == "XTRABACKUP_ENABLED")) | del(.metadata.selfLink) | del(.metadata.deletionTimestamp) | del(.metadata.labels."batch.kubernetes.io/job-name") | del(.metadata.labels."job-name") | del(.metadata.labels."topology.kubernetes.io/region") | del(.metadata.labels."topology.kubernetes.io/zone") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.metadata.annotations."kubernetes.io/psp") | del(.metadata.annotations."batch.kubernetes.io/job-tracking") | del(.metadata.annotations."networking.gke.io/target-pool") | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."k8s.v1.cni.cncf.io*") | del(.metadata.annotations."k8s.ovn.org/pod-networks") | del(.metadata.annotations."kubernetes.digitalocean.com/load-balancer-id") | del(.metadata.annotations."service.beta.kubernetes.io/do-loadbalancer-type") | del(.spec.template.metadata.annotations."last-applied-secret") | del(.spec.template.metadata.labels."batch.kubernetes.io/job-name") | del(.spec.template.metadata.labels."job-name") | del(.. | select(has("batch.kubernetes.io/controller-uid"))."batch.kubernetes.io/controller-uid") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.spec.nodeName) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/env-secret-config-hash"))."percona.com/env-secret-config-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.. | select(has("kubectl.kubernetes.io/default-container"))."kubectl.kubernetes.io/default-container") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.. | select(has("imagePullSecrets")).imagePullSecrets) | del(.. | select(has("enableServiceLinks")).enableServiceLinks) | del(.status) | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.metadata.ownerReferences[].apiVersion) | del(.. | select(has("controller-uid")).controller-uid) | del(.. | select(has("preemptionPolicy")).preemptionPolicy) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | del(.spec.updateStrategy.rollingUpdate.maxUnavailable) | (.. | select(. == "policy/v1beta1")) = "policy/v1" | del(.. | select(has("kubernetes.io/hostname"))."kubernetes.io/hostname") | (.. | select(tag == "!!str")) |= sub("security-context-23097", "namespace") | (.. | select(tag == "!!str")) |= sub("kube-api-access-.*", "kube-api-access") | del(.. | select(has("annotations")).annotations | select(length==0)) | del(.spec.crVersion) | del(.. | select(.[] == "percona-xtradb-cluster-operator-workload-token*"))' - + kubectl_bin get -o yaml statefulset/sec-context-proxysql ++ mktemp + local LAST_OUT=/tmp/tmp.hQEeH6blW8 ++ mktemp + local LAST_ERR=/tmp/tmp.WdZd1iYxfX + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/sec-context-proxysql + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.hQEeH6blW8 + cat /tmp/tmp.WdZd1iYxfX + rm /tmp/tmp.hQEeH6blW8 /tmp/tmp.WdZd1iYxfX + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql.yml /tmp/tmp.RvUbHvZPc0/statefulset_sec-context-proxysql.yml + log 'compare_kubectl: statefulset/sec-context-proxysql OK' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:38:29+0000]' compare_kubectl: statefulset/sec-context-proxysql OK [2026-10-05T14:38:29+0000] compare_kubectl: statefulset/sec-context-proxysql OK + desc 'change security context in PXC cluster' + set +o xtrace ----------------------------------------------------------------------------------- change security context in PXC cluster ----------------------------------------------------------------------------------- + pfx=-changes + apply_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context-changes.yml + local config_file=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context-changes.yml + local pvc_name= + '[' -z '' ']' + kubectl_bin apply -f - + cat_config /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context-changes.yml '' + local input_file=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context-changes.yml + local pvc_name= + /usr/bin/sed -e 's#apply:.*#apply: Never#' + /usr/bin/sed -e s~minio-service.#namespace~minio-service.security-context-23097~ + /usr/bin/sed -e 's#claimName:..*-backup-pvc$#claimName: #' + /usr/bin/sed -e 's#image:.*-logcollector$#image: perconalab/fluentbit:main-logcollector#' + /usr/bin/sed -e 's#image:.*\/percona-xtradb-cluster:.*$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0#' + /usr/bin/sed -e 's#image:.*-haproxy$#image: perconalab/percona-xtradb-cluster-operator:main-haproxy#' + /usr/bin/sed -e 's#image:.*-init$#image: perconalab/percona-xtradb-cluster-operator:PR-2546-caf25420#' + /usr/bin/sed -e 's#image:.*-pmm$#image: perconalab/pmm-client:dev-latest#' + /usr/bin/sed -e 's#image:.*-proxysql$#image: perconalab/percona-xtradb-cluster-operator:main-proxysql#' + /usr/bin/sed -e 's#image:.*-backup$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup#' ++ mktemp + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context-changes.yml + /usr/bin/sed -e 's#apiVersion: pxc.percona.com/v.*$#apiVersion: pxc.percona.com/v1#' + /usr/bin/sed -e 's#image:.*-pxc\([0-9]*.[0-9]*\)\{0,1\}$#image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0#' + local LAST_OUT=/tmp/tmp.YosLt7Yeek ++ mktemp + local LAST_ERR=/tmp/tmp.mmJxiDI4qX + 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.YosLt7Yeek perconaxtradbcluster.pxc.percona.com/sec-context configured + cat /tmp/tmp.mmJxiDI4qX + rm /tmp/tmp.YosLt7Yeek /tmp/tmp.mmJxiDI4qX + return 0 + sleep 30 + desc 'check if service and statefulset changed to expected config' + set +o xtrace ----------------------------------------------------------------------------------- check if service and statefulset changed to expected config ----------------------------------------------------------------------------------- + compare_kubectl statefulset/sec-context-pxc -changes + local resource=statefulset/sec-context-pxc + local postfix=-changes + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes.yml + local new_result=/tmp/tmp.RvUbHvZPc0/statefulset_sec-context-pxc.yml + desc 'compare statefulset/sec-context-pxc--changes' + set +o xtrace ----------------------------------------------------------------------------------- compare statefulset/sec-context-pxc--changes ----------------------------------------------------------------------------------- + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-eks.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-80.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + version_gt 1.33 ++ echo '1.34 >= 1.33' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-k133.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-k129.yml ']' + version_gt 1.27 ++ echo '1.34 >= 1.27' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-k127.yml ']' + version_gt 1.24 ++ bc -l ++ echo '1.34 >= 1.24' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-k124.yml ']' + version_gt 1.22 ++ bc -l ++ echo '1.34 >= 1.22' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-k122.yml ']' + version_gt 1.21 ++ bc -l ++ echo '1.34 >= 1.21' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-k121.yml ']' + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-oc.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-k129-oc.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-eks.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes-aks.yml ']' + kubectl_bin get -o yaml statefulset/sec-context-pxc + yq eval ' del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "CLUSTER_HASH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "BACKUP_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_URL")) | del(.spec.template.spec.containers[].env[] | select(.name == "AZURE_CONTAINER_NAME")) | del(.spec.template.spec.containers[].env[] | select(.name == "XTRABACKUP_ENABLED")) | del(.metadata.selfLink) | del(.metadata.deletionTimestamp) | del(.metadata.labels."batch.kubernetes.io/job-name") | del(.metadata.labels."job-name") | del(.metadata.labels."topology.kubernetes.io/region") | del(.metadata.labels."topology.kubernetes.io/zone") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.metadata.annotations."kubernetes.io/psp") | del(.metadata.annotations."batch.kubernetes.io/job-tracking") | del(.metadata.annotations."networking.gke.io/target-pool") | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."k8s.v1.cni.cncf.io*") | del(.metadata.annotations."k8s.ovn.org/pod-networks") | del(.metadata.annotations."kubernetes.digitalocean.com/load-balancer-id") | del(.metadata.annotations."service.beta.kubernetes.io/do-loadbalancer-type") | del(.spec.template.metadata.annotations."last-applied-secret") | del(.spec.template.metadata.labels."batch.kubernetes.io/job-name") | del(.spec.template.metadata.labels."job-name") | del(.. | select(has("batch.kubernetes.io/controller-uid"))."batch.kubernetes.io/controller-uid") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.spec.nodeName) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/env-secret-config-hash"))."percona.com/env-secret-config-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.. | select(has("kubectl.kubernetes.io/default-container"))."kubectl.kubernetes.io/default-container") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.. | select(has("imagePullSecrets")).imagePullSecrets) | del(.. | select(has("enableServiceLinks")).enableServiceLinks) | del(.status) | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.metadata.ownerReferences[].apiVersion) | del(.. | select(has("controller-uid")).controller-uid) | del(.. | select(has("preemptionPolicy")).preemptionPolicy) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | del(.spec.updateStrategy.rollingUpdate.maxUnavailable) | (.. | select(. == "policy/v1beta1")) = "policy/v1" | del(.. | select(has("kubernetes.io/hostname"))."kubernetes.io/hostname") | (.. | select(tag == "!!str")) |= sub("security-context-23097", "namespace") | (.. | select(tag == "!!str")) |= sub("kube-api-access-.*", "kube-api-access") | del(.. | select(has("annotations")).annotations | select(length==0)) | del(.spec.crVersion) | del(.. | select(.[] == "percona-xtradb-cluster-operator-workload-token*"))' - ++ mktemp + local LAST_OUT=/tmp/tmp.LCxw2DUbL8 ++ mktemp + local LAST_ERR=/tmp/tmp.eFC3HSPvZW + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/sec-context-pxc + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.LCxw2DUbL8 + cat /tmp/tmp.eFC3HSPvZW + rm /tmp/tmp.LCxw2DUbL8 /tmp/tmp.eFC3HSPvZW + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes.yml /tmp/tmp.RvUbHvZPc0/statefulset_sec-context-pxc.yml + log 'compare_kubectl: statefulset/sec-context-pxc OK' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:39:07+0000]' compare_kubectl: statefulset/sec-context-pxc OK [2026-10-05T14:39:07+0000] compare_kubectl: statefulset/sec-context-pxc OK + compare_kubectl statefulset/sec-context-proxysql -changes + local resource=statefulset/sec-context-proxysql + local postfix=-changes + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes.yml + local new_result=/tmp/tmp.RvUbHvZPc0/statefulset_sec-context-proxysql.yml + desc 'compare statefulset/sec-context-proxysql--changes' + set +o xtrace ----------------------------------------------------------------------------------- compare statefulset/sec-context-proxysql--changes ----------------------------------------------------------------------------------- + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-eks.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-80.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + version_gt 1.33 ++ bc -l ++ echo '1.34 >= 1.33' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-k133.yml ']' + version_gt 1.29 ++ echo '1.34 >= 1.29' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-k129.yml ']' + version_gt 1.27 ++ echo '1.34 >= 1.27' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-k127.yml ']' + version_gt 1.24 ++ bc -l ++ echo '1.34 >= 1.24' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-k124.yml ']' + version_gt 1.22 ++ echo '1.34 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-k122.yml ']' + version_gt 1.21 ++ echo '1.34 >= 1.21' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-k121.yml ']' + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-oc.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-k129-oc.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-eks.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-aks.yml ']' + yq eval ' del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "CLUSTER_HASH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "BACKUP_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_URL")) | del(.spec.template.spec.containers[].env[] | select(.name == "AZURE_CONTAINER_NAME")) | del(.spec.template.spec.containers[].env[] | select(.name == "XTRABACKUP_ENABLED")) | del(.metadata.selfLink) | del(.metadata.deletionTimestamp) | del(.metadata.labels."batch.kubernetes.io/job-name") | del(.metadata.labels."job-name") | del(.metadata.labels."topology.kubernetes.io/region") | del(.metadata.labels."topology.kubernetes.io/zone") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.metadata.annotations."kubernetes.io/psp") | del(.metadata.annotations."batch.kubernetes.io/job-tracking") | del(.metadata.annotations."networking.gke.io/target-pool") | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."k8s.v1.cni.cncf.io*") | del(.metadata.annotations."k8s.ovn.org/pod-networks") | del(.metadata.annotations."kubernetes.digitalocean.com/load-balancer-id") | del(.metadata.annotations."service.beta.kubernetes.io/do-loadbalancer-type") | del(.spec.template.metadata.annotations."last-applied-secret") | del(.spec.template.metadata.labels."batch.kubernetes.io/job-name") | del(.spec.template.metadata.labels."job-name") | del(.. | select(has("batch.kubernetes.io/controller-uid"))."batch.kubernetes.io/controller-uid") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.spec.nodeName) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/env-secret-config-hash"))."percona.com/env-secret-config-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.. | select(has("kubectl.kubernetes.io/default-container"))."kubectl.kubernetes.io/default-container") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.. | select(has("imagePullSecrets")).imagePullSecrets) | del(.. | select(has("enableServiceLinks")).enableServiceLinks) | del(.status) | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.metadata.ownerReferences[].apiVersion) | del(.. | select(has("controller-uid")).controller-uid) | del(.. | select(has("preemptionPolicy")).preemptionPolicy) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | del(.spec.updateStrategy.rollingUpdate.maxUnavailable) | (.. | select(. == "policy/v1beta1")) = "policy/v1" | del(.. | select(has("kubernetes.io/hostname"))."kubernetes.io/hostname") | (.. | select(tag == "!!str")) |= sub("security-context-23097", "namespace") | (.. | select(tag == "!!str")) |= sub("kube-api-access-.*", "kube-api-access") | del(.. | select(has("annotations")).annotations | select(length==0)) | del(.spec.crVersion) | del(.. | select(.[] == "percona-xtradb-cluster-operator-workload-token*"))' - + kubectl_bin get -o yaml statefulset/sec-context-proxysql ++ mktemp + local LAST_OUT=/tmp/tmp.FCgtjpcDHM ++ mktemp + local LAST_ERR=/tmp/tmp.VjEnvmx6Gs + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/sec-context-proxysql + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.FCgtjpcDHM + cat /tmp/tmp.VjEnvmx6Gs + rm /tmp/tmp.FCgtjpcDHM /tmp/tmp.VjEnvmx6Gs + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes.yml /tmp/tmp.RvUbHvZPc0/statefulset_sec-context-proxysql.yml + log 'compare_kubectl: statefulset/sec-context-proxysql OK' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:39:10+0000]' compare_kubectl: statefulset/sec-context-proxysql OK [2026-10-05T14:39:10+0000] compare_kubectl: statefulset/sec-context-proxysql OK + wait_cluster_consistency sec-context 3 2 + local cluster_name=sec-context + local pxc_size=3 + local proxy_size=2 + desc 'wait cluster consistency' + set +o xtrace ----------------------------------------------------------------------------------- wait cluster consistency ----------------------------------------------------------------------------------- + local max_seconds=1500 + local delay=5 + local retries=300 + local pxc_ready + local proxy_ready + sleep 7 + echo -n 'waiting for pxc/sec-context to be ready' waiting for pxc/sec-context to be ready++ seq 1 300 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.BqnPSWNXV0 +++ mktemp ++ local LAST_ERR=/tmp/tmp.nE8ZbVaWvb ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.BqnPSWNXV0 ++ cat /tmp/tmp.nE8ZbVaWvb ++ rm /tmp/tmp.BqnPSWNXV0 /tmp/tmp.nE8ZbVaWvb ++ return 0 + state=initializing ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.e9v3mHEUTs +++ mktemp ++ local LAST_ERR=/tmp/tmp.cGsJgOSCra ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.e9v3mHEUTs ++ cat /tmp/tmp.cGsJgOSCra ++ rm /tmp/tmp.e9v3mHEUTs /tmp/tmp.cGsJgOSCra ++ return 0 + pxc_ready= + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.zCLnWGvhyC ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.YTdC4WaiGT +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.zCLnWGvhyC +++++ cat /tmp/tmp.YTdC4WaiGT +++++ rm /tmp/tmp.zCLnWGvhyC /tmp/tmp.YTdC4WaiGT +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.6z4nw7cCSs ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.S61DPjOCem +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.6z4nw7cCSs +++++ cat /tmp/tmp.S61DPjOCem +++++ rm /tmp/tmp.6z4nw7cCSs /tmp/tmp.S61DPjOCem +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.G8utec0ldD +++ mktemp ++ local LAST_ERR=/tmp/tmp.tTCzhxPMbB ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.G8utec0ldD ++ cat /tmp/tmp.tTCzhxPMbB ++ rm /tmp/tmp.G8utec0ldD /tmp/tmp.tTCzhxPMbB ++ return 0 + proxy_ready=2 + [[ initializing == \r\e\a\d\y ]] + echo -n . .+ sleep 5 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.dQbww0kYcV +++ mktemp ++ local LAST_ERR=/tmp/tmp.s8NdoIfsNd ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.dQbww0kYcV ++ cat /tmp/tmp.s8NdoIfsNd ++ rm /tmp/tmp.dQbww0kYcV /tmp/tmp.s8NdoIfsNd ++ return 0 + state=initializing ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.oTgDIciUf1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.0H15TYKzXi ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.oTgDIciUf1 ++ cat /tmp/tmp.0H15TYKzXi ++ rm /tmp/tmp.oTgDIciUf1 /tmp/tmp.0H15TYKzXi ++ return 0 + pxc_ready=1 + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.jdOP2pjrQm ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.RmvUtLSTGQ +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.jdOP2pjrQm +++++ cat /tmp/tmp.RmvUtLSTGQ +++++ rm /tmp/tmp.jdOP2pjrQm /tmp/tmp.RmvUtLSTGQ +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.K3K11swTg7 ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.rF2lrX628P +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.K3K11swTg7 +++++ cat /tmp/tmp.rF2lrX628P +++++ rm /tmp/tmp.K3K11swTg7 /tmp/tmp.rF2lrX628P +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.OJFqMgSAVM +++ mktemp ++ local LAST_ERR=/tmp/tmp.NW2wA3Q3w7 ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.OJFqMgSAVM ++ cat /tmp/tmp.NW2wA3Q3w7 ++ rm /tmp/tmp.OJFqMgSAVM /tmp/tmp.NW2wA3Q3w7 ++ return 0 + proxy_ready=2 + [[ initializing == \r\e\a\d\y ]] + echo -n . .+ sleep 5 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.SJ4Zyu2kG7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.hdqbpRHMA0 ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.SJ4Zyu2kG7 ++ cat /tmp/tmp.hdqbpRHMA0 ++ rm /tmp/tmp.SJ4Zyu2kG7 /tmp/tmp.hdqbpRHMA0 ++ return 0 + state=initializing ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qYbBtjZIX0 +++ mktemp ++ local LAST_ERR=/tmp/tmp.kRPMfnMr89 ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.qYbBtjZIX0 ++ cat /tmp/tmp.kRPMfnMr89 ++ rm /tmp/tmp.qYbBtjZIX0 /tmp/tmp.kRPMfnMr89 ++ return 0 + pxc_ready=1 + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.ii09UE8BAB ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.IZAwGJoSuN +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.ii09UE8BAB +++++ cat /tmp/tmp.IZAwGJoSuN +++++ rm /tmp/tmp.ii09UE8BAB /tmp/tmp.IZAwGJoSuN +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.BcQT3Q8uKm ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.77vEcuNFKn +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.BcQT3Q8uKm +++++ cat /tmp/tmp.77vEcuNFKn +++++ rm /tmp/tmp.BcQT3Q8uKm /tmp/tmp.77vEcuNFKn +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.irtiGYABNv +++ mktemp ++ local LAST_ERR=/tmp/tmp.8tiTzueBJd ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.irtiGYABNv ++ cat /tmp/tmp.8tiTzueBJd ++ rm /tmp/tmp.irtiGYABNv /tmp/tmp.8tiTzueBJd ++ return 0 + proxy_ready=2 + [[ initializing == \r\e\a\d\y ]] + echo -n . .+ sleep 5 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.OKvDkwtD6n +++ mktemp ++ local LAST_ERR=/tmp/tmp.gDjvDxK787 ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.OKvDkwtD6n ++ cat /tmp/tmp.gDjvDxK787 ++ rm /tmp/tmp.OKvDkwtD6n /tmp/tmp.gDjvDxK787 ++ return 0 + state=initializing ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.sf7uPKPYzo +++ mktemp ++ local LAST_ERR=/tmp/tmp.npEsBHmqB1 ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.sf7uPKPYzo ++ cat /tmp/tmp.npEsBHmqB1 ++ rm /tmp/tmp.sf7uPKPYzo /tmp/tmp.npEsBHmqB1 ++ return 0 + pxc_ready=2 + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.jxVE02bxXz ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.rBro1PFPff +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.jxVE02bxXz +++++ cat /tmp/tmp.rBro1PFPff +++++ rm /tmp/tmp.jxVE02bxXz /tmp/tmp.rBro1PFPff +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.kyubLQyEfN ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.5XP56Oc72q +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.kyubLQyEfN +++++ cat /tmp/tmp.5XP56Oc72q +++++ rm /tmp/tmp.kyubLQyEfN /tmp/tmp.5XP56Oc72q +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.tnpvNROCGz +++ mktemp ++ local LAST_ERR=/tmp/tmp.pv8AyMO0lj ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.tnpvNROCGz ++ cat /tmp/tmp.pv8AyMO0lj ++ rm /tmp/tmp.tnpvNROCGz /tmp/tmp.pv8AyMO0lj ++ return 0 + proxy_ready=2 + [[ initializing == \r\e\a\d\y ]] + echo -n . .+ sleep 5 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ze8owsCvtB +++ mktemp ++ local LAST_ERR=/tmp/tmp.4YhNSdo6CT ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.ze8owsCvtB ++ cat /tmp/tmp.4YhNSdo6CT ++ rm /tmp/tmp.ze8owsCvtB /tmp/tmp.4YhNSdo6CT ++ return 0 + state=initializing ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.c0O1sxvyBV +++ mktemp ++ local LAST_ERR=/tmp/tmp.3UZ5Oycg5Z ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.c0O1sxvyBV ++ cat /tmp/tmp.3UZ5Oycg5Z ++ rm /tmp/tmp.c0O1sxvyBV /tmp/tmp.3UZ5Oycg5Z ++ return 0 + pxc_ready=2 + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.oHczXwTm0i ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.E0suKWwTuI +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.oHczXwTm0i +++++ cat /tmp/tmp.E0suKWwTuI +++++ rm /tmp/tmp.oHczXwTm0i /tmp/tmp.E0suKWwTuI +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.WHbE9y4TWn ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.CK5w4nsEKd +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.WHbE9y4TWn +++++ cat /tmp/tmp.CK5w4nsEKd +++++ rm /tmp/tmp.WHbE9y4TWn /tmp/tmp.CK5w4nsEKd +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.GPVUPW6wNg +++ mktemp ++ local LAST_ERR=/tmp/tmp.xxmgW24unc ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.GPVUPW6wNg ++ cat /tmp/tmp.xxmgW24unc ++ rm /tmp/tmp.GPVUPW6wNg /tmp/tmp.xxmgW24unc ++ return 0 + proxy_ready=2 + [[ initializing == \r\e\a\d\y ]] + echo -n . .+ sleep 5 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.k9MP14OIyL +++ mktemp ++ local LAST_ERR=/tmp/tmp.2Axp5hTQYx ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.k9MP14OIyL ++ cat /tmp/tmp.2Axp5hTQYx ++ rm /tmp/tmp.k9MP14OIyL /tmp/tmp.2Axp5hTQYx ++ return 0 + state=initializing ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CP2QsesdWV +++ mktemp ++ local LAST_ERR=/tmp/tmp.AhE3ETW8OP ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.CP2QsesdWV ++ cat /tmp/tmp.AhE3ETW8OP ++ rm /tmp/tmp.CP2QsesdWV /tmp/tmp.AhE3ETW8OP ++ return 0 + pxc_ready=3 + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.IFTLIQFIaX ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.035qxilj6T +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.IFTLIQFIaX +++++ cat /tmp/tmp.035qxilj6T +++++ rm /tmp/tmp.IFTLIQFIaX /tmp/tmp.035qxilj6T +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.il6Od4jECD ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.ylnyIVzwP2 +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.il6Od4jECD +++++ cat /tmp/tmp.ylnyIVzwP2 +++++ rm /tmp/tmp.il6Od4jECD /tmp/tmp.ylnyIVzwP2 +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.FAZGbuOgKl +++ mktemp ++ local LAST_ERR=/tmp/tmp.TeLGPylr9F ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.FAZGbuOgKl ++ cat /tmp/tmp.TeLGPylr9F ++ rm /tmp/tmp.FAZGbuOgKl /tmp/tmp.TeLGPylr9F ++ return 0 + proxy_ready=2 + [[ initializing == \r\e\a\d\y ]] + echo -n . .+ sleep 5 + for _ in $(seq 1 "${retries}") ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0TGD4aqsgx +++ mktemp ++ local LAST_ERR=/tmp/tmp.LZ3qdyeIrr ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.0TGD4aqsgx ++ cat /tmp/tmp.LZ3qdyeIrr ++ rm /tmp/tmp.0TGD4aqsgx /tmp/tmp.LZ3qdyeIrr ++ return 0 + state=ready ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.pxc.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.L6wZLAOMmy +++ mktemp ++ local LAST_ERR=/tmp/tmp.ZdLdV8bFwT ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.pxc.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.L6wZLAOMmy ++ cat /tmp/tmp.ZdLdV8bFwT ++ rm /tmp/tmp.L6wZLAOMmy /tmp/tmp.ZdLdV8bFwT ++ return 0 + pxc_ready=3 + proxy_ready=0 + [[ 2 -gt 0 ]] +++ get_proxy_engine sec-context +++ local cluster_name=sec-context ++++ get_proxy sec-context ++++ local target_cluster=sec-context +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.wN9eD6dzsg ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.KspeXSXfbk +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.haproxy.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.wN9eD6dzsg +++++ cat /tmp/tmp.KspeXSXfbk +++++ rm /tmp/tmp.wN9eD6dzsg /tmp/tmp.KspeXSXfbk +++++ return 0 ++++ [[ '' == \t\r\u\e ]] +++++ kubectl_bin get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.PAMkl2OX0K ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.m3wI8PZcgk +++++ local exit_status=0 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get pxc sec-context -o 'jsonpath={.spec.proxysql.enabled}' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 ']' +++++ break +++++ cat /tmp/tmp.PAMkl2OX0K +++++ cat /tmp/tmp.m3wI8PZcgk +++++ rm /tmp/tmp.PAMkl2OX0K /tmp/tmp.m3wI8PZcgk +++++ return 0 ++++ [[ true == \t\r\u\e ]] ++++ echo sec-context-proxysql ++++ return +++ local cluster_proxy=sec-context-proxysql +++ echo proxysql ++ kubectl_bin get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.K2v515rVCX +++ mktemp ++ local LAST_ERR=/tmp/tmp.He1U2TSvQr ++ local exit_status=0 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pxc sec-context -o 'jsonpath={.status.proxysql.ready}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 ']' ++ break ++ cat /tmp/tmp.K2v515rVCX ++ cat /tmp/tmp.He1U2TSvQr ++ rm /tmp/tmp.K2v515rVCX /tmp/tmp.He1U2TSvQr ++ return 0 + proxy_ready=2 + [[ ready == \r\e\a\d\y ]] + [[ 3 == \3 ]] + [[ 2 == \2 ]] + echo + return + desc 'run pvc backup' + set +o xtrace ----------------------------------------------------------------------------------- run pvc backup ----------------------------------------------------------------------------------- + backup=on-demand-backup-pvc + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context-on-demand-backup-pvc.yml ++ mktemp + local LAST_OUT=/tmp/tmp.gL39pedYAI ++ mktemp + local LAST_ERR=/tmp/tmp.nH9uoai8z1 + 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-2546/e2e-tests/security-context/conf/sec-context-on-demand-backup-pvc.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.gL39pedYAI perconaxtradbclusterbackup.pxc.percona.com/on-demand-backup-pvc created + cat /tmp/tmp.nH9uoai8z1 + rm /tmp/tmp.gL39pedYAI /tmp/tmp.nH9uoai8z1 + return 0 + wait_backup on-demand-backup-pvc + local backup=on-demand-backup-pvc + local status=Succeeded + set +o xtrace waiting for pxc-backup/on-demand-backup-pvc to reach Succeeded state.......Succeeded ++ get_pvc_name_for_backup on-demand-backup-pvc ++ local backup_name=on-demand-backup-pvc +++ kubectl_bin get pxc-backup on-demand-backup-pvc -o 'jsonpath={.status.destination}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.Eihmtol4NG ++++ mktemp +++ local LAST_ERR=/tmp/tmp.Q73TIMiIva +++ local exit_status=0 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get pxc-backup on-demand-backup-pvc -o 'jsonpath={.status.destination}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 ']' +++ break +++ cat /tmp/tmp.Eihmtol4NG +++ cat /tmp/tmp.Q73TIMiIva +++ rm /tmp/tmp.Eihmtol4NG /tmp/tmp.Q73TIMiIva +++ return 0 ++ local destination=pvc/xb-on-demand-backup-pvc-20261005144201-3870dc4f ++ [[ -z pvc/xb-on-demand-backup-pvc-20261005144201-3870dc4f ]] ++ local pvc_name=xb-on-demand-backup-pvc-20261005144201-3870dc4f ++ echo xb-on-demand-backup-pvc-20261005144201-3870dc4f + pvc_name=xb-on-demand-backup-pvc-20261005144201-3870dc4f + echo /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/ /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/ + for file in "$compare_dir"* + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129.yml + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context.yml + for file in "$compare_dir"* + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-s3-sec-context-k129.yml + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-s3-sec-context-k129.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-s3-sec-context-k129.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-s3-sec-context.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-s3-sec-context.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-s3-sec-context.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc.yml + for file in "$compare_dir"* + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-s3-k129.yml + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-s3-k129.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-s3-k129.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-s3.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-s3.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-s3.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-aks.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-aks.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-aks.yml + for file in "$compare_dir"* + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-aks.yml + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-aks.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-aks.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-oc.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-oc.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-oc.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-oc.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-oc.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-oc.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/select-1.sql + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/select-1.sql.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/select-1.sql + for file in "$compare_dir"* + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-oc.yml + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-oc.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes-oc.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-changes.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-oc.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-oc.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql-oc.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-proxysql.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc-changes.yml + for file in "$compare_dir"* + /usr/bin/sed -E 's#(claimName: xb-on-demand-backup-pvc)(-[0-9]{14}-[a-f0-9]{8})?#claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f#' + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc.yml + mv /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc.yml.patched /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/statefulset_sec-context-pxc.yml + compare_kubectl job.batch/xb-on-demand-backup-pvc + local resource=job.batch/xb-on-demand-backup-pvc + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc.yml + local new_result=/tmp/tmp.RvUbHvZPc0/job.batch_xb-on-demand-backup-pvc.yml + desc 'compare job.batch/xb-on-demand-backup-pvc-' + set +o xtrace ----------------------------------------------------------------------------------- compare job.batch/xb-on-demand-backup-pvc- ----------------------------------------------------------------------------------- + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-eks.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-80.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + version_gt 1.33 ++ echo '1.34 >= 1.33' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k133.yml ']' + version_gt 1.29 ++ echo '1.34 >= 1.29' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129.yml ']' + expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129.yml + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129-oc.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129-k129-oc.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129-eks.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129-aks.yml ']' + yq eval ' del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "CLUSTER_HASH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "BACKUP_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_URL")) | del(.spec.template.spec.containers[].env[] | select(.name == "AZURE_CONTAINER_NAME")) | del(.spec.template.spec.containers[].env[] | select(.name == "XTRABACKUP_ENABLED")) | del(.metadata.selfLink) | del(.metadata.deletionTimestamp) | del(.metadata.labels."batch.kubernetes.io/job-name") | del(.metadata.labels."job-name") | del(.metadata.labels."topology.kubernetes.io/region") | del(.metadata.labels."topology.kubernetes.io/zone") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.metadata.annotations."kubernetes.io/psp") | del(.metadata.annotations."batch.kubernetes.io/job-tracking") | del(.metadata.annotations."networking.gke.io/target-pool") | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."k8s.v1.cni.cncf.io*") | del(.metadata.annotations."k8s.ovn.org/pod-networks") | del(.metadata.annotations."kubernetes.digitalocean.com/load-balancer-id") | del(.metadata.annotations."service.beta.kubernetes.io/do-loadbalancer-type") | del(.spec.template.metadata.annotations."last-applied-secret") | del(.spec.template.metadata.labels."batch.kubernetes.io/job-name") | del(.spec.template.metadata.labels."job-name") | del(.. | select(has("batch.kubernetes.io/controller-uid"))."batch.kubernetes.io/controller-uid") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.spec.nodeName) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/env-secret-config-hash"))."percona.com/env-secret-config-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.. | select(has("kubectl.kubernetes.io/default-container"))."kubectl.kubernetes.io/default-container") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.. | select(has("imagePullSecrets")).imagePullSecrets) | del(.. | select(has("enableServiceLinks")).enableServiceLinks) | del(.status) | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.metadata.ownerReferences[].apiVersion) | del(.. | select(has("controller-uid")).controller-uid) | del(.. | select(has("preemptionPolicy")).preemptionPolicy) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | del(.spec.updateStrategy.rollingUpdate.maxUnavailable) | (.. | select(. == "policy/v1beta1")) = "policy/v1" | del(.. | select(has("kubernetes.io/hostname"))."kubernetes.io/hostname") | (.. | select(tag == "!!str")) |= sub("security-context-23097", "namespace") | (.. | select(tag == "!!str")) |= sub("kube-api-access-.*", "kube-api-access") | del(.. | select(has("annotations")).annotations | select(length==0)) | del(.spec.crVersion) | del(.. | select(.[] == "percona-xtradb-cluster-operator-workload-token*"))' - + kubectl_bin get -o yaml job.batch/xb-on-demand-backup-pvc ++ mktemp + local LAST_OUT=/tmp/tmp.v2XTO4BVS6 ++ mktemp + local LAST_ERR=/tmp/tmp.JfYQRr1hjx + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml job.batch/xb-on-demand-backup-pvc + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.v2XTO4BVS6 + cat /tmp/tmp.JfYQRr1hjx + rm /tmp/tmp.v2XTO4BVS6 /tmp/tmp.JfYQRr1hjx + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_xb-on-demand-backup-pvc-k129.yml /tmp/tmp.RvUbHvZPc0/job.batch_xb-on-demand-backup-pvc.yml + log 'compare_kubectl: job.batch/xb-on-demand-backup-pvc OK' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:42:45+0000]' compare_kubectl: job.batch/xb-on-demand-backup-pvc OK [2026-10-05T14:42:45+0000] compare_kubectl: job.batch/xb-on-demand-backup-pvc OK ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.RBD1GISDvF +++ mktemp ++ local LAST_ERR=/tmp/tmp.qLySuVzo2o ++ 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.RBD1GISDvF ++ cat /tmp/tmp.qLySuVzo2o ++ rm /tmp/tmp.RBD1GISDvF /tmp/tmp.qLySuVzo2o ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-pxc-2546-caf25420-2-cluster13 --namespace=security-context-23097 ++ mktemp + local LAST_OUT=/tmp/tmp.gUotowyEI2 ++ mktemp + local LAST_ERR=/tmp/tmp.ARyEFcAhf5 + 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-2546-caf25420-2-cluster13 --namespace=security-context-23097 + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.gUotowyEI2 Context "gke_cloud-dev-112233_us-central1-a_jen-pxc-2546-caf25420-2-cluster13" modified. + cat /tmp/tmp.ARyEFcAhf5 + rm /tmp/tmp.gUotowyEI2 /tmp/tmp.ARyEFcAhf5 + return 0 + desc 'run pvc restore' + set +o xtrace ----------------------------------------------------------------------------------- run pvc restore ----------------------------------------------------------------------------------- + restore=restore-pvc + /usr/bin/sed -e s~minio-service.#namespace~minio-service.security-context-23097~ + cat /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/conf/sec-context-restore-pvc.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.QwOas3dUdn ++ mktemp + local LAST_ERR=/tmp/tmp.ycNN1xMQUO + 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.QwOas3dUdn perconaxtradbclusterrestore.pxc.percona.com/restore-pvc created + cat /tmp/tmp.ycNN1xMQUO + rm /tmp/tmp.QwOas3dUdn /tmp/tmp.ycNN1xMQUO + return 0 + wait_pod restore-src-restore-pvc-sec-context + local pod=restore-src-restore-pvc-sec-context + local max_retry=480 + local ns= ++ grep -E '^(pxc|proxysql)$' ++ /usr/bin/sed -E 's/.*-(pxc|proxysql)-[0-9]/\1/' ++ echo restore-src-restore-pvc-sec-context + local container= + set +o xtrace Error from server (NotFound): pods "restore-src-restore-pvc-sec-context" not found waiting for pod/restore-src-restore-pvc-sec-context to become Ready..........Defaulted container "ncat" out of: ncat, backup-init (init) .Ok + kubectl_bin get -o yaml pod/restore-src-restore-pvc-sec-context ++ mktemp + local LAST_OUT=/tmp/tmp.tW7kOUsbgm ++ mktemp + local LAST_ERR=/tmp/tmp.HNsYLEwKy9 + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml pod/restore-src-restore-pvc-sec-context + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.tW7kOUsbgm apiVersion: v1 kind: Pod metadata: annotations: openshift.io/scc: privileged creationTimestamp: "2026-10-05T14:43:58Z" generation: 1 labels: app.kubernetes.io/instance: sec-context app.kubernetes.io/managed-by: percona-xtradb-cluster-operator app.kubernetes.io/name: percona-xtradb-cluster app.kubernetes.io/part-of: percona-xtradb-cluster percona.com/restore-svc-name: restore-src-restore-pvc-sec-context name: restore-src-restore-pvc-sec-context namespace: security-context-23097 ownerReferences: - apiVersion: pxc.percona.com/v1 blockOwnerDeletion: true controller: true kind: PerconaXtraDBClusterRestore name: restore-pvc uid: cd2c954f-2d3e-4dc0-a193-0778d122539f resourceVersion: "1791211459046223002" uid: 555de247-0084-45bf-a210-adc56a951fb1 spec: containers: - command: - /opt/percona/backup/recovery-pvc-donor.sh image: perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup imagePullPolicy: Always name: ncat resources: {} securityContext: privileged: true terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /backup name: backup - mountPath: /etc/mysql/ssl name: ssl - mountPath: /etc/mysql/ssl-internal name: ssl-internal - mountPath: /etc/mysql/vault-keyring-secret name: vault-keyring-secret - mountPath: /opt/percona name: bin - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-4zvkz readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true initContainers: - command: - /backup-init-entrypoint.sh image: perconalab/percona-xtradb-cluster-operator:PR-2546-caf25420 imagePullPolicy: Always name: backup-init resources: limits: cpu: 50m memory: 50M requests: cpu: 50m memory: 50M securityContext: privileged: true terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /opt/percona name: bin - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-4zvkz readOnly: true nodeName: gke-jen-pxc-2546-caf2542-default-pool-383fb9d3-37s5 preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1001 supplementalGroups: - 1001 - 1002 - 1003 serviceAccount: percona-xtradb-cluster-operator-workload serviceAccountName: percona-xtradb-cluster-operator-workload terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 volumes: - name: backup persistentVolumeClaim: claimName: xb-on-demand-backup-pvc-20261005144201-3870dc4f - name: ssl-internal secret: defaultMode: 420 optional: true secretName: some-name-ssl-internal - name: ssl secret: defaultMode: 420 optional: false secretName: some-name-ssl - name: vault-keyring-secret secret: defaultMode: 420 optional: true secretName: sec-context-vault - emptyDir: {} name: bin - name: kube-api-access-4zvkz projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace status: conditions: - lastProbeTime: null lastTransitionTime: "2026-10-05T14:44:15Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-10-05T14:44:18Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-10-05T14:44:19Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-10-05T14:44:19Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-10-05T14:43:58Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - containerID: containerd://92ba66db85c410ce460ebfafc1330098cd64eef614b65251acd23b2fb212e849 image: docker.io/perconalab/percona-xtradb-cluster-operator:main-pxc8.0-backup imageID: docker.io/perconalab/percona-xtradb-cluster-operator@sha256:5f719250116ee62948ce0ea52dfdefcfbe8f2c765e94017a9d271688882168eb lastState: {} name: ncat ready: true resources: {} restartCount: 0 started: true state: running: startedAt: "2026-10-05T14:44:18Z" user: linux: gid: 1001 supplementalGroups: - 1001 - 1002 - 1003 uid: 1001 volumeMounts: - mountPath: /backup name: backup - mountPath: /etc/mysql/ssl name: ssl - mountPath: /etc/mysql/ssl-internal name: ssl-internal - mountPath: /etc/mysql/vault-keyring-secret name: vault-keyring-secret - mountPath: /opt/percona name: bin - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-4zvkz readOnly: true recursiveReadOnly: Disabled hostIP: 10.220.0.10 hostIPs: - ip: 10.220.0.10 initContainerStatuses: - allocatedResources: cpu: 50m memory: 50M containerID: containerd://7aa9da5ca2d0c689791dcb82ba003bfa7a82cea1e3d2fbee397ac8bd49dee315 image: docker.io/perconalab/percona-xtradb-cluster-operator:PR-2546-caf25420 imageID: docker.io/perconalab/percona-xtradb-cluster-operator@sha256:df60ab9a9532db47c72fc41cf5898af9d6bb34253ef277b9be326af848bdfe49 lastState: {} name: backup-init ready: true resources: limits: cpu: 50m memory: 50M requests: cpu: 50m memory: 50M restartCount: 0 started: false state: terminated: containerID: containerd://7aa9da5ca2d0c689791dcb82ba003bfa7a82cea1e3d2fbee397ac8bd49dee315 exitCode: 0 finishedAt: "2026-10-05T14:44:17Z" reason: Completed startedAt: "2026-10-05T14:44:05Z" user: linux: gid: 2 supplementalGroups: - 2 - 1001 - 1002 - 1003 uid: 2 volumeMounts: - mountPath: /opt/percona name: bin - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-4zvkz readOnly: true recursiveReadOnly: Disabled observedGeneration: 1 phase: Running podIP: 10.20.145.62 podIPs: - ip: 10.20.145.62 qosClass: Burstable startTime: "2026-10-05T14:43:58Z" + cat /tmp/tmp.HNsYLEwKy9 + rm /tmp/tmp.tW7kOUsbgm /tmp/tmp.HNsYLEwKy9 + return 0 + version_gt 1.21 ++ bc -l ++ echo '1.34 >= 1.21' + '[' 1 -eq 1 ']' + return 0 + compare_kubectl pod/restore-src-restore-pvc-sec-context + local resource=pod/restore-src-restore-pvc-sec-context + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context.yml + local new_result=/tmp/tmp.RvUbHvZPc0/pod_restore-src-restore-pvc-sec-context.yml + desc 'compare pod/restore-src-restore-pvc-sec-context-' + set +o xtrace ----------------------------------------------------------------------------------- compare pod/restore-src-restore-pvc-sec-context- ----------------------------------------------------------------------------------- + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-eks.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-80.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + version_gt 1.33 ++ bc -l ++ echo '1.34 >= 1.33' + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133.yml ']' + expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133.yml + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-oc.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-k129-oc.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-eks.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133-aks.yml ']' + yq eval ' del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "CLUSTER_HASH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "BACKUP_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_URL")) | del(.spec.template.spec.containers[].env[] | select(.name == "AZURE_CONTAINER_NAME")) | del(.spec.template.spec.containers[].env[] | select(.name == "XTRABACKUP_ENABLED")) | del(.metadata.selfLink) | del(.metadata.deletionTimestamp) | del(.metadata.labels."batch.kubernetes.io/job-name") | del(.metadata.labels."job-name") | del(.metadata.labels."topology.kubernetes.io/region") | del(.metadata.labels."topology.kubernetes.io/zone") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.metadata.annotations."kubernetes.io/psp") | del(.metadata.annotations."batch.kubernetes.io/job-tracking") | del(.metadata.annotations."networking.gke.io/target-pool") | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."k8s.v1.cni.cncf.io*") | del(.metadata.annotations."k8s.ovn.org/pod-networks") | del(.metadata.annotations."kubernetes.digitalocean.com/load-balancer-id") | del(.metadata.annotations."service.beta.kubernetes.io/do-loadbalancer-type") | del(.spec.template.metadata.annotations."last-applied-secret") | del(.spec.template.metadata.labels."batch.kubernetes.io/job-name") | del(.spec.template.metadata.labels."job-name") | del(.. | select(has("batch.kubernetes.io/controller-uid"))."batch.kubernetes.io/controller-uid") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.spec.nodeName) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/env-secret-config-hash"))."percona.com/env-secret-config-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.. | select(has("kubectl.kubernetes.io/default-container"))."kubectl.kubernetes.io/default-container") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.. | select(has("imagePullSecrets")).imagePullSecrets) | del(.. | select(has("enableServiceLinks")).enableServiceLinks) | del(.status) | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.metadata.ownerReferences[].apiVersion) | del(.. | select(has("controller-uid")).controller-uid) | del(.. | select(has("preemptionPolicy")).preemptionPolicy) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | del(.spec.updateStrategy.rollingUpdate.maxUnavailable) | + kubectl_bin get -o yaml pod/restore-src-restore-pvc-sec-context (.. | select(. == "policy/v1beta1")) = "policy/v1" | del(.. | select(has("kubernetes.io/hostname"))."kubernetes.io/hostname") | (.. | select(tag == "!!str")) |= sub("security-context-23097", "namespace") | (.. | select(tag == "!!str")) |= sub("kube-api-access-.*", "kube-api-access") | del(.. | select(has("annotations")).annotations | select(length==0)) | del(.spec.crVersion) | del(.. | select(.[] == "percona-xtradb-cluster-operator-workload-token*"))' - ++ mktemp + local LAST_OUT=/tmp/tmp.6TlXrxmqGQ ++ mktemp + local LAST_ERR=/tmp/tmp.OuBDU5k7ES + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml pod/restore-src-restore-pvc-sec-context + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.6TlXrxmqGQ + cat /tmp/tmp.OuBDU5k7ES + rm /tmp/tmp.6TlXrxmqGQ /tmp/tmp.OuBDU5k7ES + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/pod_restore-src-restore-pvc-sec-context-k133.yml /tmp/tmp.RvUbHvZPc0/pod_restore-src-restore-pvc-sec-context.yml + log 'compare_kubectl: pod/restore-src-restore-pvc-sec-context OK' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:44:35+0000]' compare_kubectl: pod/restore-src-restore-pvc-sec-context OK [2026-10-05T14:44:35+0000] compare_kubectl: pod/restore-src-restore-pvc-sec-context OK + wait_backup_restore restore-pvc + local backup_name=restore-pvc + local target_state=Succeeded + local wait_time=720 + set +o xtrace waiting for pxc-restore/restore-pvc to reach Succeeded state 2026-10-05T14:44:38 pxc-restore/restore-pvc state: Restoring 2026-10-05T14:44:42 pxc-restore/restore-pvc state: Restoring 2026-10-05T14:44:45 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:44:50 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:44:55 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:00 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:05 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:10 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:14 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:19 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:22 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:26 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:30 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:33 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:37 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:41 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:45 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:49 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:53 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:45:57 pxc-restore/restore-pvc state: Preparing Cluster 2026-10-05T14:46:01 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:05 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:08 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:12 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:16 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:20 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:23 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:26 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:28 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:31 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:35 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:38 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:41 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:43 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:46 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:48 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:51 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:53 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:56 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:46:59 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:01 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:03 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:07 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:10 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:14 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:18 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:22 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:26 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:29 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:33 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:37 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:40 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:44 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:47 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:50 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:54 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:47:58 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:02 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:06 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:10 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:14 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:17 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:20 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:24 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:28 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:32 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:36 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:40 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:45 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:49 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:54 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:48:58 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:49:04 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:49:10 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:49:15 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:49:18 pxc-restore/restore-pvc state: Starting Cluster 2026-10-05T14:49:22 pxc-restore/restore-pvc state: Succeeded + compare_kubectl job.batch/restore-job-restore-pvc-sec-context + local resource=job.batch/restore-job-restore-pvc-sec-context + local postfix= + local expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context.yml + local new_result=/tmp/tmp.RvUbHvZPc0/job.batch_restore-job-restore-pvc-sec-context.yml + desc 'compare job.batch/restore-job-restore-pvc-sec-context-' + set +o xtrace ----------------------------------------------------------------------------------- compare job.batch/restore-job-restore-pvc-sec-context- ----------------------------------------------------------------------------------- + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-eks.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.0 ]] + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-80.yml ']' + [[ perconalab/percona-xtradb-cluster-operator:main-pxc8.0 =~ 8\.4 ]] + version_gt 1.33 ++ echo '1.34 >= 1.33' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k133.yml ']' + version_gt 1.29 ++ echo '1.34 >= 1.29' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + '[' -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129.yml ']' + expected_result=/mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129.yml + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129-oc.yml ']' + version_gt 1.29 ++ bc -l ++ echo '1.34 >= 1.29' + '[' 1 -eq 1 ']' + return 0 + '[' '!' -z '' -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129-k129-oc.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129-eks.yml ']' + '[' 0 = 1 -a -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129-aks.yml ']' + yq eval ' del(.metadata.managedFields) | del(.. | select(has("creationTimestamp")).creationTimestamp) | del(.. | select(has("namespace")).namespace) | del(.. | select(has("uid")).uid) | del(.metadata.resourceVersion) | del(.spec.template.spec.containers[].env[] | select(.name == "CLUSTER_HASH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "BACKUP_PATH")) | del(.spec.template.spec.containers[].env[] | select(.name == "S3_BUCKET_URL")) | del(.spec.template.spec.containers[].env[] | select(.name == "AZURE_CONTAINER_NAME")) | del(.spec.template.spec.containers[].env[] | select(.name == "XTRABACKUP_ENABLED")) | del(.metadata.selfLink) | del(.metadata.deletionTimestamp) | del(.metadata.labels."batch.kubernetes.io/job-name") | del(.metadata.labels."job-name") | del(.metadata.labels."topology.kubernetes.io/region") | del(.metadata.labels."topology.kubernetes.io/zone") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | del(.metadata.annotations."kubernetes.io/psp") | del(.metadata.annotations."batch.kubernetes.io/job-tracking") | del(.metadata.annotations."networking.gke.io/target-pool") | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."k8s.v1.cni.cncf.io*") | del(.metadata.annotations."k8s.ovn.org/pod-networks") | del(.metadata.annotations."kubernetes.digitalocean.com/load-balancer-id") | del(.metadata.annotations."service.beta.kubernetes.io/do-loadbalancer-type") | del(.spec.template.metadata.annotations."last-applied-secret") | del(.spec.template.metadata.labels."batch.kubernetes.io/job-name") | del(.spec.template.metadata.labels."job-name") | del(.. | select(has("batch.kubernetes.io/controller-uid"))."batch.kubernetes.io/controller-uid") | del(.. | select(has("image")).image) | del(.. | select(has("clusterIP")).clusterIP) | del(.. | select(has("clusterIPs")).clusterIPs) | del(.. | select(has("dataSource")).dataSource) | del(.. | select(has("procMount")).procMount) | del(.. | select(has("storageClassName")).storageClassName) | del(.. | select(has("finalizers")).finalizers) | del(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") | del(.. | select(has("volumeName")).volumeName) | del(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") | del(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") | del(.spec.volumeMode) | del(.spec.nodeName) | del(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") | del(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") | del(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") | del(.. | select(has("percona.com/env-secret-config-hash"))."percona.com/env-secret-config-hash") | del(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.. | select(has("kubectl.kubernetes.io/default-container"))."kubectl.kubernetes.io/default-container") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.. | select(has("imagePullSecrets")).imagePullSecrets) | del(.. | select(has("enableServiceLinks")).enableServiceLinks) | del(.status) | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.metadata.ownerReferences[].apiVersion) | del(.. | select(has("controller-uid")).controller-uid) | del(.. | select(has("preemptionPolicy")).preemptionPolicy) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | del(.spec.updateStrategy.rollingUpdate.maxUnavailable) | (.. | select(. == "policy/v1beta1")) = "policy/v1" | del(.. | select(has("kubernetes.io/hostname"))."kubernetes.io/hostname") | (.. | select(tag == "!!str")) |= sub("security-context-23097", "namespace") | (.. | select(tag == "!!str")) |= sub("kube-api-access-.*", "kube-api-access") | del(.. | select(has("annotations")).annotations | select(length==0)) | del(.spec.crVersion) | del(.. | select(.[] == "percona-xtradb-cluster-operator-workload-token*"))' - + kubectl_bin get -o yaml job.batch/restore-job-restore-pvc-sec-context ++ mktemp + local LAST_OUT=/tmp/tmp.0Nix7x31H8 ++ mktemp + local LAST_ERR=/tmp/tmp.gpzdC3gqrF + local exit_status=0 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml job.batch/restore-job-restore-pvc-sec-context + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.0Nix7x31H8 + cat /tmp/tmp.gpzdC3gqrF + rm /tmp/tmp.0Nix7x31H8 /tmp/tmp.gpzdC3gqrF + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/security-context/compare/job.batch_restore-job-restore-pvc-sec-context-k129.yml /tmp/tmp.RvUbHvZPc0/job.batch_restore-job-restore-pvc-sec-context.yml + log 'compare_kubectl: job.batch/restore-job-restore-pvc-sec-context OK' ++ date +%Y-%m-%dT%H:%M:%S%z + echo '[2026-10-05T14:49:27+0000]' compare_kubectl: job.batch/restore-job-restore-pvc-sec-context OK [2026-10-05T14:49:27+0000] compare_kubectl: job.batch/restore-job-restore-pvc-sec-context OK + desc 'run s3 backup' + set +o xtrace ----------------------------------------------------------------------------------- run s3 backup ----------------------------------------------------------------------------------- + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-pxc-operator_PR-2546/e2e-tests/conf/minio-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.st8CJ4eeZ6 ++ mktemp + local LAST_ERR=/tmp/tmp.YNXQaxWdox + 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-2546/e2e-tests/conf/minio-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 ']' + break + cat /tmp/tmp.st8CJ4eeZ6 secret/minio-secret unchanged + cat /tmp/tmp.YNXQaxWdox + rm /tmp/tmp.st8CJ4eeZ6 /tmp/tmp.YNXQaxWdox + return 0 + start_minio + deploy_helm security-context-23097 + helm repo add hashicorp https://helm.releases.hashicorp.com "hashicorp" already exists with the same configuration, skipping + helm repo add minio https://charts.min.io/ "minio" already exists with the same configuration, skipping + helm repo update Hang tight while we grab the latest from your chart repositories... ...Successfully got an update from the "minio" chart repository ...Successfully got an update from the "chaos-mesh" chart repository ...Successfully got an update from the "hashicorp" chart repository ...Successfully got an update from the "percona" chart repository Update Complete. ⎈Happy Helming!⎈ + local cert_secret= + local endpoint=http://minio-service:9000 + minio_args=('--version' '5.4.0' '--set' 'replicas=1' '--set' 'mode=standalone' '--set' 'resources.requests.memory=256Mi' '--set' 'rootUser=rootuser' '--set' 'rootPassword=rootpass123' '--set' 'users[0].accessKey=some-access-key' '--set' 'users[0].secretKey=some-secret-key' '--set' 'users[0].policy=consoleAdmin' '--set' 'service.type=ClusterIP' '--set' 'configPathmc=/tmp/' '--set' 'securityContext.enabled=false' '--set' 'persistence.size=2G') + local minio_args + [[ -n '' ]] + desc 'install Minio' + set +o xtrace ----------------------------------------------------------------------------------- install Minio ----------------------------------------------------------------------------------- + helm uninstall minio-service Error: uninstall: Release not loaded: minio-service: release: not found + : + retry 10 60 helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio + local max=10 + local delay=60 + shift 2 + local n=1 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: failed post-install: 1 error occurred: * timed out waiting for the condition + [[ 1 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 2 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 3 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 4 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 5 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 6 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 7 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 8 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 9 -ge 10 ]] + let n+=1 + sleep 60 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio Error: INSTALLATION FAILED: cannot re-use a name that is still in use + [[ 10 -ge 10 ]] + echo 'The command '\''helm' install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G 'minio/minio'\'' has failed after 10 attempts.' The command 'helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set users[0].accessKey=some-access-key --set users[0].secretKey=some-secret-key --set users[0].policy=consoleAdmin --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G minio/minio' has failed after 10 attempts. + exit 1