++ echo 'Log: /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/logs/self-healing.log' Log: /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/logs/self-healing.log ++ '[' -f /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/cloud-secret.yml ']' ++ SKIP_BACKUPS_TO_AWS_GCP= ++ oc get projects error: the server doesn't have a resource type "projects" +++ kubectl version -o json +++ jq -r .serverVersion.gitVersion +++ grep '\-eks\-' WARNING: version difference between client (1.30) and server (1.26) exceeds the supported minor version skew of +/-1 ++ '[' ']' +++ kubectl version -o json +++ jq -r '.serverVersion.major + "." + .serverVersion.minor' +++ /usr/bin/sed -r 's/[^0-9.]+//g' WARNING: version difference between client (1.30) and server (1.26) exceeds the supported minor version skew of +/-1 ++ KUBE_VERSION=1.26 +++ helm version -c +++ /usr/bin/sed -re 's/.*SemVer:"([^"]+)".*/\1/; s/.*\bVersion:"([^"]+)".*/\1/' ++ HELM_VERSION=v3.14.4 ++ '[' v3 == v2 ']' + main + create_namespace self-healing-6627 + local namespace=self-healing-6627 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|openshift|^NAME' + cleanup_rbac + kubectl_bin delete clusterrolebindings pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-cluster-level + xargs kubectl delete ns ++ mktemp + awk '{print$1}' ++ mktemp + local LAST_OUT=/tmp/tmp.PWkvKuOMwK + local LAST_OUT=/tmp/tmp.VXzE88vbYh ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.46AwPNMBoT + local LAST_ERR=/tmp/tmp.TtvIOd5PP3 + local exit_status=0 + local exit_status=0 + local timeout=4 + local timeout=4 + set +o errexit + set +o errexit ++ seq 0 2 ++ seq 0 2 + for i in '$(seq 0 2)' + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl get ns + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterrolebindings pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-cluster-level + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.PWkvKuOMwK + cat /tmp/tmp.TtvIOd5PP3 + rm /tmp/tmp.PWkvKuOMwK /tmp/tmp.TtvIOd5PP3 + return 0 error: resource(s) were provided, but no name was specified + exit_status=1 + [[ 1 != 0 ]] + sleep 0 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterrolebindings pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-cluster-level + exit_status=1 + [[ 1 != 0 ]] + sleep 4 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterrolebindings pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-cluster-level + exit_status=1 + [[ 1 != 0 ]] + sleep 8 + set -o errexit + cat /tmp/tmp.VXzE88vbYh + cat /tmp/tmp.46AwPNMBoT Error from server (NotFound): clusterrolebindings.rbac.authorization.k8s.io "pgo-cluster-role" not found Error from server (NotFound): clusterrolebindings.rbac.authorization.k8s.io "pgo-deployer-cr" not found Error from server (NotFound): clusterrolebindings.rbac.authorization.k8s.io "chaos-mesh-chaos-controller-manager-cluster-level" not found + rm /tmp/tmp.VXzE88vbYh /tmp/tmp.46AwPNMBoT + return 1 + true + kubectl_bin delete clusterroles pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-target-namespace chaos-mesh-chaos-controller-manager-cluster-level ++ mktemp + local LAST_OUT=/tmp/tmp.RzSs2Fg0sS ++ mktemp + local LAST_ERR=/tmp/tmp.sDJJqygJYB + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterroles pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-target-namespace chaos-mesh-chaos-controller-manager-cluster-level + exit_status=1 + [[ 1 != 0 ]] + sleep 0 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterroles pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-target-namespace chaos-mesh-chaos-controller-manager-cluster-level + exit_status=1 + [[ 1 != 0 ]] + sleep 4 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterroles pgo-cluster-role pgo-deployer-cr chaos-mesh-chaos-controller-manager-target-namespace chaos-mesh-chaos-controller-manager-cluster-level + exit_status=1 + [[ 1 != 0 ]] + sleep 8 + set -o errexit + cat /tmp/tmp.RzSs2Fg0sS + cat /tmp/tmp.sDJJqygJYB Error from server (NotFound): clusterroles.rbac.authorization.k8s.io "pgo-cluster-role" not found Error from server (NotFound): clusterroles.rbac.authorization.k8s.io "pgo-deployer-cr" not found Error from server (NotFound): clusterroles.rbac.authorization.k8s.io "chaos-mesh-chaos-controller-manager-target-namespace" not found Error from server (NotFound): clusterroles.rbac.authorization.k8s.io "chaos-mesh-chaos-controller-manager-cluster-level" not found + rm /tmp/tmp.RzSs2Fg0sS /tmp/tmp.sDJJqygJYB + return 1 + true + kubectl delete MutatingWebhookConfiguration/chaos-mesh-mutation ValidatingWebhookConfiguration/chaos-mesh-validation ValidatingWebhookConfiguration/validate-auth Error from server (NotFound): mutatingwebhookconfigurations.admissionregistration.k8s.io "chaos-mesh-mutation" not found Error from server (NotFound): validatingwebhookconfigurations.admissionregistration.k8s.io "chaos-mesh-validation" not found Error from server (NotFound): validatingwebhookconfigurations.admissionregistration.k8s.io "validate-auth" not found + true + [[ GKE == \O\P\E\N\S\H\I\F\T ]] + kubectl_bin delete namespace self-healing-6627 ++ mktemp + local LAST_OUT=/tmp/tmp.Mz7LSqta1V ++ mktemp + local LAST_ERR=/tmp/tmp.o944wAq2kI + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete namespace self-healing-6627 + exit_status=1 + [[ 1 != 0 ]] + sleep 0 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete namespace self-healing-6627 + exit_status=1 + [[ 1 != 0 ]] + sleep 4 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete namespace self-healing-6627 + exit_status=1 + [[ 1 != 0 ]] + sleep 8 + set -o errexit + cat /tmp/tmp.Mz7LSqta1V + cat /tmp/tmp.o944wAq2kI Error from server (NotFound): namespaces "self-healing-6627" not found + rm /tmp/tmp.Mz7LSqta1V /tmp/tmp.o944wAq2kI + return 1 + : + wait_for_delete namespace/self-healing-6627 + local res=namespace/self-healing-6627 + set +o xtrace namespace/self-healing-6627 - Error from server (NotFound): namespaces "self-healing-6627" not found + kubectl_bin create namespace self-healing-6627 ++ mktemp + local LAST_OUT=/tmp/tmp.bjTuRZqWkt ++ mktemp + local LAST_ERR=/tmp/tmp.YZZQyYu1Ll + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl create namespace self-healing-6627 + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.bjTuRZqWkt namespace/self-healing-6627 created + cat /tmp/tmp.YZZQyYu1Ll + rm /tmp/tmp.bjTuRZqWkt /tmp/tmp.YZZQyYu1Ll + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.SsTmbVq5lu +++ mktemp ++ local LAST_ERR=/tmp/tmp.aLYakqwxgH ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl config current-context ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.SsTmbVq5lu ++ cat /tmp/tmp.aLYakqwxgH ++ rm /tmp/tmp.SsTmbVq5lu /tmp/tmp.aLYakqwxgH ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-c_jen-pg-723-7ed19e708-2-sandbox --namespace=self-healing-6627 ++ mktemp + local LAST_OUT=/tmp/tmp.PPqybxQsna ++ mktemp + local LAST_ERR=/tmp/tmp.Z5qYsBTSMX + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl config set-context gke_cloud-dev-112233_us-central1-c_jen-pg-723-7ed19e708-2-sandbox --namespace=self-healing-6627 + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.PPqybxQsna Context "gke_cloud-dev-112233_us-central1-c_jen-pg-723-7ed19e708-2-sandbox" modified. + cat /tmp/tmp.Z5qYsBTSMX + rm /tmp/tmp.PPqybxQsna /tmp/tmp.Z5qYsBTSMX + return 0 + deploy_operator + local pull_secret_name= + local operator_manifest=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/operator.yaml + local namespace_mode=disabled + local action=install + local namespace=self-healing-6627 + local dont_send_telemetry=false + local version_service_uri_override= + desc 'start operator' + set +o xtrace ----------------------------------------------------------------------------------- start operator ----------------------------------------------------------------------------------- + prepare_operator_yaml '' /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/operator.yaml disabled install self-healing-6627 false + local pull_secret_name= + local operator_manifest=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/operator.yaml + local namespace_mode=disabled + local operator_action=install + local namespace=self-healing-6627 + local dont_send_telemetry=false + yq r -d2 /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/operator.yaml 'data[values.yaml]' + /usr/bin/sed -e 's#^namespace: .*#namespace: "self-healing-6627"#g' + /usr/bin/sed -e 's#namespace_mode: .*#namespace_mode: "disabled"#g' + /usr/bin/sed -e 's#pgo_operator_namespace: .*#pgo_operator_namespace: "self-healing-6627"#g' + /usr/bin/sed -e 's#^disable_telemetry: .*#disable_telemetry: "false"#g' + cat /dev/fd/63 - ++ echo 'crunchy_debug: "true"' ++ echo perconalab/percona-postgresql-operator:PR-723-7ed19e708 ++ cut -d: -f2 ++ echo perconalab/percona-postgresql-operator:PR-723-7ed19e708 ++ cut -d: -f1 + /usr/bin/sed -e 's#pgo_image_prefix: .*#pgo_image_prefix: "perconalab/percona-postgresql-operator"#g' + /usr/bin/sed -e 's#pgo_image_tag: .*#pgo_image_tag: "PR-723-7ed19e708"#g' + [[ -n '' ]] + [[ GKE == \O\P\E\N\S\H\I\F\T ]] + yq w '-d*' /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/operator.yaml metadata.namespace self-healing-6627 + yq w -d3 - 'subjects[0].namespace' self-healing-6627 + yq w -d4 - 'spec.template.spec.containers[0].image' perconalab/percona-postgresql-operator:PR-723-7ed19e708-pgo-deployer + yq w -d4 - 'spec.template.spec.containers[0].env[0].value' install ++ cat /tmp/tmp.aGM77CJ1IG/operator.ini + yq w -d2 - -d2 'data[values.yaml]' 'crunchy_debug: "true" archive_mode: "true" archive_timeout: "60" ccp_image_pull_secret: "" ccp_image_pull_secret_manifest: "" create_rbac: "true" delete_operator_namespace: "false" delete_watched_namespaces: "false" disable_telemetry: "false" namespace: "self-healing-6627" namespace_mode: "disabled" pgo_image_prefix: "perconalab/percona-postgresql-operator" pgo_image_pull_policy: "Always" pgo_image_pull_secret: "" pgo_image_pull_secret_manifest: "" pgo_image_tag: "PR-723-7ed19e708" pgo_operator_namespace: "self-healing-6627"' + [[ -n '' ]] + kubectl_bin apply -f /tmp/tmp.aGM77CJ1IG/operator.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.hDTYtkx9Bx ++ mktemp + local LAST_ERR=/tmp/tmp.v6GWSnPqW9 + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl apply -f /tmp/tmp.aGM77CJ1IG/operator.yaml + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.hDTYtkx9Bx serviceaccount/pgo-deployer-sa created clusterrole.rbac.authorization.k8s.io/pgo-deployer-cr created configmap/pgo-deployer-cm created clusterrolebinding.rbac.authorization.k8s.io/pgo-deployer-crb created job.batch/pgo-deploy created + cat /tmp/tmp.v6GWSnPqW9 + rm /tmp/tmp.hDTYtkx9Bx /tmp/tmp.v6GWSnPqW9 + return 0 + wait_job_completion pgo-deploy true + local job=pgo-deploy + local mandatory=true + local ns=self-healing-6627 + retry=0 + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' pgo-deploy+ retry=0 ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 1 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 2 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 3 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 4 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 5 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 6 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 7 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 8 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 9 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 10 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 11 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 12 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 13 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 14 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 15 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 16 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 17 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 18 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 19 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 20 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 21 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 22 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 23 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 24 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 25 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 26 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 27 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 28 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 29 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 30 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 31 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 32 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 33 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 34 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ 1 == \1 ]] + echo + kubectl_bin delete -f /tmp/tmp.aGM77CJ1IG/operator.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.kt9ZRBATDk ++ mktemp + local LAST_ERR=/tmp/tmp.LiyR37cbmC + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete -f /tmp/tmp.aGM77CJ1IG/operator.yaml + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.kt9ZRBATDk serviceaccount "pgo-deployer-sa" deleted clusterrole.rbac.authorization.k8s.io "pgo-deployer-cr" deleted configmap "pgo-deployer-cm" deleted clusterrolebinding.rbac.authorization.k8s.io "pgo-deployer-crb" deleted job.batch "pgo-deploy" deleted + cat /tmp/tmp.LiyR37cbmC + rm /tmp/tmp.kt9ZRBATDk /tmp/tmp.LiyR37cbmC + return 0 ++ get_operator_pod ++ kubectl_bin get pods --selector=name=postgres-operator -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.209CF7q8RJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.79cNw92PgE ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl get pods --selector=name=postgres-operator -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.209CF7q8RJ ++ cat /tmp/tmp.79cNw92PgE ++ rm /tmp/tmp.209CF7q8RJ /tmp/tmp.79cNw92PgE ++ return 0 + wait_pod postgres-operator-579fd7ccc8-j4fsx + local pod=postgres-operator-579fd7ccc8-j4fsx + local ns= + set +o xtrace postgres-operator-579fd7ccc8-j4fsxtrue + [[ -n '' ]] + deploy_chaos_mesh self-healing-6627 + local chaos_mesh_ns=self-healing-6627 + desc 'install chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- install chaos-mesh ----------------------------------------------------------------------------------- ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' + local old_cm_namespace=NAMESPACE + '[' NAMESPACE '!=' NAMESPACE ']' + helm repo remove chaos-mesh Error: no repo named "chaos-mesh" found + : + helm repo add chaos-mesh https://charts.chaos-mesh.org "chaos-mesh" has been added to your repositories + case ${PLATFORM} in + version_gt 1.19 ++ echo '1.26 >= 1.19' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + helm install chaos-mesh chaos-mesh/chaos-mesh --namespace=self-healing-6627 --set chaosDaemon.runtime=containerd --set chaosDaemon.socketPath=/run/containerd/containerd.sock --set dashboard.create=false --version v2.0.4 --set clusterScoped=false --set controllerManager.targetNamespace=self-healing-6627 NAME: chaos-mesh LAST DEPLOYED: Wed Apr 24 19:28:11 2024 NAMESPACE: self-healing-6627 STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: 1. Make sure chaos-mesh components are running kubectl get pods --namespace self-healing-6627 -l app.kubernetes.io/instance=chaos-mesh + sleep 10 + desc 'start cluster' + set +o xtrace ----------------------------------------------------------------------------------- start cluster ----------------------------------------------------------------------------------- + cluster=some-name + spinup_pgcluster some-name /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/cr.yaml + local cluster=some-name + local config=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/cr.yaml + local backup=false + local custom_config=false + local podAntiAffinity=false + local schedule=false + local schedule_type=false + local tls_only=false + local pgoClientFile=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/client.yml + local namespace=self-healing-6627 + local root_via_pgbouncer= + desc 'create fresh PG cluster' + set +o xtrace ----------------------------------------------------------------------------------- create fresh PG cluster ----------------------------------------------------------------------------------- + create_user_secrets some-name self-healing-6627 + local cluster=some-name + local namespace=self-healing-6627 + yq w - metadata.name some-name-users-secret + yq w - stringData.some-name some-name_pass + yq r -d0 /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/users-secret.yaml + kubectl_bin -n self-healing-6627 apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.3vhFxVInvB ++ mktemp + local LAST_ERR=/tmp/tmp.XIur05X2cL + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl -n self-healing-6627 apply -f - + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.3vhFxVInvB secret/some-name-users-secret created + cat /tmp/tmp.XIur05X2cL + rm /tmp/tmp.3vhFxVInvB /tmp/tmp.XIur05X2cL + return 0 + yq r -d1 /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/users-secret.yaml + kubectl_bin -n self-healing-6627 apply -f - + yq w - metadata.name some-name-pmm-secret ++ mktemp + local LAST_OUT=/tmp/tmp.93fiudIJIX ++ mktemp + local LAST_ERR=/tmp/tmp.U5yYdn8QFI + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl -n self-healing-6627 apply -f - + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.93fiudIJIX secret/some-name-pmm-secret created + cat /tmp/tmp.U5yYdn8QFI + rm /tmp/tmp.93fiudIJIX /tmp/tmp.U5yYdn8QFI + return 0 + kubectl_bin -n self-healing-6627 apply -f /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/client.yml ++ mktemp + local LAST_OUT=/tmp/tmp.dtAdU8h7v9 ++ mktemp + local LAST_ERR=/tmp/tmp.aAF1VKfUKJ + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl -n self-healing-6627 apply -f /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/client.yml + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.dtAdU8h7v9 deployment.apps/pg-client created + cat /tmp/tmp.aAF1VKfUKJ + rm /tmp/tmp.dtAdU8h7v9 /tmp/tmp.aAF1VKfUKJ + return 0 + apply_cluster /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/cr.yaml some-name false false false false false false false false + local path=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/cr.yaml + local name=some-name + local backup=false + local restore_from=false + local restore_opts=false + local custom_config=false + local podAntiAffinity=false + local schedule=false + local schedule_type=false + local tls_only=false + local root_via_pgbouncer= + yq w /mnt/jenkins/workspace/cloud-pg-operator_PR-723/deploy/cr.yaml metadata.annotations.current-primary some-name + yq w - metadata.labels.crunchy-pgha-scope some-name + yq w - metadata.labels.deployment-name some-name + yq w - spec.keepData false + yq w - spec.name some-name + yq w - metadata.labels.name some-name + yq w - spec.database some-name + yq w - spec.pgPrimary.image perconalab/percona-postgresql-operator:main-ppg14-postgres-ha + yq w - spec.backup.backrestRepoImage perconalab/percona-postgresql-operator:main-ppg14-pgbackrest-repo + yq w - spec.pmm.image perconalab/pmm-client:2.41.0 + yq w - spec.keepBackups false + yq w - spec.clustername some-name + yq w - spec.pgBouncer.image perconalab/percona-postgresql-operator:main-ppg14-pgbouncer + yq w - spec.user some-name + yq w - metadata.labels.pg-cluster some-name + yq w - spec.backup.image perconalab/percona-postgresql-operator:main-ppg14-pgbackrest + yq w - spec.secretsName some-name-users-secret + yq w - spec.pgBadger.image perconalab/percona-postgresql-operator:main-ppg14-pgbadger + yq w - metadata.name some-name + case ${podAntiAffinity} in + case ${backup} in + [[ false != \f\a\l\s\e ]] + [[ false != \f\a\l\s\e ]] + [[ false == \t\r\u\e ]] + [[ '' == \t\r\u\e ]] + kubectl_bin apply -f /tmp/tmp.aGM77CJ1IG/cr.yaml -n self-healing-6627 ++ mktemp + local LAST_OUT=/tmp/tmp.EKb7GQIu5z ++ mktemp + local LAST_ERR=/tmp/tmp.aEpB6TEuxh + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl apply -f /tmp/tmp.aGM77CJ1IG/cr.yaml -n self-healing-6627 + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.EKb7GQIu5z perconapgcluster.pg.percona.com/some-name created + cat /tmp/tmp.aEpB6TEuxh + rm /tmp/tmp.EKb7GQIu5z /tmp/tmp.aEpB6TEuxh + return 0 + wait_deployment some-name-backrest-shared-repo + local name=some-name-backrest-shared-repo + local target_namespace=self-healing-6627 + sleep 10 + set +o xtrace some-name-backrest-shared-repo... + wait_deployment some-name + local name=some-name + local target_namespace=self-healing-6627 + sleep 10 + set +o xtrace some-name........ + [[ false == \g\c\s\+* ]] + wait_job_completion some-name-stanza-create false + local job=some-name-stanza-create + local mandatory=false + local ns=self-healing-6627 + retry=0 + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.metadata.name}' some-name-stanza-create+ retry=0 ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 1 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 2 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 3 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 4 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/some-name-stanza-create -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ not found == \n\o\t\ \f\o\u\n\d ]] + echo + wait_job_completion backrest-backup-some-name + local job=backrest-backup-some-name + local mandatory=true + local ns=self-healing-6627 + retry=0 + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl -n self-healing-6627 get job/backrest-backup-some-name -o 'jsonpath={.metadata.name}' backrest-backup-some-name+ retry=0 ++ kubectl_bin -n self-healing-6627 get job/backrest-backup-some-name -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/backrest-backup-some-name -o 'jsonpath={.status.succeeded}' + [[ 1 == \1 ]] + echo + wait_cluster_consistency some-name + cluster_name=some-name + wait_cluster_status some-name 'pgcluster Initialized' + local cluster_name=some-name + local 'target_status=pgcluster Initialized' + local target_namespace=self-healing-6627 + local status_query= + case $(kubectl_bin get perconapgcluster/${cluster_name} -o jsonpath='{.metadata.labels.pgo-version}') in ++ kubectl_bin get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.m4K8DCRwbG +++ mktemp ++ local LAST_ERR=/tmp/tmp.2i7b34Ep06 ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.m4K8DCRwbG ++ cat /tmp/tmp.2i7b34Ep06 ++ rm /tmp/tmp.m4K8DCRwbG /tmp/tmp.2i7b34Ep06 ++ return 0 + status_query='kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o jsonpath='\''{.status.PGCluster.state}'\''' + local retry=0 ++ eval kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath='\''{.status.PGCluster.state}'\''' +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.status.PGCluster.state}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.4YlnhslKWl ++++ mktemp +++ local LAST_ERR=/tmp/tmp.24F817xl1A +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.status.PGCluster.state}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.4YlnhslKWl +++ cat /tmp/tmp.24F817xl1A +++ rm /tmp/tmp.4YlnhslKWl /tmp/tmp.24F817xl1A +++ return 0 + [[ pgcluster Processed == \p\g\c\l\u\s\t\e\r\ \I\n\i\t\i\a\l\i\z\e\d ]] + let retry+=1 + '[' 1 -ge 24 ']' + echo 'waiting for cluster readyness' waiting for cluster readyness + sleep 10 ++ eval kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath='\''{.status.PGCluster.state}'\''' +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.status.PGCluster.state}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.uHFeJEz4Jg ++++ mktemp +++ local LAST_ERR=/tmp/tmp.HpQ76FBjTH +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.status.PGCluster.state}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.uHFeJEz4Jg +++ cat /tmp/tmp.HpQ76FBjTH +++ rm /tmp/tmp.uHFeJEz4Jg /tmp/tmp.HpQ76FBjTH +++ return 0 + [[ pgcluster Initialized == \p\g\c\l\u\s\t\e\r\ \I\n\i\t\i\a\l\i\z\e\d ]] + sleep 10 + desc 'write data' + set +o xtrace ----------------------------------------------------------------------------------- write data ----------------------------------------------------------------------------------- ++ get_psql_user_pass postgres some-name ++ local user=postgres ++ local cluster=some-name ++ local namespace=self-healing-6627 +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.g2afn7kfBs ++++ mktemp +++ local LAST_ERR=/tmp/tmp.cOYeRVf8OE +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.metadata.name}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.g2afn7kfBs +++ cat /tmp/tmp.cOYeRVf8OE +++ rm /tmp/tmp.g2afn7kfBs /tmp/tmp.cOYeRVf8OE +++ return 0 ++ [[ xsome-name == \x ]] ++ case $(kubectl_bin get perconapgcluster/${cluster_name} -o jsonpath='{.metadata.labels.pgo-version}') in +++ kubectl_bin get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.D8ac5Nhrwe ++++ mktemp +++ local LAST_ERR=/tmp/tmp.TXu5abwnAP +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.D8ac5Nhrwe +++ cat /tmp/tmp.TXu5abwnAP +++ rm /tmp/tmp.D8ac5Nhrwe /tmp/tmp.TXu5abwnAP +++ return 0 +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.7OWxivOrlb ++++ mktemp +++ local LAST_ERR=/tmp/tmp.ntGATeVgr7 +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.7OWxivOrlb +++ cat /tmp/tmp.ntGATeVgr7 +++ rm /tmp/tmp.7OWxivOrlb /tmp/tmp.ntGATeVgr7 +++ return 0 ++ [[ xsome-name-users-secret == \x ]] +++ base64 -d ++++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.kGK11AkUtE +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.yVVy7EE0HA ++++ local exit_status=0 ++++ local timeout=4 ++++ set +o errexit +++++ seq 0 2 ++++ for i in '$(seq 0 2)' ++++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' ++++ exit_status=0 ++++ [[ 0 != 0 ]] ++++ break ++++ set -o errexit ++++ cat /tmp/tmp.kGK11AkUtE ++++ cat /tmp/tmp.yVVy7EE0HA ++++ rm /tmp/tmp.kGK11AkUtE /tmp/tmp.yVVy7EE0HA ++++ return 0 +++ kubectl_bin -n self-healing-6627 get secret/some-name-users-secret -o 'jsonpath={.data.postgres}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.Ei8wF8JqNu ++++ mktemp +++ local LAST_ERR=/tmp/tmp.7eGqHbwqYz +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get secret/some-name-users-secret -o 'jsonpath={.data.postgres}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.Ei8wF8JqNu +++ cat /tmp/tmp.7eGqHbwqYz +++ rm /tmp/tmp.Ei8wF8JqNu /tmp/tmp.7eGqHbwqYz +++ return 0 ++ echo postgres_password + run_psql 'CREATE DATABASE myapp; \c myapp \\\ CREATE TABLE IF NOT EXISTS myApp (id int PRIMARY KEY);' postgres:postgres_password@some-name.self-healing-6627 + local 'command=CREATE DATABASE myapp; \c myapp \\\ CREATE TABLE IF NOT EXISTS myApp (id int PRIMARY KEY);' + local uri=postgres:postgres_password@some-name.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.kVKs4LuMky +++ mktemp ++ local LAST_ERR=/tmp/tmp.v0BWGAjyw1 ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.kVKs4LuMky ++ cat /tmp/tmp.v0BWGAjyw1 ++ rm /tmp/tmp.kVKs4LuMky /tmp/tmp.v0BWGAjyw1 ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''CREATE DATABASE myapp; \c myapp \\\ CREATE TABLE IF NOT EXISTS myApp (id int PRIMARY KEY);\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://postgres:postgres_password@some-name.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.Lp0MeU6ygA ++ mktemp + local LAST_ERR=/tmp/tmp.d2p7vdPsYN + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''CREATE DATABASE myapp; \c myapp \\\ CREATE TABLE IF NOT EXISTS myApp (id int PRIMARY KEY);\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://postgres:postgres_password@some-name.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.Lp0MeU6ygA + cat /tmp/tmp.d2p7vdPsYN + rm /tmp/tmp.Lp0MeU6ygA /tmp/tmp.d2p7vdPsYN + return 0 ++ get_psql_user_pass postgres some-name ++ local user=postgres ++ local cluster=some-name ++ local namespace=self-healing-6627 +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.P969OhahDd ++++ mktemp +++ local LAST_ERR=/tmp/tmp.zCICCV4FEU +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.metadata.name}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.P969OhahDd +++ cat /tmp/tmp.zCICCV4FEU +++ rm /tmp/tmp.P969OhahDd /tmp/tmp.zCICCV4FEU +++ return 0 ++ [[ xsome-name == \x ]] ++ case $(kubectl_bin get perconapgcluster/${cluster_name} -o jsonpath='{.metadata.labels.pgo-version}') in +++ kubectl_bin get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.2HOcjQHDul ++++ mktemp +++ local LAST_ERR=/tmp/tmp.5Jiw4fbzeo +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.2HOcjQHDul +++ cat /tmp/tmp.5Jiw4fbzeo +++ rm /tmp/tmp.2HOcjQHDul /tmp/tmp.5Jiw4fbzeo +++ return 0 +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.TLmvY6jvLH ++++ mktemp +++ local LAST_ERR=/tmp/tmp.NNpCgQcK4c +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.TLmvY6jvLH +++ cat /tmp/tmp.NNpCgQcK4c +++ rm /tmp/tmp.TLmvY6jvLH /tmp/tmp.NNpCgQcK4c +++ return 0 ++ [[ xsome-name-users-secret == \x ]] +++ base64 -d ++++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.s6hX1qrNHH +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.vYBk0LDVWm ++++ local exit_status=0 ++++ local timeout=4 ++++ set +o errexit +++++ seq 0 2 ++++ for i in '$(seq 0 2)' ++++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' ++++ exit_status=0 ++++ [[ 0 != 0 ]] ++++ break ++++ set -o errexit ++++ cat /tmp/tmp.s6hX1qrNHH ++++ cat /tmp/tmp.vYBk0LDVWm ++++ rm /tmp/tmp.s6hX1qrNHH /tmp/tmp.vYBk0LDVWm ++++ return 0 +++ kubectl_bin -n self-healing-6627 get secret/some-name-users-secret -o 'jsonpath={.data.postgres}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.hmzcWCZt32 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.JevOfz0mjv +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get secret/some-name-users-secret -o 'jsonpath={.data.postgres}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.hmzcWCZt32 +++ cat /tmp/tmp.JevOfz0mjv +++ rm /tmp/tmp.hmzcWCZt32 /tmp/tmp.JevOfz0mjv +++ return 0 ++ echo postgres_password + run_psql '\c myapp \\\ INSERT INTO myApp (id) VALUES (100500)' postgres:postgres_password@some-name.self-healing-6627 + local 'command=\c myapp \\\ INSERT INTO myApp (id) VALUES (100500)' + local uri=postgres:postgres_password@some-name.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.VNGd7hnLoC +++ mktemp ++ local LAST_ERR=/tmp/tmp.DCXHATDpq9 ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.VNGd7hnLoC ++ cat /tmp/tmp.DCXHATDpq9 ++ rm /tmp/tmp.VNGd7hnLoC /tmp/tmp.DCXHATDpq9 ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ INSERT INTO myApp (id) VALUES (100500)\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://postgres:postgres_password@some-name.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.LOnxncZOk0 ++ mktemp + local LAST_ERR=/tmp/tmp.7xqNig5UD7 + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ INSERT INTO myApp (id) VALUES (100500)\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://postgres:postgres_password@some-name.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.LOnxncZOk0 + cat /tmp/tmp.7xqNig5UD7 + rm /tmp/tmp.LOnxncZOk0 /tmp/tmp.7xqNig5UD7 + return 0 ++ get_psql_user_pass postgres some-name ++ local user=postgres ++ local cluster=some-name ++ local namespace=self-healing-6627 +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.I2T9RHaMIS ++++ mktemp +++ local LAST_ERR=/tmp/tmp.SMqemW2ksv +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.metadata.name}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.I2T9RHaMIS +++ cat /tmp/tmp.SMqemW2ksv +++ rm /tmp/tmp.I2T9RHaMIS /tmp/tmp.SMqemW2ksv +++ return 0 ++ [[ xsome-name == \x ]] ++ case $(kubectl_bin get perconapgcluster/${cluster_name} -o jsonpath='{.metadata.labels.pgo-version}') in +++ kubectl_bin get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.OKXj6aEKyx ++++ mktemp +++ local LAST_ERR=/tmp/tmp.a8DZYRZKMB +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get perconapgcluster/some-name -o 'jsonpath={.metadata.labels.pgo-version}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.OKXj6aEKyx +++ cat /tmp/tmp.a8DZYRZKMB +++ rm /tmp/tmp.OKXj6aEKyx /tmp/tmp.a8DZYRZKMB +++ return 0 +++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.svmLN0T39Y ++++ mktemp +++ local LAST_ERR=/tmp/tmp.ikuCeYlnnr +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.svmLN0T39Y +++ cat /tmp/tmp.ikuCeYlnnr +++ rm /tmp/tmp.svmLN0T39Y /tmp/tmp.ikuCeYlnnr +++ return 0 ++ [[ xsome-name-users-secret == \x ]] +++ base64 -d ++++ kubectl_bin -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.3X4r5em9gR +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.jbED5DZdY5 ++++ local exit_status=0 ++++ local timeout=4 ++++ set +o errexit +++++ seq 0 2 ++++ for i in '$(seq 0 2)' ++++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++++ kubectl -n self-healing-6627 get perconapgcluster/some-name -o 'jsonpath={.spec.secretsName}' ++++ exit_status=0 ++++ [[ 0 != 0 ]] ++++ break ++++ set -o errexit ++++ cat /tmp/tmp.3X4r5em9gR ++++ cat /tmp/tmp.jbED5DZdY5 ++++ rm /tmp/tmp.3X4r5em9gR /tmp/tmp.jbED5DZdY5 ++++ return 0 +++ kubectl_bin -n self-healing-6627 get secret/some-name-users-secret -o 'jsonpath={.data.postgres}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.1fUGnC7Y2I ++++ mktemp +++ local LAST_ERR=/tmp/tmp.bJ5Y0r37iE +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl -n self-healing-6627 get secret/some-name-users-secret -o 'jsonpath={.data.postgres}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.1fUGnC7Y2I +++ cat /tmp/tmp.bJ5Y0r37iE +++ rm /tmp/tmp.1fUGnC7Y2I /tmp/tmp.bJ5Y0r37iE +++ return 0 ++ echo postgres_password + run_psql '\c myapp \\\ GRANT SELECT,INSERT ON myApp to "some-name";GRANT USAGE ON SCHEMA public TO "some-name";' postgres:postgres_password@some-name.self-healing-6627 + local 'command=\c myapp \\\ GRANT SELECT,INSERT ON myApp to "some-name";GRANT USAGE ON SCHEMA public TO "some-name";' + local uri=postgres:postgres_password@some-name.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.z6DbSlOZU5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.bcmjMwUFvL ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.z6DbSlOZU5 ++ cat /tmp/tmp.bcmjMwUFvL ++ rm /tmp/tmp.z6DbSlOZU5 /tmp/tmp.bcmjMwUFvL ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ GRANT SELECT,INSERT ON myApp to "some-name";GRANT USAGE ON SCHEMA public TO "some-name";\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://postgres:postgres_password@some-name.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.hbrNfp9Uw3 ++ mktemp + local LAST_ERR=/tmp/tmp.77ZKvaSWlW + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ GRANT SELECT,INSERT ON myApp to "some-name";GRANT USAGE ON SCHEMA public TO "some-name";\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://postgres:postgres_password@some-name.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.hbrNfp9Uw3 + cat /tmp/tmp.77ZKvaSWlW + rm /tmp/tmp.hbrNfp9Uw3 /tmp/tmp.77ZKvaSWlW + return 0 + sleep 10 ++ get_pod_by_role some-name master name ++ local cluster=some-name ++ local role=master ++ local parameter=name ++ case ${parameter} in ++ local 'jsonpath={.items[].metadata.name}' +++ kubectl_bin get pods --selector=role=master,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.FaNhiL4TzF ++++ mktemp +++ local LAST_ERR=/tmp/tmp.mvkG64LaRL +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get pods --selector=role=master,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.FaNhiL4TzF +++ cat /tmp/tmp.mvkG64LaRL +++ rm /tmp/tmp.FaNhiL4TzF /tmp/tmp.mvkG64LaRL +++ return 0 ++ echo some-name-696f799f57-skqmz + kill_pod some-name-696f799f57-skqmz + local pod=some-name-696f799f57-skqmz + cat /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/chaos-pod-kill.yml + yq w - metadata.name chaos-cluster-pod-kill-12514 + yq w - metadata.namespace self-healing-6627 + kubectl_bin apply -f - + yq w - 'spec.selector.pods.self-healing-6627[0]' some-name-696f799f57-skqmz ++ mktemp + local LAST_OUT=/tmp/tmp.dsX2ZVwVF7 ++ mktemp + local LAST_ERR=/tmp/tmp.530Hlki0pk + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl apply -f - + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.dsX2ZVwVF7 podchaos.chaos-mesh.org/chaos-cluster-pod-kill-12514 created + cat /tmp/tmp.530Hlki0pk + rm /tmp/tmp.dsX2ZVwVF7 /tmp/tmp.530Hlki0pk + return 0 + sleep 5 + wait_deployment some-name + local name=some-name + local target_namespace=self-healing-6627 + sleep 10 + set +o xtrace some-name.. + compare_psql_cmd select-1 '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local command_id=select-1 + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local postfix= + local uri_suffix= + local expected_result=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-1.sql + run_psql '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 postgres '' + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.rkcUqRArw5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.aBjm87UYaf ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.rkcUqRArw5 ++ cat /tmp/tmp.aBjm87UYaf ++ rm /tmp/tmp.rkcUqRArw5 /tmp/tmp.aBjm87UYaf ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.7PyYuUPcJG ++ mktemp + local LAST_ERR=/tmp/tmp.FdFV1Ss4vf + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.7PyYuUPcJG + cat /tmp/tmp.FdFV1Ss4vf + rm /tmp/tmp.7PyYuUPcJG /tmp/tmp.FdFV1Ss4vf + return 0 + '[' '!' -s /tmp/tmp.aGM77CJ1IG/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-1.sql /tmp/tmp.aGM77CJ1IG/select-1.sql ++ get_pod_by_role some-name master name ++ local cluster=some-name ++ local role=master ++ local parameter=name ++ case ${parameter} in ++ local 'jsonpath={.items[].metadata.name}' +++ kubectl_bin get pods --selector=role=master,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.jUowsfKPlI ++++ mktemp +++ local LAST_ERR=/tmp/tmp.raWFA5K0ZH +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get pods --selector=role=master,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.jUowsfKPlI +++ cat /tmp/tmp.raWFA5K0ZH +++ rm /tmp/tmp.jUowsfKPlI /tmp/tmp.raWFA5K0ZH +++ return 0 ++ echo some-name-repl2-57cf7d6dcf-vtzst + failure_pod some-name-repl2-57cf7d6dcf-vtzst + local pod=some-name-repl2-57cf7d6dcf-vtzst + cat /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/chaos-pod-failure.yml + yq w - metadata.namespace self-healing-6627 + yq w - 'spec.selector.pods.self-healing-6627[0]' some-name-repl2-57cf7d6dcf-vtzst + yq w - metadata.name chaos-cluster-pod-failure-5329 + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.0GVxPuVemp ++ mktemp + local LAST_ERR=/tmp/tmp.MsfgPDwmwo + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl apply -f - + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.0GVxPuVemp podchaos.chaos-mesh.org/chaos-cluster-pod-failure-5329 created + cat /tmp/tmp.MsfgPDwmwo + rm /tmp/tmp.0GVxPuVemp /tmp/tmp.MsfgPDwmwo + return 0 + sleep 10 + sleep 30 + compare_psql_cmd select-1 '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local command_id=select-1 + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local postfix= + local uri_suffix= + local expected_result=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-1.sql + run_psql '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 postgres '' + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.tE1VvfKMSE +++ mktemp ++ local LAST_ERR=/tmp/tmp.LA8gVdbRE8 ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.tE1VvfKMSE ++ cat /tmp/tmp.LA8gVdbRE8 ++ rm /tmp/tmp.tE1VvfKMSE /tmp/tmp.LA8gVdbRE8 ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.RWcz6wh4gR ++ mktemp + local LAST_ERR=/tmp/tmp.YQaQeyBsFX + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.RWcz6wh4gR + cat /tmp/tmp.YQaQeyBsFX + rm /tmp/tmp.RWcz6wh4gR /tmp/tmp.YQaQeyBsFX + return 0 + '[' '!' -s /tmp/tmp.aGM77CJ1IG/select-1.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-1.sql /tmp/tmp.aGM77CJ1IG/select-1.sql + kubectl_bin patch perconapgcluster/some-name --type json -p '[{"op": "replace", "path": "/spec/pgReplicas/hotStandby/size", "value": 2}]' ++ mktemp + local LAST_OUT=/tmp/tmp.xlOMJxnxQi ++ mktemp + local LAST_ERR=/tmp/tmp.IEFH163cdz + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl patch perconapgcluster/some-name --type json -p '[{"op": "replace", "path": "/spec/pgReplicas/hotStandby/size", "value": 2}]' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.xlOMJxnxQi perconapgcluster.pg.percona.com/some-name patched (no change) + cat /tmp/tmp.IEFH163cdz + rm /tmp/tmp.xlOMJxnxQi /tmp/tmp.IEFH163cdz + return 0 + sleep 5 + wait_deployment some-name-repl1 + local name=some-name-repl1 + local target_namespace=self-healing-6627 + sleep 10 + set +o xtrace some-name-repl1 + wait_deployment some-name-repl2 + local name=some-name-repl2 + local target_namespace=self-healing-6627 + sleep 10 + set +o xtrace some-name-repl2 ++ get_pod_by_role some-name replica name repl1 ++ local cluster=some-name ++ local role=replica ++ local parameter=name ++ case ${parameter} in ++ local 'jsonpath={.items[].metadata.name}' +++ kubectl_bin get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.QeHjY52v9f ++++ mktemp +++ local LAST_ERR=/tmp/tmp.83k9iPkbyE +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.QeHjY52v9f +++ cat /tmp/tmp.83k9iPkbyE +++ rm /tmp/tmp.QeHjY52v9f /tmp/tmp.83k9iPkbyE +++ return 0 ++ echo some-name-repl1-7987df9b7-76ctc + kill_pod some-name-repl1-7987df9b7-76ctc + local pod=some-name-repl1-7987df9b7-76ctc + cat /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/chaos-pod-kill.yml + yq w - metadata.namespace self-healing-6627 + yq w - 'spec.selector.pods.self-healing-6627[0]' some-name-repl1-7987df9b7-76ctc + kubectl_bin apply -f - + yq w - metadata.name chaos-cluster-pod-kill-9526 ++ mktemp + local LAST_OUT=/tmp/tmp.L1M9vQ8Ftv ++ mktemp + local LAST_ERR=/tmp/tmp.I9nzUqbDZG + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl apply -f - + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.L1M9vQ8Ftv podchaos.chaos-mesh.org/chaos-cluster-pod-kill-9526 created + cat /tmp/tmp.I9nzUqbDZG + rm /tmp/tmp.L1M9vQ8Ftv /tmp/tmp.I9nzUqbDZG + return 0 + sleep 5 + run_psql '\c myapp \\\ INSERT INTO myApp (id) VALUES (100501)' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local 'command=\c myapp \\\ INSERT INTO myApp (id) VALUES (100501)' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.evFWKJ5luZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.JVc4ZJ9fSk ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.evFWKJ5luZ ++ cat /tmp/tmp.JVc4ZJ9fSk ++ rm /tmp/tmp.evFWKJ5luZ /tmp/tmp.JVc4ZJ9fSk ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ INSERT INTO myApp (id) VALUES (100501)\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.xShyfWX5MB ++ mktemp + local LAST_ERR=/tmp/tmp.UCaVQ9polC + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ INSERT INTO myApp (id) VALUES (100501)\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.xShyfWX5MB + cat /tmp/tmp.UCaVQ9polC + rm /tmp/tmp.xShyfWX5MB /tmp/tmp.UCaVQ9polC + return 0 + compare_psql_cmd select-2 '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local command_id=select-2 + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local postfix= + local uri_suffix= + local expected_result=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-2.sql + run_psql '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 postgres '' + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.RfEUpHkiEZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.NRfO4wHez9 ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.RfEUpHkiEZ ++ cat /tmp/tmp.NRfO4wHez9 ++ rm /tmp/tmp.RfEUpHkiEZ /tmp/tmp.NRfO4wHez9 ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.yhMSgCZGkX ++ mktemp + local LAST_ERR=/tmp/tmp.sXgDnSLO6Y + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.yhMSgCZGkX + cat /tmp/tmp.sXgDnSLO6Y + rm /tmp/tmp.yhMSgCZGkX /tmp/tmp.sXgDnSLO6Y + return 0 + '[' '!' -s /tmp/tmp.aGM77CJ1IG/select-2.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-2.sql /tmp/tmp.aGM77CJ1IG/select-2.sql + wait_deployment some-name-repl1 + local name=some-name-repl1 + local target_namespace=self-healing-6627 + sleep 10 + set +o xtrace some-name-repl1. ++ get_pod_by_role some-name replica IP repl1 ++ local cluster=some-name ++ local role=replica ++ local parameter=IP ++ case ${parameter} in ++ local 'jsonpath={.items[].status.podIP}' +++ kubectl_bin get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].status.podIP}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.wjhBtypTbb ++++ mktemp +++ local LAST_ERR=/tmp/tmp.A9ygt2uWwD +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].status.podIP}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.wjhBtypTbb +++ cat /tmp/tmp.A9ygt2uWwD +++ rm /tmp/tmp.wjhBtypTbb /tmp/tmp.A9ygt2uWwD +++ return 0 ++ echo 10.109.89.81 + repl1_pod_ip=10.109.89.81 + compare_psql_cmd select-2 '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@10-109-89-81.self-healing-6627 '' .pod.cluster.local + local command_id=select-2 + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@10-109-89-81.self-healing-6627 + local postfix= + local uri_suffix=.pod.cluster.local + local expected_result=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-2.sql + run_psql '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@10-109-89-81.self-healing-6627 postgres .pod.cluster.local + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@10-109-89-81.self-healing-6627 + local driver=postgres + local suffix=.pod.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.v7wm9rSmvM +++ mktemp ++ local LAST_ERR=/tmp/tmp.JDtCqxv0kP ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.v7wm9rSmvM ++ cat /tmp/tmp.JDtCqxv0kP ++ rm /tmp/tmp.v7wm9rSmvM /tmp/tmp.JDtCqxv0kP ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@10-109-89-81.self-healing-6627.pod.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.REJcPOgOEq ++ mktemp + local LAST_ERR=/tmp/tmp.7xciqTynzy + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@10-109-89-81.self-healing-6627.pod.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.REJcPOgOEq + cat /tmp/tmp.7xciqTynzy + rm /tmp/tmp.REJcPOgOEq /tmp/tmp.7xciqTynzy + return 0 + '[' '!' -s /tmp/tmp.aGM77CJ1IG/select-2.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-2.sql /tmp/tmp.aGM77CJ1IG/select-2.sql ++ get_pod_by_role some-name replica name repl1 ++ local cluster=some-name ++ local role=replica ++ local parameter=name ++ case ${parameter} in ++ local 'jsonpath={.items[].metadata.name}' +++ kubectl_bin get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.wT1QIq05fj ++++ mktemp +++ local LAST_ERR=/tmp/tmp.TtsRNtismQ +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].metadata.name}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.wT1QIq05fj +++ cat /tmp/tmp.TtsRNtismQ +++ rm /tmp/tmp.wT1QIq05fj /tmp/tmp.TtsRNtismQ +++ return 0 ++ echo some-name-repl1-7987df9b7-hx8f7 + network_loss some-name-repl1-7987df9b7-hx8f7 + local pod=some-name-repl1-7987df9b7-hx8f7 + cat /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/conf/chaos-network-loss.yml + yq w - metadata.name chaos-cluster-network-loss-29640 + yq w - metadata.namespace self-healing-6627 + kubectl_bin apply -f - + yq w - 'spec.selector.pods.self-healing-6627[0]' some-name-repl1-7987df9b7-hx8f7 ++ mktemp + local LAST_OUT=/tmp/tmp.UWxzEFAhqv ++ mktemp + local LAST_ERR=/tmp/tmp.cbPa5hZ625 + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl apply -f - + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.UWxzEFAhqv networkchaos.chaos-mesh.org/chaos-cluster-network-loss-29640 created + cat /tmp/tmp.cbPa5hZ625 + rm /tmp/tmp.UWxzEFAhqv /tmp/tmp.cbPa5hZ625 + return 0 + run_psql '\c myapp \\\ INSERT INTO myApp (id) VALUES (100502)' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local 'command=\c myapp \\\ INSERT INTO myApp (id) VALUES (100502)' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ynl5wsYLyO +++ mktemp ++ local LAST_ERR=/tmp/tmp.Vbur6j8Oel ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.ynl5wsYLyO ++ cat /tmp/tmp.Vbur6j8Oel ++ rm /tmp/tmp.ynl5wsYLyO /tmp/tmp.Vbur6j8Oel ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ INSERT INTO myApp (id) VALUES (100502)\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.mHuoxNculI ++ mktemp + local LAST_ERR=/tmp/tmp.C0Rb0YZl6q + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ INSERT INTO myApp (id) VALUES (100502)\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.mHuoxNculI + cat /tmp/tmp.C0Rb0YZl6q + rm /tmp/tmp.mHuoxNculI /tmp/tmp.C0Rb0YZl6q + return 0 + compare_psql_cmd select-3 '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local command_id=select-3 + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local postfix= + local uri_suffix= + local expected_result=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-3.sql + run_psql '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 postgres '' + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@some-name-pgbouncer.self-healing-6627 + local driver=postgres + local suffix=.svc.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qner3eizZq +++ mktemp ++ local LAST_ERR=/tmp/tmp.4GgWWks0Rq ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.qner3eizZq ++ cat /tmp/tmp.4GgWWks0Rq ++ rm /tmp/tmp.qner3eizZq /tmp/tmp.4GgWWks0Rq ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.iYUvLmeIl8 ++ mktemp + local LAST_ERR=/tmp/tmp.WfE9WEJg3b + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@some-name-pgbouncer.self-healing-6627.svc.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.iYUvLmeIl8 + cat /tmp/tmp.WfE9WEJg3b + rm /tmp/tmp.iYUvLmeIl8 /tmp/tmp.WfE9WEJg3b + return 0 + '[' '!' -s /tmp/tmp.aGM77CJ1IG/select-3.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-3.sql /tmp/tmp.aGM77CJ1IG/select-3.sql + sleep 60 ++ get_pod_by_role some-name replica IP repl1 ++ local cluster=some-name ++ local role=replica ++ local parameter=IP ++ case ${parameter} in ++ local 'jsonpath={.items[].status.podIP}' +++ kubectl_bin get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].status.podIP}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.dY7D8MWwzY ++++ mktemp +++ local LAST_ERR=/tmp/tmp.5KEBXblpmT +++ local exit_status=0 +++ local timeout=4 +++ set +o errexit ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox +++ kubectl get pods --selector=role=replica,pg-cluster=some-name -o 'jsonpath={.items[].status.podIP}' +++ exit_status=0 +++ [[ 0 != 0 ]] +++ break +++ set -o errexit +++ cat /tmp/tmp.dY7D8MWwzY +++ cat /tmp/tmp.5KEBXblpmT +++ rm /tmp/tmp.dY7D8MWwzY /tmp/tmp.5KEBXblpmT +++ return 0 ++ echo 10.109.89.81 + repl1_pod_ip=10.109.89.81 + compare_psql_cmd select-3 '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@10-109-89-81.self-healing-6627 '' .pod.cluster.local + local command_id=select-3 + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@10-109-89-81.self-healing-6627 + local postfix= + local uri_suffix=.pod.cluster.local + local expected_result=/mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-3.sql + run_psql '\c myapp \\\ SELECT * from myApp;' some-name:some-name_pass@10-109-89-81.self-healing-6627 postgres .pod.cluster.local + local 'command=\c myapp \\\ SELECT * from myApp;' + local uri=some-name:some-name_pass@10-109-89-81.self-healing-6627 + local driver=postgres + local suffix=.pod.cluster.local ++ kubectl_bin -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6FrXdCoKZQ +++ mktemp ++ local LAST_ERR=/tmp/tmp.JtM0nMUNNb ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl -n self-healing-6627 get pods --selector=name=pg-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.6FrXdCoKZQ ++ cat /tmp/tmp.JtM0nMUNNb ++ rm /tmp/tmp.6FrXdCoKZQ /tmp/tmp.JtM0nMUNNb ++ return 0 + local client_container=pg-client-76df9df876-hqtnf + kubectl_bin exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@10-109-89-81.self-healing-6627.pod.cluster.local' ++ mktemp + local LAST_OUT=/tmp/tmp.HkKaLWWXxa ++ mktemp + local LAST_ERR=/tmp/tmp.bmx43vqkyc + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl exec pg-client-76df9df876-hqtnf -n self-healing-6627 -- bash -c 'printf '\''\c myapp \\\ SELECT * from myApp;\n'\'' | psql -v ON_ERROR_STOP=1 -t -q postgres://some-name:some-name_pass@10-109-89-81.self-healing-6627.pod.cluster.local' + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.HkKaLWWXxa + cat /tmp/tmp.bmx43vqkyc + rm /tmp/tmp.HkKaLWWXxa /tmp/tmp.bmx43vqkyc + return 0 + '[' '!' -s /tmp/tmp.aGM77CJ1IG/select-3.sql ']' + diff -u /mnt/jenkins/workspace/cloud-pg-operator_PR-723/e2e-tests/self-healing/compare/select-3.sql /tmp/tmp.aGM77CJ1IG/select-3.sql + kubectl delete NetworkChaos --all networkchaos.chaos-mesh.org "chaos-cluster-network-loss-29640" deleted + kubectl delete PodChaos --all podchaos.chaos-mesh.org "chaos-cluster-pod-failure-5329" deleted podchaos.chaos-mesh.org "chaos-cluster-pod-kill-12514" deleted podchaos.chaos-mesh.org "chaos-cluster-pod-kill-9526" deleted + sleep 5 + destroy_chaos_mesh self-healing-6627 + local chaos_mesh_ns=self-healing-6627 + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + helm del chaos-mesh --namespace self-healing-6627 release "chaos-mesh" uninstalled + destroy self-healing-6627 + grep -v level=debug ++ get_operator_pod + grep -v 'Getting tasks for pod' ++ kubectl_bin get pods --selector=name=postgres-operator -o 'jsonpath={.items[].metadata.name}' +++ mktemp + grep -v level=info + grep -v 'get backup status: Job.batch' + grep -v 'the object has been modified' + grep -v 'Getting pods from source' + /usr/bin/sed -r 's/"ts":[0-9.]+//; s^limits-[0-9.]+/^^g' + sort -u + tee /tmp/tmp.aGM77CJ1IG/operator.log ++ local LAST_OUT=/tmp/tmp.lxckQlojcr +++ mktemp ++ local LAST_ERR=/tmp/tmp.xUiGHQktgT ++ local exit_status=0 ++ local timeout=4 ++ set +o errexit +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox ++ kubectl get pods --selector=name=postgres-operator -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ [[ 0 != 0 ]] ++ break ++ set -o errexit ++ cat /tmp/tmp.lxckQlojcr ++ cat /tmp/tmp.xUiGHQktgT ++ rm /tmp/tmp.lxckQlojcr /tmp/tmp.xUiGHQktgT ++ return 0 + kubectl_bin logs postgres-operator-579fd7ccc8-j4fsx -c operator ++ mktemp + local LAST_OUT=/tmp/tmp.YpevpVw04O ++ mktemp + local LAST_ERR=/tmp/tmp.RDFZQ48o9T + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl logs postgres-operator-579fd7ccc8-j4fsx -c operator + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.YpevpVw04O + cat /tmp/tmp.RDFZQ48o9T + rm /tmp/tmp.YpevpVw04O /tmp/tmp.RDFZQ48o9T + return 0 ] { } }, ] } }, { } }, ] { } }, { } ] } { } }, ] } ] { } }, }, { ] { } }, ] ] ], { } }, }, { }, { },{ }] }], ] { } }, , ], { } }, }], { } }, }], } ], } }, } }, } }, { } }, }, 2024/04/24 19:28:32 INF 1 (localhost:4150) connecting to nsqd 2024/04/24 19:29:20 INF 2 (localhost:4150) connecting to nsqd 2024/04/24 19:29:21 INF 3 (localhost:4150) connecting to nsqd 2024/04/24 19:29:27 INF 4 (localhost:4150) connecting to nsqd 2024/04/24 19:29:55 INF 5 (localhost:4150) connecting to nsqd 2024/04/24 19:29:55 INF 6 (localhost:4150) connecting to nsqd 2024/04/24 19:29:56 INF 7 (localhost:4150) connecting to nsqd "accessModes": [ "affinity": "affinity": { "affinity": { "podAntiAffinity": { "allowPrivilegeEscalation": false, "annotations": {"keep-backups":"false","keep-data":"false"}, "apiVersion": "apps/v1", "apiVersion": "batch/v1", "apiVersion": "v1", "apiVersion": "v1", "apiVersion": "v1", "backrest-command": "backup", "backrest-command": "stanza-create", "claimName": "some-name-pgbr-repo" "command": [ "configMap": { "configMap": { "configMapKeyRef": { "containerName": "database", "containerPort": 2022, "containerPort": 5432, "containerPort": 8009, "containers": [ "containers": [{ "cpu": "1", "cpu": "200m", "cpu": "500m", "crunchydata" "crunchy-pgbouncer": "true", "crunchy-pgbouncer": "true", "crunchy-pgbouncer": "true", "defaultMode": 288 "defaultMode": 288, "defaultMode": 288, "defaultMode": 420, "deployment-name": "some-name" "deployment-name": "some-name-repl1" "deployment-name": "some-name-repl1","pgo-version": "1.6.0","name": "some-name-replica","pg-cluster": "some-name" "deployment-name": "some-name-repl2" "divisor": "1m", "dnsPolicy": "ClusterFirst" "downwardAPI": { "emptyDir": { "emptyDir": { "emptyDir": { "emptyDir": { "env": [ "env": [{ "exec": { "fieldPath": "metadata.annotations" "fieldPath": "metadata.labels" "fieldPath": "metadata.labels['crunchy-pgha-scope']" "fieldPath": "metadata.namespace" "fieldRef": { "fieldRef": { "fsGroup": 2, I0424 19:27:27.994856 1 shared_informer.go:240] Waiting for caches to sync for namespace I0424 19:27:28.095581 1 shared_informer.go:247] Caches are synced for namespace I0424 19:27:28.204244 1 shared_informer.go:240] Waiting for caches to sync for self-healing-6627 I0424 19:27:28.305298 1 shared_informer.go:247] Caches are synced for self-healing-6627 "image": "perconalab/percona-postgresql-operator:main-ppg14-pgbackrest", "image": "perconalab/percona-postgresql-operator:main-ppg14-pgbackrest-repo", "image": "perconalab/percona-postgresql-operator:main-ppg14-pgbouncer", "image": "perconalab/percona-postgresql-operator:main-ppg14-postgres-ha", "imagePullPolicy": "IfNotPresent" "imagePullPolicy": "IfNotPresent", "initialDelaySeconds": 15 "initialDelaySeconds": 30, "items": [ "items": [ "items": [ "key": "config", "key": "config", "key": "crunchy-pgbouncer", "key": "init" "key": "password" "key": "pg-cluster", "key": "pgo-backrest", "key": "pgo-backrest-job", "key": "pgo-pg-database", "key": "pg-pod-anti-affinity", "key": "tls.crt", "key": "tls.key", "key": "vendor", "kind": "Deployment", "kind": "Job", "kind": "PersistentVolumeClaim", "kind": "Service", "labels": { "labels": { "labels": { "labelSelector": { "livenessProbe": { "matchExpressions": [ "matchLabels": { "matchLabels": { "maxSurge": 1 "maxUnavailable": 1, "medium": "Memory", "medium": "Memory" "medium": "Memory", "medium": "Memory", "medium": "Memory", "memory": "128Mi" "memory": "256Mi" "memory": "48Mi" "metadata": { "metadata": { "metadata": { "mountPath": "/backrestrepo", "mountPath": "/dev/shm", "mountPath": "/etc/pgbackrest" "mountPath": "/etc/pgbackrest/conf.d", "mountPath": "/etc/podinfo", "mountPath": "/etc/ssh", "mountPath": "/etc/ssh", "mountPath": "/home/pgbackrest" "mountPath": "/pgconf", "mountPath": "/pgconf/", "mountPath": "/pgconf/pgreplicator", "mountPath": "/pgconf/pgsuper", "mountPath": "/pgconf/pguser", "mountPath": "/pgconf/tls", "mountPath": "/pgconf/tls/pgbouncer", "mountPath": "/pgconf/tls-replication", "mountPath": "/pgdata", "mountPath": "/sshd", "mountPath": "/sshd", "mountPath": "/tmp", "mountPath": "/tmp", "mountPath": "/tmp" "name": "backrest", "name": "backrest-backup-some-name", "name": "backrestrepo", "name": "backrestrepo", "name": "BACKREST_SKIP_CREATE_STANZA", "name": "cluster1-replication-ssl-keypair", "name": "cluster1-ssl-ca" "name": "cluster1-ssl-ca" "name": "cluster1-ssl-keypair" "name": "cluster1-ssl-keypair" "name": "COMMAND", "name": "COMMAND_OPTS", "name": "database", "name": "dshm" "name": "dshm", "name": "ENABLE_SSHD", "name": "LD_PRELOAD", "name": "LD_PRELOAD", "name": "MODE", "name": "NAMESPACE", "name": "NSS_WRAPPER_GROUP", "name": "NSS_WRAPPER_GROUP", "name": "NSS_WRAPPER_PASSWD", "name": "NSS_WRAPPER_PASSWD", "name": "patroni" "name": "PATRONI_KUBERNETES_LABELS", "name": "PATRONI_KUBERNETES_NAMESPACE", "name": "PATRONI_KUBERNETES_SCOPE_LABEL", "name": "PATRONI_LOG_LEVEL", "name": "PATRONI_POSTGRESQL_DATA_DIR", "name": "PATRONI_SCOPE", "name": "pgbackrest" "name": "pgbackrest-conf", "name": "pgbackrest-conf", "name": "pgbackrest-config" "name": "pgbackrest-config", "name": "PGBACKREST_DB_HOST", "name": "PGBACKREST_DB_PATH", "name": "PGBACKREST_DB_PATH", "name": "pgbackrest-home", "name": "pgbackrest-home", "name": "PGBACKREST_LOG_PATH", "name": "PGBACKREST_LOG_PATH", "name": "PGBACKREST_PG1_PORT", "name": "PGBACKREST_PG1_PORT", "name": "PGBACKREST_PG1_SOCKET_PATH", "name": "PGBACKREST_PG1_SOCKET_PATH", "name": "PGBACKREST_REPO1_HOST", "name": "PGBACKREST_REPO1_PATH", "name": "PGBACKREST_REPO1_PATH", "name": "PGBACKREST_REPO1_TYPE", "name": "PGBACKREST_REPO1_TYPE", "name": "PGBACKREST_STANZA", "name": "PGBACKREST_STANZA", "name": "pgbouncer" "name": "pgbouncer", "name": "pgbouncer-conf", "name": "pgbouncer-conf", "name": "pgconf-volume" "name": "pgconf-volume", "name": "pgdata", "name": "pgdata", "name": "PGHA_DATABASE", "name": "PGHA_INIT", "name": "PGHA_PASSWORD_TYPE", "name": "PGHA_PGBACKREST", "name": "PGHA_PGBACKREST_LOCAL_GCS_STORAGE", "name": "PGHA_PGBACKREST_LOCAL_GCS_STORAGE", "name": "PGHA_PGBACKREST_LOCAL_S3_STORAGE", "name": "PGHA_PGBACKREST_LOCAL_S3_STORAGE", "name": "PGHA_PGBACKREST_S3_VERIFY_TLS", "name": "PGHA_PG_PORT", "name": "PGHA_REPLICA_REINIT_ON_START_FAIL", "name": "PGHA_STANDBY", "name": "PGHA_SYNC_REPLICATION", "name": "PGHA_TLS_ENABLED", "name": "PGHA_TLS_ONLY", "name": "PGHA_USER", "name": "PGHOST", "name": "PG_PASSWORD", "name": "PG_PRIMARY_SERVICE_NAME", "name": "PITR_TARGET", "name": "podinfo" "name": "podinfo", "name": "PODNAME", "name": "postgres" "name": "primary-volume" "name": "primary-volume", "name": "report", "name": "root-volume" "name": "root-volume", "name": "some-name", "name": "some-name", "name": "some-name-backrest-shared-repo", "name": "some-name-backrest-shared-repo" "name": "some-name-backrest-shared-repo", "name": "some-name-backrest-shared-repo", "name": "some-name-backrest-shared-repo", "name": "some-name-pgbouncer", "name": "some-name-pgbouncer", "name": "some-name-pgbouncer", "name": "some-name-pgbouncer", "name": "some-name-pgbouncer-cm" "name": "some-name-pgbouncer-secret", "name": "some-name-pgbouncer-secret", "name": "some-name-pgbr-repo", "name": "some-name-pgha-config", "name": "some-name-pgha-config", "name": "some-name-repl1", "name": "some-name-repl1", "name": "some-name-repl2", "name": "some-name-repl2", "name": "some-name-replica","pg-cluster": "some-name","deployment-name": "some-name-repl1","pgo-version": "1.6.0" "name": "some-name-replica","pg-cluster": "some-name","deployment-name": "some-name-repl2","pgo-version": "1.6.0" "name": "some-name-stanza-create", "name": "ssh-config", "name": "ssh-config", "name": "ssh-config", "name": "ssh-config", "name": "sshd", "name": "sshd", "name": "sshd", "name": "sshd", "name": "tls-pgbouncer" "name": "tls-pgbouncer", "name": "tls-replication" "name": "tls-replication", "name": "tls-server" "name": "tls-server", "name": "tmp" "name": "tmp" "name": "tmp", "name": "tmp", "name": "tmp", "name": "user-volume" "name": "user-volume", "nodePort": 0 "operator": "Exists" "operator": "In", "/opt/crunchy/bin/postgres-ha/health/pgha-liveness.sh" "/opt/crunchy/bin/postgres-ha/health/pgha-readiness.sh" "optional": true "path": "annotations" "path": "cpu_limit", "path": "cpu_request", "path": "labels" "path": "mem_limit", "path": "mem_request", "path": "ssh_config" "path": "ssh_config" "path": "tls-replication.crt" "path": "tls-replication.key" "periodSeconds": 15, "persistentVolumeClaim": { "persistentVolumeClaim":{"claimName":"some-name"} "persistentVolumeClaim":{"claimName":"some-name-repl1"} "persistentVolumeClaim":{"claimName":"some-name-repl2"} "pg-cluster": "some-name" "pg-cluster": "some-name", "pg-cluster": "some-name" "pg-cluster": "some-name", "pg-cluster": "some-name" "pg-cluster": "some-name", "pg-cluster": "some-name","deployment-name": "some-name","pgouser": "admin","crunchy-pgha-scope": "some-name","pgo-version": "1.6.0","name": "some-name" "pgo-backrest-job": "true", "pgo-backrest-repo": "true" "pgo-backrest-repo": "true", "pgo-backrest-repo": "true" "pgo-backrest": "true", "pgo-pg-database": "true", "pgo-pg-database": "true", "pgo-version": "1.6.0","name": "some-name","pg-cluster": "some-name","deployment-name": "some-name","pgouser": "admin","crunchy-pgha-scope": "some-name" "pgo-version": "1.6.0","name": "some-name-replica","pg-cluster": "some-name","deployment-name": "some-name-repl2" "pg-pod-anti-affinity": "preferred", "pg-pod-anti-affinity": "preferred", "podAffinityTerm": { "podAntiAffinity": { "podAntiAffinity": { "podAntiAffinity": { "port": 2022, "ports": [{ "ports": [{ "preferredDuringSchedulingIgnoredDuringExecution": [ "privileged": false, "projected": { "projected": { "projected": { "projected": { "sources": [] } "protocol": "TCP", "protocol": "TCP", "readinessProbe": { "readOnly": false "readOnly": false "readOnly": false "readOnlyRootFilesystem": true "readOnly": true "readOnly": true "readOnly": true "ReadWriteOnce" "replicas": 0, "replicas": 1, "replicas": 3, "requests": { "requests": { "resourceFieldRef": { "resource": "limits.cpu" "resource": "limits.memory" "resource": "requests.cpu" "resource": "requests.memory" "resources": { "resources": { "restartPolicy": "Always", "restartPolicy": "Never" "rollingUpdate": { "runAsNonRoot": true "secret": { "secret": { "secret": { "secret": { "secret": { "secretKeyRef": { "secretName": "some-name-backrest-repo-config" "secretName": "some-name-backrest-repo-config", "secretName": "some-name-backrest-repo-config" "secretName": "some-name-backrest-repo-config", "secretName": "some-name-postgres-secret" "secretName": "some-name-primaryuser-secret" "secretName": "some-name-some-name-secret" "securityContext": { "securityContext": { "securityContext": {}, "securityContext": {"fsGroup": 26,"supplementalGroups": [1001]}, "securityContext": {"runAsNonRoot":true,"fsGroup":26}, "selector": { "selector": { "serviceAccountName": "pgo-backrest", "serviceAccountName": "pgo-default", "serviceAccountName": "pgo-pg", "service-name": "some-name-backrest-shared-repo", "service-name": "some-name-backrest-shared-repo", "service-name": "some-name-pgbouncer", "service-name": "some-name-pgbouncer", "service-name": "some-name-pgbouncer", "sessionAffinity": "None" "sizeLimit": "128Ki" "sizeLimit": "16Mi" "sizeLimit": "1Mi" "sizeLimit": "2Mi" "sizeLimit": "64Mi" "sizeLimit": "64Mi" "some-name" "sources": [ "sources": [ "sources": [ "spec": { "spec": { "spec": { "storage": "1Gi" "strategy": { "targetPort": 2022, "template": { time="2024-04-24T19:27:27Z" level=warning msg="PGAdminStorage setting not set, will use PrimaryStorage setting" func="github.com/percona/percona-postgresql-operator/internal/config.(*PgoConfig).Validate()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/config/pgoconfig.go:337" version=1.6.0 time="2024-04-24T19:28:37Z" level=error msg="get deployment some-name-repl1: deployments.apps \"some-name-repl1\" not found" func="github.com/percona/percona-postgresql-operator/percona/controllers/pgreplica.CreateReplicaResource()" file="/go/src/github.com/percona/percona-postgresql-operator/percona/controllers/pgreplica/pgreplica.go:40" version=1.6.0 time="2024-04-24T19:28:42Z" level=error msg="get deployment some-name-repl2: deployments.apps \"some-name-repl2\" not found" func="github.com/percona/percona-postgresql-operator/percona/controllers/pgreplica.CreateReplicaResource()" file="/go/src/github.com/percona/percona-postgresql-operator/percona/controllers/pgreplica/pgreplica.go:40" version=1.6.0 time="2024-04-24T19:29:20Z" level=error msg="Error completing workflow some-name-createcluster" func="github.com/percona/percona-postgresql-operator/internal/operator/task.completeWorkflow()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/operator/task/workflow.go:48" version=1.6.0 time="2024-04-24T19:29:20Z" level=error msg="pgtasks.pg.percona.com \"some-name-createcluster\" not found" func="github.com/percona/percona-postgresql-operator/internal/operator/task.completeWorkflow()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/operator/task/workflow.go:49" version=1.6.0 time="2024-04-24T19:29:56Z" level=warning msg="crv1 pgreplica some-name-repl1 is already marked complete, will not recreate" func="github.com/percona/percona-postgresql-operator/internal/operator/cluster.ScaleBase()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/operator/cluster/cluster.go:535" version=1.6.0 time="2024-04-24T19:29:56Z" level=warning msg="crv1 pgreplica some-name-repl2 is already marked complete, will not recreate" func="github.com/percona/percona-postgresql-operator/internal/operator/cluster.ScaleBase()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/operator/cluster/cluster.go:535" version=1.6.0 time="2024-04-24T19:31:28Z" level=error func="github.com/percona/percona-postgresql-operator/internal/operator/config.(*LocalDB).apply()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/operator/config/localdb.go:255" version=1.6.0 time="2024-04-24T19:31:28Z" level=error msg="Internal error occurred: error executing command in container: failed to exec in container: failed to start exec \"1b5d11bd976f2ffea38743db228955802c1901ef17e37c16a8374831ce8879e3\": OCI runtime exec failed: exec failed: unable to start container process: exec: \"/opt/crunchy/bin/postgres-ha/common/pgha-reload-local.sh\": stat /opt/crunchy/bin/postgres-ha/common/pgha-reload-local.sh: no such file or directory: unknown" func="github.com/percona/percona-postgresql-operator/internal/kubeapi.ExecToPodThroughAPI()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/kubeapi/exec.go:76" version=1.6.0 time="2024-04-24T19:31:28Z" level=error msg="Internal error occurred: error executing command in container: failed to exec in container: failed to start exec \"1b5d11bd976f2ffea38743db228955802c1901ef17e37c16a8374831ce8879e3\": OCI runtime exec failed: exec failed: unable to start container process: exec: \"/opt/crunchy/bin/postgres-ha/common/pgha-reload-local.sh\": stat /opt/crunchy/bin/postgres-ha/common/pgha-reload-local.sh: no such file or directory: unknown" func="github.com/percona/percona-postgresql-operator/internal/operator/config.(*LocalDB).Sync.func2()" file="/go/src/github.com/percona/percona-postgresql-operator/internal/operator/config/localdb.go:177" version=1.6.0 "timeoutSeconds": 10 "topologyKey": "kubernetes.io/hostname" "type": "ClusterIP", "type": "RollingUpdate", "value": "" "value": "5432" "value": "5432" "value": "/backrestrepo/some-name-backrest-shared-repo" "value": "/backrestrepo/some-name-backrest-shared-repo" "value": "backup" "value": "crunchy-pgha-scope" "value": "db" "value": "db" "value": " --db-host=10.109.90.56 --db-path=/pgdata/some-name" "value": "false" "value": "false" "valueFrom": { "value": "INFO" "value": "pgbackrest" "value": "pgbackrest-repo" "value": "/pgdata/some-name" "value": "/pgdata/some-name" "value": "/pgdata/some-name-repl1" "value": "/pgdata/some-name-repl1" "value": "/pgdata/some-name-repl2" "value": "/pgdata/some-name-repl2" "value": "posix" "value": "posix" "value": "postgres" "values": [ "value": "some-name" "value": "some-name-backrest-shared-repo" "value": "some-name-backrest-shared-repo-6f8f947dbc-c7swm" "value": "stanza-create" "value": "/tmp" "value": "/tmp" "value": "/tmp/nss_wrapper/pgbackrest-repo/group" "value": "/tmp/nss_wrapper/pgbackrest-repo/passwd" "value": "/tmp/nss_wrapper/postgres/group" "value": "/tmp/nss_wrapper/postgres/passwd" "value": "true" "value": "true" "value": "--type=full --db-host=10.109.90.56 --db-path=/pgdata/some-name" "value": "/usr/lib64/libnss_wrapper.so" "value": "/usr/lib64/libnss_wrapper.so" "value": "{vendor: \"crunchydata\"}" "vendor": "crunchydata" "vendor": "crunchydata", "vendor": "crunchydata" "vendor": "crunchydata", "vendor": "crunchydata" "vendor": "crunchydata", "volumeMounts": [ "volumeMounts": [{ "volumes": [ "volumes": [{ "weight": 1, + destroy_operator + kubectl_bin delete -f /tmp/tmp.aGM77CJ1IG/operator.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.x6WzNUqfID ++ mktemp + local LAST_ERR=/tmp/tmp.GAcyMz5CbY + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete -f /tmp/tmp.aGM77CJ1IG/operator.yaml + exit_status=1 + [[ 1 != 0 ]] + sleep 0 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete -f /tmp/tmp.aGM77CJ1IG/operator.yaml + exit_status=1 + [[ 1 != 0 ]] + sleep 4 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete -f /tmp/tmp.aGM77CJ1IG/operator.yaml + exit_status=1 + [[ 1 != 0 ]] + sleep 8 + set -o errexit + cat /tmp/tmp.x6WzNUqfID + cat /tmp/tmp.GAcyMz5CbY Error from server (NotFound): error when deleting "/tmp/tmp.aGM77CJ1IG/operator.yaml": serviceaccounts "pgo-deployer-sa" not found Error from server (NotFound): error when deleting "/tmp/tmp.aGM77CJ1IG/operator.yaml": clusterroles.rbac.authorization.k8s.io "pgo-deployer-cr" not found Error from server (NotFound): error when deleting "/tmp/tmp.aGM77CJ1IG/operator.yaml": configmaps "pgo-deployer-cm" not found Error from server (NotFound): error when deleting "/tmp/tmp.aGM77CJ1IG/operator.yaml": clusterrolebindings.rbac.authorization.k8s.io "pgo-deployer-crb" not found Error from server (NotFound): error when deleting "/tmp/tmp.aGM77CJ1IG/operator.yaml": jobs.batch "pgo-deploy" not found + rm /tmp/tmp.x6WzNUqfID /tmp/tmp.GAcyMz5CbY + return 1 + true + yq w -d4 /tmp/tmp.aGM77CJ1IG/operator.yaml 'spec.template.spec.containers[0].env[0].value' uninstall + kubectl_bin apply -f /tmp/tmp.aGM77CJ1IG/operator-destroy.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.02eGsMzVsi ++ mktemp + local LAST_ERR=/tmp/tmp.CGzNYKAH66 + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl apply -f /tmp/tmp.aGM77CJ1IG/operator-destroy.yaml + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.02eGsMzVsi serviceaccount/pgo-deployer-sa created clusterrole.rbac.authorization.k8s.io/pgo-deployer-cr created configmap/pgo-deployer-cm created clusterrolebinding.rbac.authorization.k8s.io/pgo-deployer-crb created job.batch/pgo-deploy created + cat /tmp/tmp.CGzNYKAH66 + rm /tmp/tmp.02eGsMzVsi /tmp/tmp.CGzNYKAH66 + return 0 + wait_job_completion pgo-deploy true + local job=pgo-deploy + local mandatory=true + local ns=self-healing-6627 + retry=0 + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' pgo-deploy+ retry=0 ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 1 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 2 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 3 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 4 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 5 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 6 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 7 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 8 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 9 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 10 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 11 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ '' == \1 ]] + sleep 1 + echo -n . .+ let retry+=1 + '[' 12 -ge 600 ']' ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.metadata.name}' ++ grep -io 'not found' + [[ '' == \n\o\t\ \f\o\u\n\d ]] ++ kubectl_bin -n self-healing-6627 get job/pgo-deploy -o 'jsonpath={.status.succeeded}' + [[ 1 == \1 ]] + echo + kubectl_bin delete -f /tmp/tmp.aGM77CJ1IG/operator-destroy.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.7KAJROGZgh ++ mktemp + local LAST_ERR=/tmp/tmp.Gxk1LEZh8O + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete -f /tmp/tmp.aGM77CJ1IG/operator-destroy.yaml + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.7KAJROGZgh serviceaccount "pgo-deployer-sa" deleted clusterrole.rbac.authorization.k8s.io "pgo-deployer-cr" deleted configmap "pgo-deployer-cm" deleted clusterrolebinding.rbac.authorization.k8s.io "pgo-deployer-crb" deleted job.batch "pgo-deploy" deleted + cat /tmp/tmp.Gxk1LEZh8O + rm /tmp/tmp.7KAJROGZgh /tmp/tmp.Gxk1LEZh8O + return 0 + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|openshift|^NAME' + awk '{print$1}' + xargs kubectl delete ns --grace-period=0 --force=true ++ mktemp + local LAST_OUT=/tmp/tmp.4pLZvOmFlf ++ mktemp + local LAST_ERR=/tmp/tmp.XselKJtCmM + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl get ns + exit_status=0 + [[ 0 != 0 ]] + break + set -o errexit + cat /tmp/tmp.4pLZvOmFlf + cat /tmp/tmp.XselKJtCmM + rm /tmp/tmp.4pLZvOmFlf /tmp/tmp.XselKJtCmM + return 0 Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. namespace "self-healing-6627" force deleted + kubectl_bin delete clusterrolebindings pgo-cluster-role pgo-deployer-cr ++ mktemp + local LAST_OUT=/tmp/tmp.fNnWJbpHLo ++ mktemp + local LAST_ERR=/tmp/tmp.vyIG9yGFeW + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterrolebindings pgo-cluster-role pgo-deployer-cr + exit_status=1 + [[ 1 != 0 ]] + sleep 0 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterrolebindings pgo-cluster-role pgo-deployer-cr + exit_status=1 + [[ 1 != 0 ]] + sleep 4 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterrolebindings pgo-cluster-role pgo-deployer-cr + exit_status=1 + [[ 1 != 0 ]] + sleep 8 + set -o errexit + cat /tmp/tmp.fNnWJbpHLo + cat /tmp/tmp.vyIG9yGFeW Error from server (NotFound): clusterrolebindings.rbac.authorization.k8s.io "pgo-cluster-role" not found Error from server (NotFound): clusterrolebindings.rbac.authorization.k8s.io "pgo-deployer-cr" not found + rm /tmp/tmp.fNnWJbpHLo /tmp/tmp.vyIG9yGFeW + return 1 + true + kubectl_bin delete clusterroles pgo-cluster-role pgo-deployer-cr ++ mktemp + local LAST_OUT=/tmp/tmp.wVg38YAKCT ++ mktemp + local LAST_ERR=/tmp/tmp.alcGdFfOgq + local exit_status=0 + local timeout=4 + set +o errexit ++ seq 0 2 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterroles pgo-cluster-role pgo-deployer-cr + exit_status=1 + [[ 1 != 0 ]] + sleep 0 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterroles pgo-cluster-role pgo-deployer-cr + exit_status=1 + [[ 1 != 0 ]] + sleep 4 + for i in '$(seq 0 2)' + KUBECONFIG=/tmp/jen-pg-723-7ed19e708-2-sandbox + kubectl delete clusterroles pgo-cluster-role pgo-deployer-cr + exit_status=1 + [[ 1 != 0 ]] + sleep 8 + set -o errexit + cat /tmp/tmp.wVg38YAKCT + cat /tmp/tmp.alcGdFfOgq Error from server (NotFound): clusterroles.rbac.authorization.k8s.io "pgo-cluster-role" not found Error from server (NotFound): clusterroles.rbac.authorization.k8s.io "pgo-deployer-cr" not found + rm /tmp/tmp.wVg38YAKCT /tmp/tmp.alcGdFfOgq + return 1 + true + rm -rf /tmp/tmp.aGM77CJ1IG