code: def _install_app_from_source(
      source_url: str,
      git_url: str,
      folder_name: str,
      cwd: Optional[str] = None,
      overwrite: bool = False,
      git_sha: Optional[str] = None,
  ) -> None:
      """Installing lighting app from the `git_url`
  
      Args:
          source_url:
              source repo url without any tokens and params, this param is used only for displaying
          git_url:
              repo url that is used to clone, this can contain tokens
          folder_name:
              where to clone the repo ?
          cwd:
              Working director. If not specified, current working directory is used.
          overwrite:
              If true, overwrite the app directory without asking if it already exists
          git_sha:
              The git_sha for checking out the git repo of the app.
  
      """
  
      if not cwd:
          cwd = os.getcwd()
  
      destination = os.path.join(cwd, folder_name)
      if os.path.exists(destination):
          if not overwrite:
              raise SystemExit(
                  f"Folder {folder_name} exists, please delete it and try again, "
                  f"or force to overwrite the existing folder by passing `--overwrite`.",
              )
          shutil.rmtree(destination)
      # clone repo
      logger.info(f"⚡ RUN: git clone {source_url}")
      try:
          subprocess.check_output(
              ["git", "clone", git_url], stderr=subprocess.STDOUT
          )
      except subprocess.CalledProcessError as ex:
          if "Repository not found" in str(ex.output):
              raise SystemExit(
                  f"""
              Looks like the github url was not found or doesn't exist. Do you have a typo?
              {source_url}
              """
              )
          raise Exception(ex)
  
      # step into the repo folder
      os.chdir(f"{folder_name}")
      cwd = os.getcwd()
  
      try:
          if git_sha:
              subprocess.check_output(
                  ["git", "checkout", git_sha], stderr=subprocess.STDOUT
              )
      except subprocess.CalledProcessError as ex:
          if "did not match any" in str(ex.output):
              raise SystemExit(
                  "Looks like the git SHA is not valid or doesn't exist in app repo."
              )
          raise Exception(ex)
  
      # activate and install reqs
      # TODO: remove shell=True... but need to run command in venv
      logger.info(
          "⚡ RUN: install requirements (pip install -r requirements.txt)"
      )
      subprocess.call("pip install -r requirements.txt", shell=True)
  
      # install project
      # TODO: remove shell=True... but need to run command in venv
      logger.info("⚡ RUN: setting up project (pip install -e .)")
      subprocess.call("pip install -e .", shell=True)
  
      m = f"""
      ⚡ Installed! ⚡ to use your app:
  
      cd {folder_name}
      lightning run app app.py
      """
      logger.info(m)
  
imports: import os
  import re
  import shutil
  import subprocess
  import sys
  from typing import Dict, Optional, Tuple
  import click
  import requests
  from packaging.version import Version
  from lightning.app.core.constants import LIGHTNING_APPS_PUBLIC_REGISTRY, LIGHTNING_COMPONENT_PUBLIC_REGISTRY
  from lightning.app.utilities.app_helpers import Logger
label_desc: Use image node_id 19 for calling a global function with example usage: _install_app_from_source(source_url, git_url, folder_name, cwd, overwrite, git_sha) without return types