diff --git a/e2e-tests/functions b/e2e-tests/functions index 983e345d28..e69256717e 100644 --- a/e2e-tests/functions +++ b/e2e-tests/functions @@ -1036,16 +1036,22 @@ get_desired_replicas() { kubectl get statefulset "$1" -n "$NAMESPACE" -o jsonpath='{.spec.replicas}' } +get_ready_replicas() { + kubectl get sts "$1" -n "$NAMESPACE" -o jsonpath='{.status.readyReplicas}' +} + wait_sts_rollout() { local sts=$1 + local ready_replicas=$(get_ready_replicas $sts) local updated_replicas=$(get_updated_replicas $sts) local desired_replicas=$(get_desired_replicas $sts) + echo "ready_replicas $ready_replicas desired_replicas $desired_replicas" - until [[ $updated_replicas -eq $desired_replicas ]]; do - updated_replicas=$(get_updated_replicas $sts) + until [[ $ready_replicas -eq $desired_replicas && $updated_replicas -eq $desired_replicas ]]; do + ready_replicas=$(get_ready_replicas $sts) desired_replicas=$(get_desired_replicas $sts) - - echo "Waiting for sts/$sts to update... $updated_replicas/$desired_replicas pods updated." + updated_replicas=$(get_updated_replicas $sts) + echo "Waiting for sts/$sts to update... $ready_replicas/$updated_replicas/$desired_replicas pods updated." sleep 10 done } diff --git a/e2e-tests/tests/telemetry-transfer/02-assert.yaml b/e2e-tests/tests/telemetry-transfer/02-assert.yaml index 010577755c..8359a47764 100644 --- a/e2e-tests/tests/telemetry-transfer/02-assert.yaml +++ b/e2e-tests/tests/telemetry-transfer/02-assert.yaml @@ -1,6 +1,6 @@ apiVersion: kuttl.dev/v1beta1 kind: TestAssert -timeout: 120 +timeout: 240 --- kind: StatefulSet apiVersion: apps/v1 diff --git a/e2e-tests/tests/telemetry-transfer/04-verify-transferred-pmm.yaml b/e2e-tests/tests/telemetry-transfer/04-verify-transferred-pmm.yaml index b87ae394ec..75f10545b0 100644 --- a/e2e-tests/tests/telemetry-transfer/04-verify-transferred-pmm.yaml +++ b/e2e-tests/tests/telemetry-transfer/04-verify-transferred-pmm.yaml @@ -9,7 +9,7 @@ commands: source ../../functions kubectl -n ${NAMESPACE} patch perconapgcluster/${test_name} --type=merge -p '{"spec":{"pmm":{"enabled":true}}}' - sleep 5 + sleep 7 CR_ID=$(kubectl -n ${NAMESPACE} get perconapgcluster/${test_name} --template='{{.metadata.uid}}') TRANSFERRED_KEYS=$(kubectl -n ${NAMESPACE} logs -l run=version-service| grep ${CR_ID} | tail -n1 | grep -Eo '\{.*\}$' | jq '."grpc.request.content".msg | keys') kubectl create configmap -n "${NAMESPACE}" 04-verify-tramsferred-pmm --from-literal=keys="${TRANSFERRED_KEYS}" \ No newline at end of file diff --git a/e2e-tests/tests/telemetry-transfer/05-verify-transferred-helm-cr.yaml b/e2e-tests/tests/telemetry-transfer/05-verify-transferred-helm-cr.yaml index 859984246c..736809a7da 100644 --- a/e2e-tests/tests/telemetry-transfer/05-verify-transferred-helm-cr.yaml +++ b/e2e-tests/tests/telemetry-transfer/05-verify-transferred-helm-cr.yaml @@ -9,7 +9,7 @@ commands: source ../../functions kubectl -n ${NAMESPACE} patch perconapgcluster/${test_name} --type=merge -p '{"metadata":{"labels":{"helm.sh/chart":"fake-chart-to-verify-telemetry-transfer"}}}' - sleep 5 + sleep 7 CR_ID=$(kubectl -n ${NAMESPACE} get perconapgcluster/${test_name} --template='{{.metadata.uid}}') TRANSFERRED_KEYS=$(kubectl -n ${NAMESPACE} logs -l run=version-service| grep ${CR_ID} | tail -n1 | grep -Eo '\{.*\}$' | jq '."grpc.request.content".msg | keys') kubectl create configmap -n "${NAMESPACE}" 05-verify-tramsferred-helm-cr --from-literal=keys="${TRANSFERRED_KEYS}" \ No newline at end of file diff --git a/e2e-tests/tests/telemetry-transfer/06-verify-transferred-sidecars.yaml b/e2e-tests/tests/telemetry-transfer/06-verify-transferred-sidecars.yaml index e75fef4553..8aeec9f576 100644 --- a/e2e-tests/tests/telemetry-transfer/06-verify-transferred-sidecars.yaml +++ b/e2e-tests/tests/telemetry-transfer/06-verify-transferred-sidecars.yaml @@ -9,7 +9,7 @@ commands: source ../../functions kubectl -n ${NAMESPACE} patch perconapgcluster/${test_name} --type=json -p '[{"op":"add","path":"/spec/instances/0/sidecars","value":[{"name":"testcontainer","image":"busybox","command":["sleep","infinity"]}]}]' - sleep 5 + sleep 7 CR_ID=$(kubectl -n ${NAMESPACE} get perconapgcluster/${test_name} --template='{{.metadata.uid}}') TRANSFERRED_KEYS=$(kubectl -n ${NAMESPACE} logs -l run=version-service| grep ${CR_ID} | tail -n1 | grep -Eo '\{.*\}$' | jq '."grpc.request.content".msg | keys') kubectl create configmap -n "${NAMESPACE}" 06-verify-tramsferred-sidecars --from-literal=keys="${TRANSFERRED_KEYS}" \ No newline at end of file