code: def _tasks_for_pipeline_with_artifact_value_passing():
      """A simple pipeline with artifact consumed as value."""
      producer_component = tfx.dsl.experimental.create_container_component(
          name="Produce",
          outputs={
              "data": simple_artifacts.File,
          },
          parameters={
              "message": str,
          },
          image="gcr.io/ml-pipeline/mirrors/cloud-sdk",
          command=[
              "sh",
              "-exc",
              """
              message="$0"
              output_data_uri="$1"
              output_data_path=$(mktemp)
  
              # Running the main code
              echo "Hello $message" >"$output_data_path"
  
              # Getting data out of the container
              gsutil cp -r "$output_data_path" "$output_data_uri"
            """,
              placeholders.InputValuePlaceholder("message"),
              placeholders.OutputUriPlaceholder("data"),
          ],
      )
  
      print_value_component = (
          tfx.dsl.experimental.create_container_component(
              name="Print",
              inputs={
                  "text": simple_artifacts.File,
              },
              image="gcr.io/ml-pipeline/mirrors/cloud-sdk",
              command=[
                  "echo",
                  placeholders.InputValuePlaceholder("text"),
              ],
          )
      )
  
      producer_task = producer_component(message="World!")
      print_task = print_value_component(
          text=producer_task.outputs["data"],
      )
      return [producer_task, print_task]
  
file_path: tfx/tfx/orchestration/kubeflow/v2/e2e_tests/artifact_value_placeholder_integration_test.py
imports: import tensorflow
  from tfx import v1
  from tfx.dsl.component.experimental import placeholders
  from tfx.orchestration import test_utils
  from tfx.orchestration.kubeflow.v2.e2e_tests import base_test_case
  from tfx.types.experimental import simple_artifacts
label_desc: Use image node_id 1 for calling a global function with example usage: _tasks_for_pipeline_with_artifact_value_passing() and returns: list