Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/logs/monitoring-pmm3.log grep: warning: stray \ before - Warning: version difference between client (1.34) and server (1.30) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.34) and server (1.30) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.34) and server (1.30) exceeds the supported minor version skew of +/-1 + create_infra monitoring-pmm3-6860 + local ns=monitoring-pmm3-6860 + [[ 1 == 1 ]] + delete_crd + desc 'get and delete old CRDs and RBAC' + set +o xtrace ----------------------------------------------------------------------------------- get and delete old CRDs and RBAC ----------------------------------------------------------------------------------- + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.kzQykKFRHv ++ mktemp + local LAST_ERR=/tmp/tmp.vUZj5r00gx + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.kzQykKFRHv customresourcedefinition.apiextensions.k8s.io "perconaservermongodbbackups.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbrestores.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbs.psmdb.percona.com" deleted + cat /tmp/tmp.vUZj5r00gx + rm /tmp/tmp.kzQykKFRHv /tmp/tmp.vUZj5r00gx + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml ++ grep -v '\-\-\-' grep: warning: stray \ before - grep: warning: stray \ before - + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbbackups.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbbackups.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbbackups" + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbbackups" + : + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.uPbX3RClE3 ++ mktemp + local LAST_ERR=/tmp/tmp.jcDDZpsQXx + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.uPbX3RClE3 + cat /tmp/tmp.jcDDZpsQXx + rm /tmp/tmp.uPbX3RClE3 /tmp/tmp.jcDDZpsQXx + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbrestores.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbrestores.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbrestores" + kubectl patch perconaservermongodbrestores.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbrestores" + : + kubectl_bin wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.DUQwtuNlJ4 ++ mktemp + local LAST_ERR=/tmp/tmp.pzvN6YUZto + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DUQwtuNlJ4 + cat /tmp/tmp.pzvN6YUZto + rm /tmp/tmp.DUQwtuNlJ4 /tmp/tmp.pzvN6YUZto + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbs.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbs.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' No resources found + kubectl patch perconaservermongodbs.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbs" + : + kubectl_bin wait --for=delete crd perconaservermongodbs.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.clQsx2I60j ++ mktemp + local LAST_ERR=/tmp/tmp.mvQcuQubne + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.clQsx2I60j + cat /tmp/tmp.mvQcuQubne + rm /tmp/tmp.clQsx2I60j /tmp/tmp.mvQcuQubne + return 0 + local rbac_yaml=rbac.yaml + '[' -n psmdb-operator ']' + rbac_yaml=cw-rbac.yaml + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.pSRtuXTjKA ++ mktemp + local LAST_ERR=/tmp/tmp.UeISkw28Md + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.pSRtuXTjKA clusterrole.rbac.authorization.k8s.io "percona-server-mongodb-operator" deleted clusterrolebinding.rbac.authorization.k8s.io "service-account-percona-server-mongodb-operator" deleted + cat /tmp/tmp.UeISkw28Md + rm /tmp/tmp.pSRtuXTjKA /tmp/tmp.UeISkw28Md + return 0 + check_crd_for_deletion PR-2058-c784bf01 + local git_tag=PR-2058-c784bf01 ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-2058-c784bf01/deploy/crd.yaml ++ yq eval .metadata.name ++ /usr/sbin/sed s/---//g ++ /usr/sbin/sed ':a;N;$!ba;s/\n/ /g' + for crd_name in $(curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/${git_tag}/deploy/crd.yaml | yq eval '.metadata.name' | $sed 's/---//g' | $sed ':a;N;$!ba;s/\n/ /g') ++ kubectl_bin get crd/null -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.liySoCZbwu +++ mktemp ++ local LAST_ERR=/tmp/tmp.ey1jZTlrr1 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.liySoCZbwu ++ cat /tmp/tmp.ey1jZTlrr1 Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 0 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.liySoCZbwu ++ cat /tmp/tmp.ey1jZTlrr1 Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 4 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.liySoCZbwu ++ cat /tmp/tmp.ey1jZTlrr1 Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.liySoCZbwu ++ cat /tmp/tmp.ey1jZTlrr1 Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.liySoCZbwu /tmp/tmp.ey1jZTlrr1 ++ return 1 + [[ '' == \T\e\r\m\i\n\a\t\i\n\g ]] + '[' -n psmdb-operator ']' + create_namespace psmdb-operator + local namespace=psmdb-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' ++ mktemp + awk '{print$1}' + xargs kubectl delete ns + '[' -n '' ']' + desc 'cleaned up old namespaces psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + local LAST_OUT=/tmp/tmp.IXtpTfci2C + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp egrep: warning: egrep is obsolescent; using grep -E ++ mktemp + local LAST_ERR=/tmp/tmp.OvZN3EkV0P + local exit_status=0 + local timeout=4 + local LAST_OUT=/tmp/tmp.4PYyyLQpIQ ++ seq 0 2 ++ mktemp + for i in $(seq 0 2) + set +e + kubectl get ns + local LAST_ERR=/tmp/tmp.PAm0jf2Hjz + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.IXtpTfci2C + cat /tmp/tmp.OvZN3EkV0P + rm /tmp/tmp.IXtpTfci2C /tmp/tmp.OvZN3EkV0P + return 0 namespace "cert-manager" deleted namespace "monitoring-pmm3-29847" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.4PYyyLQpIQ namespace "psmdb-operator" deleted + cat /tmp/tmp.PAm0jf2Hjz + rm /tmp/tmp.4PYyyLQpIQ /tmp/tmp.PAm0jf2Hjz + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.d2dLrCTjxU ++ mktemp + local LAST_ERR=/tmp/tmp.GksohVnTGQ + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.d2dLrCTjxU + cat /tmp/tmp.GksohVnTGQ + rm /tmp/tmp.d2dLrCTjxU /tmp/tmp.GksohVnTGQ + return 0 + desc 'create namespace psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- create namespace psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin create namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.GCrlwjJzbw ++ mktemp + local LAST_ERR=/tmp/tmp.s9nbXsgPZE + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.GCrlwjJzbw namespace/psmdb-operator created + cat /tmp/tmp.s9nbXsgPZE + rm /tmp/tmp.GCrlwjJzbw /tmp/tmp.s9nbXsgPZE + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.A8pMcErqUt +++ mktemp ++ local LAST_ERR=/tmp/tmp.xjgLWlX4sA ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.A8pMcErqUt ++ cat /tmp/tmp.xjgLWlX4sA ++ rm /tmp/tmp.A8pMcErqUt /tmp/tmp.xjgLWlX4sA ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-c784bf01-3-cluster4 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.46cn5DMKbp ++ mktemp + local LAST_ERR=/tmp/tmp.JqvScpgE4z + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-c784bf01-3-cluster4 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.46cn5DMKbp Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-c784bf01-3-cluster4" modified. + cat /tmp/tmp.JqvScpgE4z + rm /tmp/tmp.46cn5DMKbp /tmp/tmp.JqvScpgE4z + return 0 + deploy_operator + desc 'start PSMDB operator' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.6lgXlAKOkx ++ mktemp + local LAST_ERR=/tmp/tmp.3rpkdZryyo + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.6lgXlAKOkx customresourcedefinition.apiextensions.k8s.io/perconaservermongodbbackups.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbrestores.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbs.psmdb.percona.com serverside-applied + cat /tmp/tmp.3rpkdZryyo + rm /tmp/tmp.6lgXlAKOkx /tmp/tmp.3rpkdZryyo + return 0 + '[' -n psmdb-operator ']' + apply_rbac cw-rbac + local operator_namespace=psmdb-operator + local rbac=cw-rbac + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.1lZvpRMczR ++ mktemp + local LAST_ERR=/tmp/tmp.bTymUnHlFg + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -n psmdb-operator -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.1lZvpRMczR clusterrole.rbac.authorization.k8s.io/percona-server-mongodb-operator created serviceaccount/percona-server-mongodb-operator created clusterrolebinding.rbac.authorization.k8s.io/service-account-percona-server-mongodb-operator created + cat /tmp/tmp.bTymUnHlFg + rm /tmp/tmp.1lZvpRMczR /tmp/tmp.bTymUnHlFg + return 0 + yq eval ' (.spec.template.spec.containers[].image = "perconalab/percona-server-mongodb-operator:PR-2058-c784bf01") | ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/cw-operator.yaml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.fGzTIHBsZD ++ mktemp + local LAST_ERR=/tmp/tmp.ddAzOl9mbY + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.fGzTIHBsZD deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.ddAzOl9mbY + rm /tmp/tmp.fGzTIHBsZD /tmp/tmp.ddAzOl9mbY + return 0 + sleep 2 ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator +++ mktemp ++ local LAST_OUT=/tmp/tmp.545ZNgl8u2 +++ mktemp ++ local LAST_ERR=/tmp/tmp.1IcoPBWqJw ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.545ZNgl8u2 ++ cat /tmp/tmp.1IcoPBWqJw ++ rm /tmp/tmp.545ZNgl8u2 /tmp/tmp.1IcoPBWqJw ++ return 0 + wait_pod percona-server-mongodb-operator-66766f6dbd-462km + local pod=percona-server-mongodb-operator-66766f6dbd-462km + set +o xtrace waiting for pod/percona-server-mongodb-operator-66766f6dbd-462km to be ready.OK + echo 'Print operator info from log' Print operator info from log + grep 'Manager starting up' ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator +++ mktemp ++ local LAST_OUT=/tmp/tmp.y4KTwaszdV +++ mktemp ++ local LAST_ERR=/tmp/tmp.qVuxz2Uvst ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.y4KTwaszdV ++ cat /tmp/tmp.qVuxz2Uvst ++ rm /tmp/tmp.y4KTwaszdV /tmp/tmp.qVuxz2Uvst ++ return 0 + kubectl_bin logs percona-server-mongodb-operator-66766f6dbd-462km ++ mktemp + local LAST_OUT=/tmp/tmp.1b2rBL7NHj ++ mktemp + local LAST_ERR=/tmp/tmp.4xtjWdxAli + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs percona-server-mongodb-operator-66766f6dbd-462km + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.1b2rBL7NHj + cat /tmp/tmp.4xtjWdxAli + rm /tmp/tmp.1b2rBL7NHj /tmp/tmp.4xtjWdxAli + return 0 2025-09-29T20:24:49.787Z INFO setup Manager starting up {"gitCommit": "c784bf018fc1678db3152ca647d2cd2be576b506", "gitBranch": "PR-2058-c784bf01", "buildTime": "", "goVersion": "go1.25.1", "os": "linux", "arch": "amd64"} + create_namespace monitoring-pmm3-6860 + local namespace=monitoring-pmm3-6860 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' + desc 'cleaned up old namespaces monitoring-pmm3-6860' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces monitoring-pmm3-6860 + xargs kubectl delete ns ----------------------------------------------------------------------------------- + kubectl_bin delete namespace monitoring-pmm3-6860 --ignore-not-found ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.2yosuL4jlX ++ mktemp + local LAST_OUT=/tmp/tmp.8VNjC5S4WI egrep: warning: egrep is obsolescent; using grep -E ++ mktemp + local LAST_ERR=/tmp/tmp.jxkyG63Uod + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.SAC0OJA2yV + local exit_status=0 + local timeout=4 + for i in $(seq 0 2) + set +e + kubectl delete namespace monitoring-pmm3-6860 --ignore-not-found ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.8VNjC5S4WI + cat /tmp/tmp.SAC0OJA2yV + rm /tmp/tmp.8VNjC5S4WI /tmp/tmp.SAC0OJA2yV + return 0 error: resource(s) were provided, but no name was specified + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2yosuL4jlX + cat /tmp/tmp.jxkyG63Uod + rm /tmp/tmp.2yosuL4jlX /tmp/tmp.jxkyG63Uod + return 0 + kubectl_bin wait --for=delete namespace monitoring-pmm3-6860 ++ mktemp + local LAST_OUT=/tmp/tmp.GyLhpxmPhd ++ mktemp + local LAST_ERR=/tmp/tmp.cNXb3lJ3PF + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace monitoring-pmm3-6860 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.GyLhpxmPhd + cat /tmp/tmp.cNXb3lJ3PF + rm /tmp/tmp.GyLhpxmPhd /tmp/tmp.cNXb3lJ3PF + return 0 + desc 'create namespace monitoring-pmm3-6860' + set +o xtrace ----------------------------------------------------------------------------------- create namespace monitoring-pmm3-6860 ----------------------------------------------------------------------------------- + kubectl_bin create namespace monitoring-pmm3-6860 ++ mktemp + local LAST_OUT=/tmp/tmp.h2gfVITBzm ++ mktemp + local LAST_ERR=/tmp/tmp.dv8iL5JVSw + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace monitoring-pmm3-6860 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.h2gfVITBzm namespace/monitoring-pmm3-6860 created + cat /tmp/tmp.dv8iL5JVSw + rm /tmp/tmp.h2gfVITBzm /tmp/tmp.dv8iL5JVSw + return 0 + set_kube_ctx monitoring-pmm3-6860 + local namespace=monitoring-pmm3-6860 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.js98AIgh5E +++ mktemp ++ local LAST_ERR=/tmp/tmp.mYNrGtXmwt ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.js98AIgh5E ++ cat /tmp/tmp.mYNrGtXmwt ++ rm /tmp/tmp.js98AIgh5E /tmp/tmp.mYNrGtXmwt ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-c784bf01-3-cluster4 --namespace=monitoring-pmm3-6860 ++ mktemp + local LAST_OUT=/tmp/tmp.zgh04byOEU ++ mktemp + local LAST_ERR=/tmp/tmp.E33LcljPgw + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-c784bf01-3-cluster4 --namespace=monitoring-pmm3-6860 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.zgh04byOEU Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-c784bf01-3-cluster4" modified. + cat /tmp/tmp.E33LcljPgw + rm /tmp/tmp.zgh04byOEU /tmp/tmp.E33LcljPgw + 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.bbAOGLXUUG ++ mktemp + local LAST_ERR=/tmp/tmp.EG4rEf7pWP + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace cert-manager + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.bbAOGLXUUG namespace/cert-manager created + cat /tmp/tmp.EG4rEf7pWP + rm /tmp/tmp.bbAOGLXUUG /tmp/tmp.EG4rEf7pWP + return 0 + kubectl_bin label namespace cert-manager certmanager.k8s.io/disable-validation=true ++ mktemp + local LAST_OUT=/tmp/tmp.zYoQkOnohT ++ mktemp + local LAST_ERR=/tmp/tmp.6YdbPh0xqs + local exit_status=0 + local timeout=4 ++ 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 -a -n 1 ']' + break + cat /tmp/tmp.zYoQkOnohT namespace/cert-manager labeled + cat /tmp/tmp.6YdbPh0xqs + rm /tmp/tmp.zYoQkOnohT /tmp/tmp.6YdbPh0xqs + return 0 + kubectl_bin apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.17.2/cert-manager.yaml --validate=false ++ mktemp + local LAST_OUT=/tmp/tmp.U3jdEGN0qZ ++ mktemp + local LAST_ERR=/tmp/tmp.oZhKZ8aXPz + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.17.2/cert-manager.yaml --validate=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.U3jdEGN0qZ namespace/cert-manager configured customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/clusterissuers.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io unchanged customresourcedefinition.apiextensions.k8s.io/orders.acme.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-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.oZhKZ8aXPz 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.U3jdEGN0qZ /tmp/tmp.oZhKZ8aXPz + return 0 + kubectl_bin -n cert-manager wait pod -l app.kubernetes.io/instance=cert-manager --for=condition=ready ++ mktemp + local LAST_OUT=/tmp/tmp.o56UM0YjnW ++ mktemp + local LAST_ERR=/tmp/tmp.1BYdZjIvii + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl -n cert-manager wait pod -l app.kubernetes.io/instance=cert-manager --for=condition=ready + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.o56UM0YjnW pod/cert-manager-6687d8765c-svc9p condition met pod/cert-manager-cainjector-764498cfc8-sfmsw condition met pod/cert-manager-webhook-74c74b87d7-nwm9w condition met + cat /tmp/tmp.1BYdZjIvii + rm /tmp/tmp.o56UM0YjnW /tmp/tmp.1BYdZjIvii + return 0 + sleep 120 + desc 'install PMM Server' + set +o xtrace ----------------------------------------------------------------------------------- install PMM Server ----------------------------------------------------------------------------------- + deploy_pmm3_server + helm uninstall monitoring Error: uninstall: Release not loaded: monitoring: release: not found + : + helm repo remove percona "percona" has been removed from your repositories + kubectl delete clusterrole monitoring --ignore-not-found + kubectl delete clusterrolebinding monitoring --ignore-not-found + helm repo add percona https://percona.github.io/percona-helm-charts/ "percona" has been added to your repositories + 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 "hashicorp" chart repository ...Successfully got an update from the "percona" chart repository ...Successfully got an update from the "stable" chart repository Update Complete. ⎈Happy Helming!⎈ + [[ -n '' ]] + retry 10 60 helm install monitoring percona/pmm --set fullnameOverride=monitoring-server --set image.tag=3.1.0 --set image.repository=perconalab/pmm-server --set service.type=LoadBalancer --force + local max=10 + local delay=60 + shift 2 + local n=1 + helm install monitoring percona/pmm --set fullnameOverride=monitoring-server --set image.tag=3.1.0 --set image.repository=perconalab/pmm-server --set service.type=LoadBalancer --force NAME: monitoring LAST DEPLOYED: Mon Sep 29 20:27:35 2025 NAMESPACE: monitoring-pmm3-6860 STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: Percona Monitoring and Management (PMM) An open source database monitoring, observability and management tool Check more info here: https://docs.percona.com/percona-monitoring-and-management/index.html Get the application URL: NOTE: It may take a few minutes for the LoadBalancer IP to be available. You can watch the status of by running 'kubectl get --namespace monitoring-pmm3-6860 svc -w monitoring-service' export SERVICE_IP=$(kubectl get svc --namespace monitoring-pmm3-6860 monitoring-service -o jsonpath="{.status.loadBalancer.ingress[0].ip}") echo https://$SERVICE_IP: Get password for the "admin" user: export ADMIN_PASS=$(kubectl get secret pmm-secret --namespace monitoring-pmm3-6860 -o jsonpath='{.data.PMM_ADMIN_PASSWORD}' | base64 --decode) echo $ADMIN_PASS + sleep 20 + kubectl_bin exec monitoring-server-0 -- bash -c 'ls -l /proc/*/exe 2>/dev/null| grep postgres >/dev/null' ++ mktemp + local LAST_OUT=/tmp/tmp.V4RYSLeoeJ ++ mktemp + local LAST_ERR=/tmp/tmp.M1XPvuNPl8 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec monitoring-server-0 -- bash -c 'ls -l /proc/*/exe 2>/dev/null| grep postgres >/dev/null' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.V4RYSLeoeJ + cat /tmp/tmp.M1XPvuNPl8 + rm /tmp/tmp.V4RYSLeoeJ /tmp/tmp.M1XPvuNPl8 + return 0 + cluster=monitoring-pmm3 + desc 'create secrets and start client' + set +o xtrace ----------------------------------------------------------------------------------- create secrets and start client ----------------------------------------------------------------------------------- + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/conf/secrets.yml ++ mktemp + local LAST_OUT=/tmp/tmp.oYcn0SxTbk ++ mktemp + local LAST_ERR=/tmp/tmp.qF689SJ57E + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/conf/secrets.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.oYcn0SxTbk secret/some-users created secret/some-users unchanged + cat /tmp/tmp.qF689SJ57E + rm /tmp/tmp.oYcn0SxTbk /tmp/tmp.qF689SJ57E + return 0 + yq '.spec.template.spec.volumes[0].secret.secretName="monitoring-pmm3-ssl"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/client_with_tls.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.MpveleITxE ++ mktemp + local LAST_ERR=/tmp/tmp.tC3GFmpXs7 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.MpveleITxE deployment.apps/psmdb-client created + cat /tmp/tmp.tC3GFmpXs7 + rm /tmp/tmp.MpveleITxE /tmp/tmp.tC3GFmpXs7 + return 0 + sleep 90 + desc 'create first PSMDB cluster monitoring-pmm3' + set +o xtrace ----------------------------------------------------------------------------------- create first PSMDB cluster monitoring-pmm3 ----------------------------------------------------------------------------------- + custom_cluster_name=super-custom + yq eval '(.spec | select(.image == null)).image = "perconalab/percona-server-mongodb-operator:main-mongod7.0"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/conf/monitoring-pmm3-rs0.yml + yq eval '(.spec | select(has("pmm"))).pmm.image = "perconalab/pmm-client:3.1.0"' - + yq eval '(.spec | select(has("pmm"))).pmm.customClusterName = "super-custom"' - + yq eval '(.spec | select(has("initImage"))).initImage = "perconalab/percona-server-mongodb-operator:PR-2058-c784bf01"' - + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' - + kubectl_bin apply -f - + yq eval '.spec.upgradeOptions.apply = "Never"' - ++ mktemp + local LAST_OUT=/tmp/tmp.vf3p2OSbPa ++ mktemp + local LAST_ERR=/tmp/tmp.jxIOvfHfuI + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.vf3p2OSbPa perconaservermongodb.psmdb.percona.com/monitoring-pmm3 created + cat /tmp/tmp.jxIOvfHfuI + rm /tmp/tmp.vf3p2OSbPa /tmp/tmp.jxIOvfHfuI + return 0 + wait_for_running monitoring-pmm3-rs0 3 + local name=monitoring-pmm3-rs0 + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs0 + local cluster_name=monitoring-pmm3 ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod monitoring-pmm3-rs0-0 + local pod=monitoring-pmm3-rs0-0 + set +o xtrace waiting for pod/monitoring-pmm3-rs0-0 to be ready.................OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod monitoring-pmm3-rs0-1 + local pod=monitoring-pmm3-rs0-1 + set +o xtrace waiting for pod/monitoring-pmm3-rs0-1 to be ready............OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.mM3LwogQ9O +++ mktemp ++ local LAST_ERR=/tmp/tmp.CJ66brUYY5 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.mM3LwogQ9O ++ cat /tmp/tmp.CJ66brUYY5 ++ rm /tmp/tmp.mM3LwogQ9O /tmp/tmp.CJ66brUYY5 ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod monitoring-pmm3-rs0-2 + local pod=monitoring-pmm3-rs0-2 + set +o xtrace waiting for pod/monitoring-pmm3-rs0-2 to be ready.............OK ++ kubectl_bin get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.niVUFwW3g2 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Uqt2ObGDXm ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.niVUFwW3g2 ++ cat /tmp/tmp.Uqt2ObGDXm ++ rm /tmp/tmp.niVUFwW3g2 /tmp/tmp.Uqt2ObGDXm ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.USfZUCbWig +++ mktemp ++ local LAST_ERR=/tmp/tmp.Xa4jwPSyPZ ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.USfZUCbWig ++ cat /tmp/tmp.Xa4jwPSyPZ ++ rm /tmp/tmp.USfZUCbWig /tmp/tmp.Xa4jwPSyPZ ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness.................................................................................................. + desc 'check if pmm-client container is not enabled' + set +o xtrace ----------------------------------------------------------------------------------- check if pmm-client container is not enabled ----------------------------------------------------------------------------------- + compare_kubectl statefulset/monitoring-pmm3-rs0 -no-pmm + local resource=statefulset/monitoring-pmm3-rs0 + local postfix=-no-pmm + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0-no-pmm.yml + local new_result=/tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0-no-pmm-oc.yml ']' + kubectl_bin get -o yaml statefulset/monitoring-pmm3-rs0 + yq eval ' del(.metadata.ownerReferences[].apiVersion) | 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 == "NAMESPACE")) | del(.metadata.selfLink) | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | 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(.. | 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/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.status) | (.. | select(tag == "!!str")) |= sub("monitoring-pmm3-6860", "NAME_SPACE") | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | (.. | select(. == "extensions/v1beta1")) = "apps/v1" | (.. | select(. == "batch/v1beta1")) = "batch/v1" ' - ++ mktemp + local LAST_OUT=/tmp/tmp.TV4zoyBVIQ ++ mktemp + local LAST_ERR=/tmp/tmp.tA4lAKYOFz + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/monitoring-pmm3-rs0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.TV4zoyBVIQ + cat /tmp/tmp.tA4lAKYOFz + rm /tmp/tmp.TV4zoyBVIQ /tmp/tmp.tA4lAKYOFz + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + version_gt 1.22 ++ echo '1.30 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0-no-pmm.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0-no-pmm.yml /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + log 'compare_kubectl: statefulset/monitoring-pmm3-rs0 OK' + set +o xtrace [2025-09-29T20:34:41+0000] compare_kubectl: statefulset/monitoring-pmm3-rs0 OK + sleep 10 + custom_port=27019 + run_mongos 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860 '' '' '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860 + local driver=mongodb + local suffix=.svc.cluster.local + local 'mongo_flag=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27019 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Cq6VtzLoDx +++ mktemp ++ local LAST_ERR=/tmp/tmp.oUJ4EKrTWr ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Cq6VtzLoDx ++ cat /tmp/tmp.oUJ4EKrTWr ++ rm /tmp/tmp.Cq6VtzLoDx /tmp/tmp.oUJ4EKrTWr ++ return 0 + local client_container=psmdb-client-f8b7b5fb5-4wn79 + kubectl_bin exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' ++ mktemp + local LAST_OUT=/tmp/tmp.x5mCdJHc8A ++ mktemp + local LAST_ERR=/tmp/tmp.elRH8Kc8js + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.x5mCdJHc8A Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin?compressors=disabled&gssapiServiceName=mongodb {"t":{"$date":"2025-09-29T20:34:54.349Z"},"s":"I", "c":"NETWORK", "id":5490002, "ctx":"thread1","msg":"Started a new thread for the timer service"} Implicit session: session { "id" : UUID("f5e41932-533f-4b67-a1ee-ccf8192c8ab3") } Percona Server for MongoDB server version: v7.0.24-13 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.elRH8Kc8js + rm /tmp/tmp.x5mCdJHc8A /tmp/tmp.elRH8Kc8js + return 0 + run_mongos 'sh.enableSharding("myApp")' clusterAdmin:clusterAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860 '' '' '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local 'command=sh.enableSharding("myApp")' + local uri=clusterAdmin:clusterAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860 + local driver=mongodb + local suffix=.svc.cluster.local + local 'mongo_flag=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27019 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.4COuPsSbBV +++ mktemp ++ local LAST_ERR=/tmp/tmp.CpuvUAkQ23 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.4COuPsSbBV ++ cat /tmp/tmp.CpuvUAkQ23 ++ rm /tmp/tmp.4COuPsSbBV /tmp/tmp.CpuvUAkQ23 ++ return 0 + local client_container=psmdb-client-f8b7b5fb5-4wn79 + kubectl_bin exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''sh.enableSharding("myApp")\n'\'' | mongo mongodb://clusterAdmin:clusterAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' ++ mktemp + local LAST_OUT=/tmp/tmp.Zct19BY7Lg ++ mktemp + local LAST_ERR=/tmp/tmp.1XdkSl5Aqq + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''sh.enableSharding("myApp")\n'\'' | mongo mongodb://clusterAdmin:clusterAdmin123456@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Zct19BY7Lg Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin?compressors=disabled&gssapiServiceName=mongodb {"t":{"$date":"2025-09-29T20:34:56.458Z"},"s":"I", "c":"NETWORK", "id":5490002, "ctx":"thread1","msg":"Started a new thread for the timer service"} Implicit session: session { "id" : UUID("d03353f6-9822-4adc-a5df-3a1075784deb") } Percona Server for MongoDB server version: v7.0.24-13 WARNING: shell and server versions do not match { "ok" : 1, "$clusterTime" : { "clusterTime" : Timestamp(1759178096, 8), "signature" : { "hash" : BinData(0,"0LcC2v70CaDFF1h7Y7tej0kY1VU="), "keyId" : NumberLong("7555611303532822551") } }, "operationTime" : Timestamp(1759178096, 2) } bye + cat /tmp/tmp.1XdkSl5Aqq + rm /tmp/tmp.Zct19BY7Lg /tmp/tmp.1XdkSl5Aqq + return 0 + insert_data_mongos 100500 myApp '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local data=100500 + local db_name=myApp + local 'flags=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + run_mongos 'use myApp\n db.test.insert({ x: 100500 })' myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860 '' '' '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local 'command=use myApp\n db.test.insert({ x: 100500 })' + local uri=myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860 + local driver=mongodb + local suffix=.svc.cluster.local + local 'mongo_flag=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27019 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.OBJoqXOioi +++ mktemp ++ local LAST_ERR=/tmp/tmp.VsRuZimjjB ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.OBJoqXOioi ++ cat /tmp/tmp.VsRuZimjjB ++ rm /tmp/tmp.OBJoqXOioi /tmp/tmp.VsRuZimjjB ++ return 0 + local client_container=psmdb-client-f8b7b5fb5-4wn79 + kubectl_bin exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' ++ mktemp + local LAST_OUT=/tmp/tmp.SGSAt334Rw ++ mktemp + local LAST_ERR=/tmp/tmp.4iAbRqG0ef + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.SGSAt334Rw Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin?compressors=disabled&gssapiServiceName=mongodb {"t":{"$date":"2025-09-29T20:34:59.883Z"},"s":"I", "c":"NETWORK", "id":5490002, "ctx":"thread1","msg":"Started a new thread for the timer service"} Implicit session: session { "id" : UUID("e14b71fe-cb57-4550-aa75-bd4cdad06ebe") } Percona Server for MongoDB server version: v7.0.24-13 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.4iAbRqG0ef + rm /tmp/tmp.SGSAt334Rw /tmp/tmp.4iAbRqG0ef + return 0 + insert_data_mongos 100600 myApp '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local data=100600 + local db_name=myApp + local 'flags=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + run_mongos 'use myApp\n db.test.insert({ x: 100600 })' myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860 '' '' '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local 'command=use myApp\n db.test.insert({ x: 100600 })' + local uri=myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860 + local driver=mongodb + local suffix=.svc.cluster.local + local 'mongo_flag=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + local mongo_bin=mongo ++ awk -F: '{print $2}' ++ echo .svc.cluster.local + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27019 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.d70FKPXbIy +++ mktemp ++ local LAST_ERR=/tmp/tmp.MYL8JMhjt8 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.d70FKPXbIy ++ cat /tmp/tmp.MYL8JMhjt8 ++ rm /tmp/tmp.d70FKPXbIy /tmp/tmp.MYL8JMhjt8 ++ return 0 + local client_container=psmdb-client-f8b7b5fb5-4wn79 + kubectl_bin exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100600 })\n'\'' | mongo mongodb://myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' ++ mktemp + local LAST_OUT=/tmp/tmp.yF1dVbeS7o ++ mktemp + local LAST_ERR=/tmp/tmp.vNg3mDb7UT + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100600 })\n'\'' | mongo mongodb://myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.yF1dVbeS7o Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin?compressors=disabled&gssapiServiceName=mongodb {"t":{"$date":"2025-09-29T20:35:02.115Z"},"s":"I", "c":"NETWORK", "id":5490002, "ctx":"thread1","msg":"Started a new thread for the timer service"} Implicit session: session { "id" : UUID("ef5a0a5e-28f6-4ead-851f-6e7b17c868b5") } Percona Server for MongoDB server version: v7.0.24-13 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.vNg3mDb7UT + rm /tmp/tmp.yF1dVbeS7o /tmp/tmp.vNg3mDb7UT + return 0 + insert_data_mongos 100700 myApp '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local data=100700 + local db_name=myApp + local 'flags=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + run_mongos 'use myApp\n db.test.insert({ x: 100700 })' myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860 '' '' '--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' 27019 + local 'command=use myApp\n db.test.insert({ x: 100700 })' + local uri=myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860 + local driver=mongodb + local suffix=.svc.cluster.local + local 'mongo_flag=--tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + local port=27019 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27019 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.grfW39FF83 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Vtpi9RxgNo ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.grfW39FF83 ++ cat /tmp/tmp.Vtpi9RxgNo ++ rm /tmp/tmp.grfW39FF83 /tmp/tmp.Vtpi9RxgNo ++ return 0 + local client_container=psmdb-client-f8b7b5fb5-4wn79 + kubectl_bin exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100700 })\n'\'' | mongo mongodb://myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' ++ mktemp + local LAST_OUT=/tmp/tmp.tvtPtfEkIX ++ mktemp + local LAST_ERR=/tmp/tmp.39e0mcK1t0 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f8b7b5fb5-4wn79 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100700 })\n'\'' | mongo mongodb://myApp:myPass@monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin --tlsCertificateKeyFile /tmp/tls.pem --tlsCAFile /etc/mongodb-ssl/ca.crt --tls' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.tvtPtfEkIX Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://monitoring-pmm3-mongos.monitoring-pmm3-6860.svc.cluster.local:27019/admin?compressors=disabled&gssapiServiceName=mongodb {"t":{"$date":"2025-09-29T20:35:04.282Z"},"s":"I", "c":"NETWORK", "id":5490002, "ctx":"thread1","msg":"Started a new thread for the timer service"} Implicit session: session { "id" : UUID("aadf8b6c-e3fa-4856-a5d4-a7d32388c910") } Percona Server for MongoDB server version: v7.0.24-13 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.39e0mcK1t0 + rm /tmp/tmp.tvtPtfEkIX /tmp/tmp.39e0mcK1t0 + return 0 + desc 'add PMM3 token to secret' + set +o xtrace ----------------------------------------------------------------------------------- add PMM3 token to secret ----------------------------------------------------------------------------------- ++ get_pmm_server_token operator ++ local key_name=operator ++ [[ -z operator ]] ++ local ADMIN_PASSWORD +++ kubectl get secret pmm-secret -o 'jsonpath={.data.PMM_ADMIN_PASSWORD}' +++ base64 --decode ++ ADMIN_PASSWORD='v)yXG(hJg$g#Uz}C' ++ [[ -z v)yXG(hJg$g#Uz}C ]] ++ local create_response create_status_code create_json_response ++++ get_service_endpoint monitoring-service ++++ local service=monitoring-service +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].hostname' +++++ sed -e 's/^"//; s/"$//;' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.U0psiZMLfo ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.aUEKQfCO3Y +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.U0psiZMLfo +++++ cat /tmp/tmp.aUEKQfCO3Y +++++ rm /tmp/tmp.U0psiZMLfo /tmp/tmp.aUEKQfCO3Y +++++ return 0 ++++ local hostname=null ++++ '[' -n null -a null '!=' null ']' +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].ip' +++++ sed -e 's/^"//; s/"$//;' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.eQJfFeaCgg ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.z11G3LH11s +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.eQJfFeaCgg +++++ cat /tmp/tmp.z11G3LH11s +++++ rm /tmp/tmp.eQJfFeaCgg /tmp/tmp.z11G3LH11s +++++ return 0 ++++ local ip=35.239.186.196 ++++ '[' -n 35.239.186.196 -a 35.239.186.196 '!=' null ']' ++++ echo 35.239.186.196 ++++ return +++ curl --insecure -s -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{"name":"operator", "role":"Admin", "isDisabled":false}' --user 'admin:v)yXG(hJg$g#Uz}C' https://35.239.186.196/graph/api/serviceaccounts -w '\n%{http_code}' ++ create_response='{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""} 201' +++ echo '{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""} 201' +++ tail -n1 ++ create_status_code=201 +++ echo '{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""} 201' +++ sed '$ d' ++ create_json_response='{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""}' ++ [[ 201 -ne 201 ]] ++ local service_account_id +++ echo '{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""}' +++ jq -r .id ++ service_account_id=2 ++ [[ -z 2 ]] ++ [[ 2 == \n\u\l\l ]] ++ local token_response token_status_code token_json_response ++++ get_service_endpoint monitoring-service ++++ local service=monitoring-service +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].hostname' +++++ sed -e 's/^"//; s/"$//;' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.xuaHm3lrBL ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.zCmXOtUiG5 +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.xuaHm3lrBL +++++ cat /tmp/tmp.zCmXOtUiG5 +++++ rm /tmp/tmp.xuaHm3lrBL /tmp/tmp.zCmXOtUiG5 +++++ return 0 ++++ local hostname=null ++++ '[' -n null -a null '!=' null ']' +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].ip' +++++ sed -e 's/^"//; s/"$//;' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.ITGg7EPESw ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.sDmctfgljg +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.ITGg7EPESw +++++ cat /tmp/tmp.sDmctfgljg +++++ rm /tmp/tmp.ITGg7EPESw /tmp/tmp.sDmctfgljg +++++ return 0 ++++ local ip=35.239.186.196 ++++ '[' -n 35.239.186.196 -a 35.239.186.196 '!=' null ']' ++++ echo 35.239.186.196 ++++ return +++ curl --insecure -s -X POST -H 'Content-Type: application/json' -d '{"name":"operator"}' --user 'admin:v)yXG(hJg$g#Uz}C' https://35.239.186.196/graph/api/serviceaccounts/2/tokens -w '\n%{http_code}' ++ token_response='{"id":1,"name":"operator","key":"glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4"} 200' +++ echo '{"id":1,"name":"operator","key":"glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4"} 200' +++ tail -n1 ++ token_status_code=200 +++ echo '{"id":1,"name":"operator","key":"glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4"} 200' +++ sed '$ d' ++ token_json_response='{"id":1,"name":"operator","key":"glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4"}' ++ [[ 200 -ne 200 ]] ++ echo '{"id":1,"name":"operator","key":"glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4"}' ++ jq -r .key + TOKEN=glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4 + kubectl_bin patch secret some-users --type merge --patch '{"stringData": {"PMM_SERVER_TOKEN": "glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4"}}' ++ mktemp + local LAST_OUT=/tmp/tmp.iVZUgP85od ++ mktemp + local LAST_ERR=/tmp/tmp.vTrHGU7NKo + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch secret some-users --type merge --patch '{"stringData": {"PMM_SERVER_TOKEN": "glsa_cLg1KKrg2uTEhXuKCPUVrvhsnn675anO_0a8049c4"}}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.iVZUgP85od secret/some-users patched + cat /tmp/tmp.vTrHGU7NKo + rm /tmp/tmp.iVZUgP85od /tmp/tmp.vTrHGU7NKo + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- + wait_for_running monitoring-pmm3-rs0 3 + local name=monitoring-pmm3-rs0 + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs0 + local cluster_name=monitoring-pmm3 ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod monitoring-pmm3-rs0-0 + local pod=monitoring-pmm3-rs0-0 + set +o xtrace waiting for pod/monitoring-pmm3-rs0-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod monitoring-pmm3-rs0-1 + local pod=monitoring-pmm3-rs0-1 + set +o xtrace waiting for pod/monitoring-pmm3-rs0-1 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.NjPIT9C4rk +++ mktemp ++ local LAST_ERR=/tmp/tmp.uNjUh6tWUq ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.NjPIT9C4rk ++ cat /tmp/tmp.uNjUh6tWUq ++ rm /tmp/tmp.NjPIT9C4rk /tmp/tmp.uNjUh6tWUq ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod monitoring-pmm3-rs0-2 + local pod=monitoring-pmm3-rs0-2 + set +o xtrace waiting for pod/monitoring-pmm3-rs0-2 to be ready.OK ++ kubectl_bin get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.MWkzRDqhgl +++ mktemp ++ local LAST_ERR=/tmp/tmp.zN0F0OvcAB ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.MWkzRDqhgl ++ cat /tmp/tmp.zN0F0OvcAB ++ rm /tmp/tmp.MWkzRDqhgl /tmp/tmp.zN0F0OvcAB ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.z6coyv2Mfi +++ mktemp ++ local LAST_ERR=/tmp/tmp.23enmHjaZd ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb monitoring-pmm3 -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.z6coyv2Mfi ++ cat /tmp/tmp.23enmHjaZd ++ rm /tmp/tmp.z6coyv2Mfi /tmp/tmp.23enmHjaZd ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness............................................................................................................................................................... + sleep 90 + desc 'check if pmm-client container enabled' + set +o xtrace ----------------------------------------------------------------------------------- check if pmm-client container enabled ----------------------------------------------------------------------------------- + compare_kubectl statefulset/monitoring-pmm3-rs0 + local resource=statefulset/monitoring-pmm3-rs0 + local postfix= + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0.yml + local new_result=/tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0-oc.yml ']' + kubectl_bin get -o yaml statefulset/monitoring-pmm3-rs0 + yq eval ' del(.metadata.ownerReferences[].apiVersion) | 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 == "NAMESPACE")) | del(.metadata.selfLink) | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | 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(.. | 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/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.status) | (.. | select(tag == "!!str")) |= sub("monitoring-pmm3-6860", "NAME_SPACE") | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | (.. | select(. == "extensions/v1beta1")) = "apps/v1" | (.. | select(. == "batch/v1beta1")) = "batch/v1" ' - ++ mktemp + local LAST_OUT=/tmp/tmp.DSyccNRXVy ++ mktemp + local LAST_ERR=/tmp/tmp.HzzilZ1tbF + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/monitoring-pmm3-rs0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DSyccNRXVy + cat /tmp/tmp.HzzilZ1tbF + rm /tmp/tmp.DSyccNRXVy /tmp/tmp.HzzilZ1tbF + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + version_gt 1.22 ++ echo '1.30 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-rs0.yml /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-rs0.yml + log 'compare_kubectl: statefulset/monitoring-pmm3-rs0 OK' + set +o xtrace [2025-09-29T20:42:22+0000] compare_kubectl: statefulset/monitoring-pmm3-rs0 OK + compare_kubectl service/monitoring-pmm3-rs0 + local resource=service/monitoring-pmm3-rs0 + local postfix= + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-rs0.yml + local new_result=/tmp/tmp.ANV9pset6V/service_monitoring-pmm3-rs0.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-rs0-oc.yml ']' + kubectl_bin get -o yaml service/monitoring-pmm3-rs0 + yq eval ' del(.metadata.ownerReferences[].apiVersion) | 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 == "NAMESPACE")) | del(.metadata.selfLink) | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | 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(.. | 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/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.status) | (.. | select(tag == "!!str")) |= sub("monitoring-pmm3-6860", "NAME_SPACE") | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | (.. | select(. == "extensions/v1beta1")) = "apps/v1" | (.. | select(. == "batch/v1beta1")) = "batch/v1" ' - ++ mktemp + local LAST_OUT=/tmp/tmp.Yxo8KrCY0B ++ mktemp + local LAST_ERR=/tmp/tmp.8H38YoLzxh + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml service/monitoring-pmm3-rs0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Yxo8KrCY0B + cat /tmp/tmp.8H38YoLzxh + rm /tmp/tmp.Yxo8KrCY0B /tmp/tmp.8H38YoLzxh + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-rs0.yml + version_gt 1.22 ++ echo '1.30 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-rs0.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-rs0.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-rs0.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-rs0.yml /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-rs0.yml + log 'compare_kubectl: service/monitoring-pmm3-rs0 OK' + set +o xtrace [2025-09-29T20:42:23+0000] compare_kubectl: service/monitoring-pmm3-rs0 OK + compare_kubectl service/monitoring-pmm3-mongos + local resource=service/monitoring-pmm3-mongos + local postfix= + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-mongos.yml + local new_result=/tmp/tmp.ANV9pset6V/service_monitoring-pmm3-mongos.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-mongos-oc.yml ']' + kubectl_bin get -o yaml service/monitoring-pmm3-mongos + yq eval ' del(.metadata.ownerReferences[].apiVersion) | 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 == "NAMESPACE")) | del(.metadata.selfLink) | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | 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(.. | 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/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.status) | (.. | select(tag == "!!str")) |= sub("monitoring-pmm3-6860", "NAME_SPACE") | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | (.. | select(. == "extensions/v1beta1")) = "apps/v1" | (.. | select(. == "batch/v1beta1")) = "batch/v1" ' - ++ mktemp + local LAST_OUT=/tmp/tmp.wBEW3BlSrE ++ mktemp + local LAST_ERR=/tmp/tmp.0cw7LLVJNu + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml service/monitoring-pmm3-mongos + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wBEW3BlSrE + cat /tmp/tmp.0cw7LLVJNu + rm /tmp/tmp.wBEW3BlSrE /tmp/tmp.0cw7LLVJNu + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-mongos.yml + version_gt 1.22 ++ echo '1.30 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-mongos.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-mongos.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-mongos.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/service_monitoring-pmm3-mongos.yml /tmp/tmp.ANV9pset6V/service_monitoring-pmm3-mongos.yml + log 'compare_kubectl: service/monitoring-pmm3-mongos OK' + set +o xtrace [2025-09-29T20:42:24+0000] compare_kubectl: service/monitoring-pmm3-mongos OK + compare_kubectl statefulset/monitoring-pmm3-cfg + local resource=statefulset/monitoring-pmm3-cfg + local postfix= + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-cfg.yml + local new_result=/tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-cfg.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-cfg-oc.yml ']' + kubectl_bin get -o yaml statefulset/monitoring-pmm3-cfg ++ mktemp + yq eval ' del(.metadata.ownerReferences[].apiVersion) | 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 == "NAMESPACE")) | del(.metadata.selfLink) | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | 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(.. | 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/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.status) | (.. | select(tag == "!!str")) |= sub("monitoring-pmm3-6860", "NAME_SPACE") | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | (.. | select(. == "extensions/v1beta1")) = "apps/v1" | (.. | select(. == "batch/v1beta1")) = "batch/v1" ' - + local LAST_OUT=/tmp/tmp.rDmpK8jonX ++ mktemp + local LAST_ERR=/tmp/tmp.6d8f2zrb2P + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/monitoring-pmm3-cfg + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.rDmpK8jonX + cat /tmp/tmp.6d8f2zrb2P + rm /tmp/tmp.rDmpK8jonX /tmp/tmp.6d8f2zrb2P + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-cfg.yml + version_gt 1.22 ++ echo '1.30 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-cfg.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-cfg.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-cfg.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-cfg.yml /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-cfg.yml + log 'compare_kubectl: statefulset/monitoring-pmm3-cfg OK' + set +o xtrace [2025-09-29T20:42:25+0000] compare_kubectl: statefulset/monitoring-pmm3-cfg OK + compare_kubectl statefulset/monitoring-pmm3-mongos + local resource=statefulset/monitoring-pmm3-mongos + local postfix= + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-mongos.yml + local new_result=/tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-mongos.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-mongos-oc.yml ']' + kubectl_bin get -o yaml statefulset/monitoring-pmm3-mongos + yq eval ' del(.metadata.ownerReferences[].apiVersion) | 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 == "NAMESPACE")) | del(.metadata.selfLink) | del(.metadata.annotations."cloud.google.com/neg") | del(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") | 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(.. | 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/ssl-hash"))."percona.com/ssl-hash") | del(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") | del(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) | del(.. | select(has("healthCheckNodePort")).healthCheckNodePort) | del(.. | select(has("nodePort")).nodePort) | del(.status) | (.. | select(tag == "!!str")) |= sub("monitoring-pmm3-6860", "NAME_SPACE") | del(.spec.volumeClaimTemplates[].apiVersion) | del(.spec.volumeClaimTemplates[].kind) | del(.spec.ipFamilies) | del(.spec.ipFamilyPolicy) | (.. | select(. == "extensions/v1beta1")) = "apps/v1" | (.. | select(. == "batch/v1beta1")) = "batch/v1" ' - ++ mktemp + local LAST_OUT=/tmp/tmp.ge0KZnQTIc ++ mktemp + local LAST_ERR=/tmp/tmp.UsJxu3DH8d + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/monitoring-pmm3-mongos + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ge0KZnQTIc + cat /tmp/tmp.UsJxu3DH8d + rm /tmp/tmp.ge0KZnQTIc /tmp/tmp.UsJxu3DH8d + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-mongos.yml + version_gt 1.22 ++ echo '1.30 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-mongos.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-mongos.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-mongos.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/monitoring-pmm3/compare/statefulset_monitoring-pmm3-mongos.yml /tmp/tmp.ANV9pset6V/statefulset_monitoring-pmm3-mongos.yml + log 'compare_kubectl: statefulset/monitoring-pmm3-mongos OK' + set +o xtrace [2025-09-29T20:42:26+0000] compare_kubectl: statefulset/monitoring-pmm3-mongos OK + desc 'create new PMM token and add it to the secret' + set +o xtrace ----------------------------------------------------------------------------------- create new PMM token and add it to the secret ----------------------------------------------------------------------------------- ++ get_pmm_server_token operator_new ++ local key_name=operator_new ++ [[ -z operator_new ]] ++ local ADMIN_PASSWORD +++ kubectl get secret pmm-secret -o 'jsonpath={.data.PMM_ADMIN_PASSWORD}' +++ base64 --decode ++ ADMIN_PASSWORD='v)yXG(hJg$g#Uz}C' ++ [[ -z v)yXG(hJg$g#Uz}C ]] ++ local create_response create_status_code create_json_response ++++ get_service_endpoint monitoring-service ++++ local service=monitoring-service +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].hostname' +++++ sed -e 's/^"//; s/"$//;' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.s93lOKMM3m ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.bi7XcKsp0h +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.s93lOKMM3m +++++ cat /tmp/tmp.bi7XcKsp0h +++++ rm /tmp/tmp.s93lOKMM3m /tmp/tmp.bi7XcKsp0h +++++ return 0 ++++ local hostname=null ++++ '[' -n null -a null '!=' null ']' +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].ip' ++++++ mktemp +++++ sed -e 's/^"//; s/"$//;' +++++ local LAST_OUT=/tmp/tmp.qFhoqBjQRH ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.n9qOQ4FNXe +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.qFhoqBjQRH +++++ cat /tmp/tmp.n9qOQ4FNXe +++++ rm /tmp/tmp.qFhoqBjQRH /tmp/tmp.n9qOQ4FNXe +++++ return 0 ++++ local ip=35.239.186.196 ++++ '[' -n 35.239.186.196 -a 35.239.186.196 '!=' null ']' ++++ echo 35.239.186.196 ++++ return +++ curl --insecure -s -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -d '{"name":"operator_new", "role":"Admin", "isDisabled":false}' --user 'admin:v)yXG(hJg$g#Uz}C' https://35.239.186.196/graph/api/serviceaccounts -w '\n%{http_code}' ++ create_response='{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""} 201' +++ echo '{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""} 201' +++ tail -n1 ++ create_status_code=201 +++ echo '{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""} 201' +++ sed '$ d' ++ create_json_response='{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""}' ++ [[ 201 -ne 201 ]] ++ local service_account_id +++ echo '{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":0,"avatarUrl":""}' +++ jq -r .id ++ service_account_id=3 ++ [[ -z 3 ]] ++ [[ 3 == \n\u\l\l ]] ++ local token_response token_status_code token_json_response ++++ get_service_endpoint monitoring-service ++++ local service=monitoring-service +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].hostname' +++++ sed -e 's/^"//; s/"$//;' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.isPdA9jIHi ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.2QVZ9ievUH +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.isPdA9jIHi +++++ cat /tmp/tmp.2QVZ9ievUH +++++ rm /tmp/tmp.isPdA9jIHi /tmp/tmp.2QVZ9ievUH +++++ return 0 ++++ local hostname=null ++++ '[' -n null -a null '!=' null ']' +++++ kubectl_bin get service/monitoring-service -o json +++++ jq '.status.loadBalancer.ingress[].ip' +++++ sed -e 's/^"//; s/"$//;' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.vkQYXg3JDK ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.41dxTWvRzj +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl get service/monitoring-service -o json +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.vkQYXg3JDK +++++ cat /tmp/tmp.41dxTWvRzj +++++ rm /tmp/tmp.vkQYXg3JDK /tmp/tmp.41dxTWvRzj +++++ return 0 ++++ local ip=35.239.186.196 ++++ '[' -n 35.239.186.196 -a 35.239.186.196 '!=' null ']' ++++ echo 35.239.186.196 ++++ return +++ curl --insecure -s -X POST -H 'Content-Type: application/json' -d '{"name":"operator_new"}' --user 'admin:v)yXG(hJg$g#Uz}C' https://35.239.186.196/graph/api/serviceaccounts/3/tokens -w '\n%{http_code}' ++ token_response='{"id":2,"name":"operator_new","key":"glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349"} 200' +++ echo '{"id":2,"name":"operator_new","key":"glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349"} 200' +++ tail -n1 ++ token_status_code=200 +++ echo '{"id":2,"name":"operator_new","key":"glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349"} 200' +++ sed '$ d' ++ token_json_response='{"id":2,"name":"operator_new","key":"glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349"}' ++ [[ 200 -ne 200 ]] ++ echo '{"id":2,"name":"operator_new","key":"glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349"}' ++ jq -r .key + NEW_TOKEN=glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349 + kubectl_bin patch secret some-users --type merge --patch '{"stringData": {"PMM_SERVER_TOKEN": "glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349"}}' ++ mktemp + local LAST_OUT=/tmp/tmp.7gQEHvdQQw ++ mktemp + local LAST_ERR=/tmp/tmp.4LBIjLQlUs + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch secret some-users --type merge --patch '{"stringData": {"PMM_SERVER_TOKEN": "glsa_T89l20GRlVqznafnoC76VM1zF3lu0amp_7228a349"}}' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.7gQEHvdQQw secret/some-users patched + cat /tmp/tmp.4LBIjLQlUs + rm /tmp/tmp.7gQEHvdQQw /tmp/tmp.4LBIjLQlUs + return 0 + desc 'delete old PMM token' + set +o xtrace ----------------------------------------------------------------------------------- delete old PMM token ----------------------------------------------------------------------------------- + delete_pmm_server_token operator + local key_name=operator + [[ -z operator ]] + local ADMIN_PASSWORD ++ kubectl get secret pmm-secret -o 'jsonpath={.data.PMM_ADMIN_PASSWORD}' ++ base64 --decode + ADMIN_PASSWORD='v)yXG(hJg$g#Uz}C' + [[ -z v)yXG(hJg$g#Uz}C ]] + local 'user_credentials=admin:v)yXG(hJg$g#Uz}C' + local service_accounts_response service_accounts_status +++ get_service_endpoint monitoring-service +++ local service=monitoring-service ++++ kubectl_bin get service/monitoring-service -o json ++++ jq '.status.loadBalancer.ingress[].hostname' ++++ sed -e 's/^"//; s/"$//;' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.T9255FShjq +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.5FJKEQURMu ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl get service/monitoring-service -o json ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.T9255FShjq ++++ cat /tmp/tmp.5FJKEQURMu ++++ rm /tmp/tmp.T9255FShjq /tmp/tmp.5FJKEQURMu ++++ return 0 +++ local hostname=null +++ '[' -n null -a null '!=' null ']' ++++ kubectl_bin get service/monitoring-service -o json ++++ jq '.status.loadBalancer.ingress[].ip' ++++ sed -e 's/^"//; s/"$//;' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.WxEmd77Qri +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.MzpKTTTwgI ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl get service/monitoring-service -o json ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.WxEmd77Qri ++++ cat /tmp/tmp.MzpKTTTwgI ++++ rm /tmp/tmp.WxEmd77Qri /tmp/tmp.MzpKTTTwgI ++++ return 0 +++ local ip=35.239.186.196 +++ '[' -n 35.239.186.196 -a 35.239.186.196 '!=' null ']' +++ echo 35.239.186.196 +++ return ++ curl --insecure -s -X GET --user 'admin:v)yXG(hJg$g#Uz}C' https://35.239.186.196/graph/api/serviceaccounts/search -w '\n%{http_code}' + service_accounts_response='{"totalCount":2,"serviceAccounts":[{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/f741e7abdd8def4ed30a37f602429df3"},{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/6d1b2db67a8f3e06db4ae076406fece5"}],"page":1,"perPage":1000} 200' ++ echo '{"totalCount":2,"serviceAccounts":[{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/f741e7abdd8def4ed30a37f602429df3"},{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/6d1b2db67a8f3e06db4ae076406fece5"}],"page":1,"perPage":1000} 200' ++ tail -n1 + service_accounts_status=200 ++ echo '{"totalCount":2,"serviceAccounts":[{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/f741e7abdd8def4ed30a37f602429df3"},{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/6d1b2db67a8f3e06db4ae076406fece5"}],"page":1,"perPage":1000} 200' ++ sed '$ d' + service_accounts_json='{"totalCount":2,"serviceAccounts":[{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/f741e7abdd8def4ed30a37f602429df3"},{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/6d1b2db67a8f3e06db4ae076406fece5"}],"page":1,"perPage":1000}' + [[ 200 -ne 200 ]] + local service_account_id ++ echo '{"totalCount":2,"serviceAccounts":[{"id":2,"name":"operator","login":"sa-1-operator","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/f741e7abdd8def4ed30a37f602429df3"},{"id":3,"name":"operator_new","login":"sa-1-operator_new","orgId":1,"isDisabled":false,"role":"Admin","tokens":1,"avatarUrl":"/graph/avatar/6d1b2db67a8f3e06db4ae076406fece5"}],"page":1,"perPage":1000}' ++ jq -r '.serviceAccounts[] | select(.name == "operator").id' + service_account_id=2 + [[ -z 2 ]] + [[ 2 == \n\u\l\l ]] + local tokens_response tokens_status tokens_json +++ get_service_endpoint monitoring-service +++ local service=monitoring-service ++++ kubectl_bin get service/monitoring-service -o json ++++ jq '.status.loadBalancer.ingress[].hostname' +++++ mktemp ++++ sed -e 's/^"//; s/"$//;' ++++ local LAST_OUT=/tmp/tmp.mgiSgClLFU +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.flm4tRoPTl ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl get service/monitoring-service -o json ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.mgiSgClLFU ++++ cat /tmp/tmp.flm4tRoPTl ++++ rm /tmp/tmp.mgiSgClLFU /tmp/tmp.flm4tRoPTl ++++ return 0 +++ local hostname=null +++ '[' -n null -a null '!=' null ']' ++++ kubectl_bin get service/monitoring-service -o json ++++ jq '.status.loadBalancer.ingress[].ip' ++++ sed -e 's/^"//; s/"$//;' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.dYqqcgAYvb +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.Net45RKFuw ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl get service/monitoring-service -o json ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.dYqqcgAYvb ++++ cat /tmp/tmp.Net45RKFuw ++++ rm /tmp/tmp.dYqqcgAYvb /tmp/tmp.Net45RKFuw ++++ return 0 +++ local ip=35.239.186.196 +++ '[' -n 35.239.186.196 -a 35.239.186.196 '!=' null ']' +++ echo 35.239.186.196 +++ return ++ curl --insecure -s -X GET --user 'admin:v)yXG(hJg$g#Uz}C' https://35.239.186.196/graph/api/serviceaccounts/2/tokens -w '\n%{http_code}' + tokens_response='[{"id":1,"name":"operator","created":"2025-09-29T20:35:09Z","lastUsedAt":"2025-09-29T20:42:34Z","expiration":null,"secondsUntilExpiration":0,"hasExpired":false,"isRevoked":false}] 200' ++ echo '[{"id":1,"name":"operator","created":"2025-09-29T20:35:09Z","lastUsedAt":"2025-09-29T20:42:34Z","expiration":null,"secondsUntilExpiration":0,"hasExpired":false,"isRevoked":false}] 200' ++ tail -n1 + tokens_status=200 ++ echo '[{"id":1,"name":"operator","created":"2025-09-29T20:35:09Z","lastUsedAt":"2025-09-29T20:42:34Z","expiration":null,"secondsUntilExpiration":0,"hasExpired":false,"isRevoked":false}] 200' ++ sed '$ d' + tokens_json='[{"id":1,"name":"operator","created":"2025-09-29T20:35:09Z","lastUsedAt":"2025-09-29T20:42:34Z","expiration":null,"secondsUntilExpiration":0,"hasExpired":false,"isRevoked":false}]' + [[ 200 -ne 200 ]] + local token_id ++ echo '[{"id":1,"name":"operator","created":"2025-09-29T20:35:09Z","lastUsedAt":"2025-09-29T20:42:34Z","expiration":null,"secondsUntilExpiration":0,"hasExpired":false,"isRevoked":false}]' ++ jq -r '.[] | select(.name == "operator").id' + token_id=1 + [[ -z 1 ]] + [[ 1 == \n\u\l\l ]] + local delete_response delete_status +++ get_service_endpoint monitoring-service +++ local service=monitoring-service ++++ kubectl_bin get service/monitoring-service -o json ++++ jq '.status.loadBalancer.ingress[].hostname' +++++ mktemp ++++ sed -e 's/^"//; s/"$//;' ++++ local LAST_OUT=/tmp/tmp.gOPSBfxInt +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.k9ogigTMUm ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl get service/monitoring-service -o json ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.gOPSBfxInt ++++ cat /tmp/tmp.k9ogigTMUm ++++ rm /tmp/tmp.gOPSBfxInt /tmp/tmp.k9ogigTMUm ++++ return 0 +++ local hostname=null +++ '[' -n null -a null '!=' null ']' ++++ kubectl_bin get service/monitoring-service -o json ++++ jq '.status.loadBalancer.ingress[].ip' ++++ sed -e 's/^"//; s/"$//;' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.QfFjTuHvrB +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.d2AaPSqBiE ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl get service/monitoring-service -o json ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.QfFjTuHvrB ++++ cat /tmp/tmp.d2AaPSqBiE ++++ rm /tmp/tmp.QfFjTuHvrB /tmp/tmp.d2AaPSqBiE ++++ return 0 +++ local ip=35.239.186.196 +++ '[' -n 35.239.186.196 -a 35.239.186.196 '!=' null ']' +++ echo 35.239.186.196 +++ return ++ curl --insecure -s -X DELETE --user 'admin:v)yXG(hJg$g#Uz}C' https://35.239.186.196/graph/api/serviceaccounts/2/tokens/1 -w '\n%{http_code}' + delete_response='{"message":"Service account token deleted"} 200' ++ echo '{"message":"Service account token deleted"} 200' ++ tail -n1 + delete_status=200 + [[ 200 -ne 200 ]] + desc 'check for authentication errors in PMM client logs' + set +o xtrace ----------------------------------------------------------------------------------- check for authentication errors in PMM client logs ----------------------------------------------------------------------------------- ++ kubectl get pods --selector=app.kubernetes.io/replset=rs0 -o 'jsonpath={.items[*].metadata.name}' + pods='monitoring-pmm3-rs0-0 monitoring-pmm3-rs0-1 monitoring-pmm3-rs0-2' + for pod in $pods + for i in {1..3} + kubectl logs monitoring-pmm3-rs0-0 pmm-client + grep -q 'Invalid username or password' + sleep 2 + for i in {1..3} + kubectl logs monitoring-pmm3-rs0-0 pmm-client + grep -q 'Invalid username or password' + sleep 2 + for i in {1..3} + kubectl logs monitoring-pmm3-rs0-0 pmm-client + grep -q 'Invalid username or password' + echo 'pmm token is not configured properly for monitoring-pmm3-rs0-0' pmm token is not configured properly for monitoring-pmm3-rs0-0 + exit 1