docstr: Compiles and runs a KFP pipeline.
  
  In this method, provided TFX pipeline will be submitted via kfp.Client()
  instead of from Argo.
  
  Args:
    pipeline: The logical pipeline to run.
    **kwargs: Key-value pairs of runtime paramters passed to the pipeline
      execution.
docstr_tok: ["Compiles","and","runs","a","KFP","pipeline",".","In","this","method",",","provided","TFX","pipeline","will","be","submitted","via","kfp.Client","(",")","instead","of","from","Argo",".","Args",":","pipeline",":","The","logical","pipeline","to","run",".","*","*","kwargs",":","Key-value","pairs","of","runtime","paramters","passed","to","the","pipeline","execution","."]
code: def _compile_and_run_pipeline(
      self, pipeline: tfx_pipeline.Pipeline, **kwargs
  ):
      """Compiles and runs a KFP pipeline.
  
      In this method, provided TFX pipeline will be submitted via kfp.Client()
      instead of from Argo.
  
      Args:
        pipeline: The logical pipeline to run.
        **kwargs: Key-value pairs of runtime paramters passed to the pipeline
          execution.
      """
      client = kfp.Client(host=self._KFP_ENDPOINT)
  
      pipeline_name = pipeline.pipeline_info.pipeline_name
      config = kubeflow_dag_runner.KubeflowDagRunnerConfig(
          kubeflow_metadata_config=self._get_kubeflow_metadata_config(),
          tfx_image=self.container_image,
      )
      kubeflow_dag_runner.KubeflowDagRunner(config=config).run(pipeline)
  
      file_path = os.path.join(
          self.tmp_dir, "{}.tar.gz".format(pipeline_name)
      )
      self.assertTrue(fileio.exists(file_path))
  
      run_result = client.create_run_from_pipeline_package(
          pipeline_file=file_path, arguments=kwargs
      )
      run_id = run_result.run_id
  
      self._assert_successful_run_completion(
          host=self._KFP_ENDPOINT,
          run_id=run_id,
          pipeline_name=pipeline_name,
          timeout=self._TIME_OUT,
      )
  
imports: import datetime
  import os
  import subprocess
  from absl import logging
  import kfp
  import tensorflow
  from tfx.dsl.io import fileio
  from tfx.examples.penguin import penguin_kubeflow_gcp
  from tfx.orchestration import data_types
  from tfx.orchestration import pipeline
  from tfx.orchestration import test_utils
  from tfx.orchestration.kubeflow import kubeflow_dag_runner
  from tfx.orchestration.kubeflow import test_utils
label_desc: Use image node_id 5 for calling the KubeflowGcpPerfTest obj's underlying member method code with example usage: obj._compile_and_run_pipeline(pipeline) without return types