code: def _databricks_login(interactive):
      """Set up databricks authentication."""
      try:
          # Failed validation will throw an error.
          _validate_databricks_auth()
          return
      except Exception:
          if interactive:
              _logger.info(
                  "No valid Databricks credentials found, please enter your credentials..."
              )
          else:
              raise MlflowException(
                  "No valid Databricks credentials found while running in non-interactive mode."
              )
  
      while True:
          host = input("Databricks Host (should begin with https://): ")
          if not host.startswith("https://"):
              _logger.error(
                  "Invalid host: {host}, host must begin with https://, please retry."
              )
          break
  
      profile = {"host": host}
      if "community" in host:
          # Databricks community edition requires username and password for authentication.
          username = input("Username: ")
          password = getpass.getpass("Password: ")
          profile["username"] = username
          profile["password"] = password
      else:
          # Production or staging Databricks requires personal token for authentication.
          token = getpass.getpass("Token: ")
          profile["token"] = token
  
      file_name = os.environ.get(
          "DATABRICKS_CONFIG_FILE",
          f"{os.path.expanduser('~')}/.databrickscfg",
      )
      profile_name = os.environ.get(
          "DATABRICKS_CONFIG_PROFILE", "DEFAULT"
      )
      _overwrite_or_create_databricks_profile(
          file_name, profile, profile_name
      )
  
      try:
          # Failed validation will throw an error.
          _validate_databricks_auth()
          return
      except subprocess.TimeoutExpired:
          raise MlflowException(
              "Timeout while signing in Databricks, max retry reached. This often happens when you "
              "are using an invalid host. Please check your credentials and retry `mlflow.login`."
          )
      except Exception as e:
          # If user entered invalid auth, we will raise an error and ask users to retry.
          raise MlflowException(
              f"Failed to sign in Databricks, please retry `mlflow.login()`: {e}"
          )
  
file_path: mlflow/mlflow/utils/credentials.py
imports: import configparser
  import getpass
  import logging
  import os
  import subprocess
  from typing import NamedTuple, Optional, Tuple
  from mlflow.environment_variables import MLFLOW_TRACKING_PASSWORD, MLFLOW_TRACKING_USERNAME
  from mlflow.exceptions import MlflowException
label_desc: Use image node_id 8 for calling a global function with example usage: _databricks_login(interactive) without return types