code: def run():
      source_branch = os.environ.get("ghprbSourceBranch")
      if not source_branch:
          return error("Environment variable ghprbSourceBranch not set")
  
      target_branch = os.environ.get("ghprbTargetBranch")
      if not target_branch:
          return error("Environment variable ghprbTargetBranch not set")
  
      remote = "origin"
      try:
          files_changed = get_list_of_modified_files(
              remote, source_branch, target_branch
          )
      except Exception as e:
          return error(
              "%r when trying to retrieve the list of changed files" % e
          )
  
      for fname in files_changed:
          if (
              fname.startswith("h2o-py/")
              or fname == "h2o-bindings/bin/gen_python.py"
          ):
              mark_flag_true("py")
          elif (
              fname.startswith("h2o-r/")
              or fname == "h2o-bindings/bin/gen_R.py"
          ):
              mark_flag_true("r")
          elif fname.endswith(".md"):
              pass  # Changes in .md files don't require any jobs to be run
          else:
              mark_all_flags_true()
              break
  
imports: import os
  import subprocess
label_desc: Use image node_id 5 for calling a global function with example usage: run() and returns: error, error, error