code: def _start_and_verify_execution_with_retry(
      pipeline: Pipeline, parameters: dict
  ) -> list:
      for _ in retries(
          max_retry_count=5,
          exception_message_prefix="Waiting for a successful execution of pipeline",
          seconds_to_sleep=10,
      ):
          execution = pipeline.start(parameters=parameters)
          wait_pipeline_execution(execution=execution)
          execution_steps = execution.list_steps()
          assert len(execution_steps) == 1
          failure_reason = execution_steps[0].get("FailureReason", "")
          if failure_reason != "":
              logging.error(
                  f"Pipeline execution failed with error: {failure_reason}."
                  " Retrying.."
              )
              continue
          assert execution_steps[0]["StepStatus"] == "Succeeded"
          return execution_steps
  
imports: from __future__ import absolute_import
  import os
  import uuid
  import logging
  import pytest
  from tests.integ.sagemaker.workflow.helpers import wait_pipeline_execution
  from sagemaker import TrainingInput, get_execution_role, utils, image_uris
  from sagemaker.debugger import DebuggerHookConfig, Rule, rule_configs
  from sagemaker.estimator import Estimator
  from sagemaker.pytorch.estimator import PyTorch
  from sagemaker.tensorflow import TensorFlow
  from sagemaker.utils import sagemaker_timestamp
  from sagemaker.workflow.functions import Join
  from sagemaker.workflow.parameters import ParameterInteger, ParameterString
  from sagemaker.workflow.pipeline import Pipeline
  from sagemaker.workflow.steps import TrainingStep
  from tests.integ.retry import retries
  from tests.integ import DATA_DIR
label_desc: Use image node_id 7 for calling a global function with example usage: _start_and_verify_execution_with_retry(pipeline, parameters) and returns: execution_steps