def __init__(self, context, log, hosts=[], **kwargs): """ Constructor Args: context -- context log -- log hosts -- target hosts """ self.processes_terminated = False if context is None: raise RuntimeError('Argument "context" required.') if len(hosts) == 0: raise RuntimeError('Argument "hosts" length must be > 0') options = context.options newline = False login_password = None if 'login_password' in kwargs: login_password = kwargs['login_password'] elif options.get('prompt_login_password'): login_password = read_login_password() newline = True elif options.get('login_password_stdin'): login_password = read_login_password_from_stdin() sudo_password = None if 'sudo_password' in kwargs: sudo_password = kwargs['sudo_password'] elif options.get('prompt_sudo_password'): sudo_password = read_sudo_password() elif options.get('sudo_password_stdin'): sudo_password = read_sudo_password_from_stdin() if newline: print_() self.context = context self.log = log self.hosts = hosts self.login_password = login_password self.sudo_password = sudo_password self.raise_error = True if options.get('continue_on_error'): self.raise_error = False self.process_pool = multiprocessing.Pool(processes = options.get('parallel', 1))
def __init__(self, context, log, hosts=[], **kwargs): """ Constructor Args: context -- context log -- log hosts -- target hosts """ if context is None: raise RuntimeError('Argument "context" required.') if len(hosts) == 0: raise RuntimeError('Argument "hosts" length must be > 0') options = context.options newline = False login_password = None if "login_password" in kwargs: login_password = kwargs["login_password"] elif options.get("prompt_login_password"): login_password = read_login_password() newline = True sudo_password = None if "sudo_password" in kwargs: sudo_password = kwargs["sudo_password"] elif options.get("prompt_sudo_password") or ( context.arguments is not None and context.arguments[0].startswith("sudo") ): sudo_password = read_sudo_password() newline = True if newline: print self.context = context self.log = log self.hosts = hosts self.login_password = login_password self.sudo_password = sudo_password self.raise_error = False if options["continue_on_error"] else True self.process_pool = Pool(processes=options["parallel"])
def __init__(self, context, log, hosts=[], **kwargs): """ Constructor Args: context -- context log -- log hosts -- target hosts """ if context is None: raise RuntimeError('Argument "context" required.') if len(hosts) == 0: raise RuntimeError('Argument "hosts" length must be > 0') options = context.options newline = False login_password = None if 'login_password' in kwargs: login_password = kwargs['login_password'] elif options.get('prompt_login_password'): login_password = read_login_password() newline = True sudo_password = None if 'sudo_password' in kwargs: sudo_password = kwargs['sudo_password'] elif options.get('prompt_sudo_password') \ or (context.arguments is not None and context.arguments[0].startswith('sudo')): sudo_password = read_sudo_password() newline = True if newline: print self.context = context self.log = log self.hosts = hosts self.login_password = login_password self.sudo_password = sudo_password self.raise_error = False if options['continue_on_error'] else True self.process_pool = Pool(processes=options['parallel'])