code: def login_dockerhub(
      secret_name: str,
      secret_endpoint_url: str,
      secret_endpoint_region_name: str,
  ):
      """
      Login to the Docker Hub account
      :return: None
      """
      dockerhub_credentials = _get_dockerhub_credentials(
          secret_name, secret_endpoint_url, secret_endpoint_region_name
      )
  
      logging.info("Logging in to DockerHub")
      # We use password-stdin instead of --password to avoid leaking passwords in case of an error.
      # This method will produce the following output:
      # > WARNING! Your password will be stored unencrypted in /home/jenkins_slave/.docker/config.json.
      # > Configure a credential helper to remove this warning. See
      # > https://docs.docker.com/engine/reference/commandline/login/#credentials-store
      # Since we consider the restricted slaves a secure environment, that's fine. Also, using this will require
      # third party applications which would need a review first as well.
      p = subprocess.run(
          [
              "docker",
              "login",
              "--username",
              dockerhub_credentials["username"],
              "--password-stdin",
          ],
          stdout=subprocess.PIPE,
          input=str.encode(dockerhub_credentials["password"]),
      )
      logging.info(p.stdout)
      if p.returncode == 0:
          logging.info("Successfully logged in to DockerHub")
          return
  
      raise RuntimeError("Failed to login to DockerHub")
  
file_path: mxnet/ci/docker_login.py
imports: import argparse
  import json
  import logging
  import os
  import subprocess
  import sys
  from util import retry, config_logging
label_desc: Use image node_id 2 for calling a global function with example usage: login_dockerhub(secret_name, secret_endpoint_url, secret_endpoint_region_name) without return types