def manage(command, args=[], in_background=False): """ Run a django command on the kalite project :param command: The django command string identifier, e.g. 'runserver' :param args: List of options to parse to the django management command :param in_background: Creates a sub-process for the command """ # Ensure that django.core.management's global _command variable is set # before call commands, especially the once that run in the background get_commands() # Import here so other commands can run faster if not in_background: utility = ManagementUtility([os.path.basename(sys.argv[0]), command] + args) # This ensures that 'kalite' is printed in help menus instead of # 'kalitectl.py' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute() else: if os.name != "nt": thread = ManageThread(command, args=args, name=" ".join([command]+args)) thread.start() else: # TODO (aron): for versions > 0.13, see if we can just have everyone spawn another process (Popen vs. ManageThread) Popen([sys.executable, os.path.abspath(sys.argv[0]), "manage", command] + args, creationflags=CREATE_NEW_PROCESS_GROUP)
def manage(command, args=None, as_thread=False): """ Run a django command on the kalite project :param command: The django command string identifier, e.g. 'runserver' :param args: List of options to parse to the django management command :param as_thread: Runs command in thread and returns immediately """ if not args: args = [] args = update_default_args(["--traceback"], args) if not as_thread: utility = ManagementUtility([os.path.basename(sys.argv[0]), command] + args) # This ensures that 'kalite' is printed in help menus instead of # 'kalite' or 'kalite.__main__' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute() else: get_commands() # Needed to populate the available commands before issuing one in a thread thread = ManageThread(command, args=args, name=" ".join([command] + args)) thread.start() return thread
def manage(command, args=None, as_thread=False): """ Run a django command on the kalite project :param command: The django command string identifier, e.g. 'runserver' :param args: List of options to parse to the django management command :param as_thread: Runs command in thread and returns immediately """ if not args: args = [] args = update_default_args(["--traceback"], args) if not as_thread: if PROFILE: profile_memory() utility = ManagementUtility([os.path.basename(sys.argv[0]), command] + args) # This ensures that 'kalite' is printed in help menus instead of # 'kalitectl.py' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute() else: get_commands( ) # Needed to populate the available commands before issuing one in a thread thread = ManageThread(command, args=args, name=" ".join([command] + args)) thread.start() return thread
def run(self): utility = ManagementUtility( [os.path.basename(sys.argv[0]), self.command] + self.args) # This ensures that 'kalite' is printed in help menus instead of # 'kalitectl.py' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute()
def manage(command, args=[], in_background=False): """ Run a django command on the kalite project :param command: The django command string identifier, e.g. 'runserver' :param args: List of options to parse to the django management command :param in_background: Creates a sub-process for the command """ # Ensure that django.core.management's global _command variable is set # before call commands, especially the once that run in the background get_commands() # Import here so other commands can run faster if not in_background: utility = ManagementUtility([os.path.basename(sys.argv[0]), command] + args) # This ensures that 'kalite' is printed in help menus instead of # 'kalitectl.py' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute() else: if os.name != "nt": thread = ManageThread(command, args=args, name=" ".join([command] + args)) thread.start() else: # TODO (aron): for versions > 0.13, see if we can just have everyone spawn another process (Popen vs. ManageThread) Popen([ sys.executable, os.path.abspath(sys.argv[0]), "manage", command ] + args, creationflags=CREATE_NEW_PROCESS_GROUP)
def manage(command, args=[], in_background=False): """ Run a django command on the kalite project :param command: The django command string identifier, e.g. 'runserver' :param args: List of options to parse to the django management command :param in_background: Creates a sub-process for the command """ # Import here so other commands can run faster if not in_background: utility = ManagementUtility([os.path.basename(sys.argv[0]), command] + args) # This ensures that 'kalite' is printed in help menus instead of # 'kalitectl.py' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute() else: thread = ManageThread(command, args=args) thread.start()
def manage(command, args=[], as_thread=False): """ Run a django command on the kalite project :param command: The django command string identifier, e.g. 'runserver' :param args: List of options to parse to the django management command :param as_daemon: Creates a new process for the command :param as_thread: Runs command in thread and returns immediately """ if not as_thread: if PROFILE: profile_memory() utility = ManagementUtility([os.path.basename(sys.argv[0]), command] + args) # This ensures that 'kalite' is printed in help menus instead of # 'kalitectl.py' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute() else: get_commands() # Needed to populate the available commands before issuing one in a thread thread = ManageThread(command, args=args, name=" ".join([command] + args)) thread.start()
def run(self): utility = ManagementUtility([os.path.basename(sys.argv[0]), self.command] + self.args) # This ensures that 'kalite' is printed in help menus instead of # 'kalitectl.py' (a part from the top most text in `kalite manage help` utility.prog_name = 'kalite manage' utility.execute()