code: def main(
      env, cpu, gpu, node, aws, user, overwrite, log
  ):  # pragma: no cover
      """Create environment based on env file for Auptimizer
      \b\n
      Copyright (C) 2018  LG Electronics Inc.
      \b\n
      GPL-3.0 License. This program comes with ABSOLUTELY NO WARRANTY;
      \b\n
      Arguments:
          env {str}: Auptimizer config folder path. Default to create at `./.aup/`.  Leave empty to create a new one.
                     Or use the path of the filename (env.ini) to load predefined values (also use --overwrite).
  
      \b
      Raises:
          Exception: If failed to load the existing Auptimizer configuration file.
      """
      coloredlogs.install(
          level=LOG_LEVEL[log], fmt="%(levelname)s - %(message)s"
      )
  
      user = get_default_username(user)
      config = ConfigParser()
      config.optionxform = str
  
      if env == ".":  # interactive
          (
              config,
              cpu,
              gpu,
              node,
              aws,
              user,
              overwrite,
          ) = interactive_setup(
              env, config, cpu, gpu, node, aws, user, overwrite
          )
      else:
          try:
              if not os.path.isfile(env):
                  logger.info("Load default env.ini file.")
                  env = os.path.join(env, "env.ini")
              config.read(env)
          except Exception as e:
              logger.fatal("failed to read %s", env)
              raise e
      setup(config, cpu, gpu, node, aws, user, overwrite, log)
  
file_path: auptimizer/src/aup/setup.py
imports: import json
  import logging
  import os
  from shutil import rmtree
  import sys
  import click
  import coloredlogs
  from six.moves import input
  from six.moves.configparser import ConfigParser
  from .utils import get_default_username, LOG_LEVEL
label_desc: Use image node_id 6 for calling a global function with example usage: main(env, cpu, gpu, node, aws, user, overwrite, log) without return types