Python inquirer.Checkbox() Examples
The following are 1
code examples of inquirer.Checkbox().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
inquirer
, or try the search function
.
Example #1
Source File: __main__.py From bridgy with MIT License | 4 votes |
def prompt_targets(question, targets=None, instances=None, multiple=True, config=None, type=InstanceType.ALL, filter_sources=tuple()): if targets == None and instances == None or targets != None and instances != None: raise RuntimeError("Provide exactly one of either 'targets' or 'instances'") if targets: instances = inventory.search(config, targets, filter_sources=filter_sources, type=type) if len(instances) == 0: return [] if len(instances) == 1: return instances display_instances = collections.OrderedDict() # TODO: fix cap'd length... it's pretty arbitraty maxLen = min(max([len(instance.name) for instance in instances]), 55) for instance in sorted(instances): display = str("%-" + str(maxLen+3) + "s (%s)") % (instance.name, instance.address) display_instances[display] = instance questions = [] if multiple: question = inquirer.Checkbox('instance', message="%s%s%s (space to multi-select, enter to finish)" % (utils.term.bold + utils.term.underline, question, utils.term.normal), choices=list(display_instances.keys()) + ['all'], # default='all' ) else: question = inquirer.List('instance', message="%s%s%s (enter to select)" % (utils.term.bold, question, utils.term.normal), choices=list(display_instances.keys()), ) questions.append(question) answers = None try: answers = inquirer.prompt(questions, theme=THEMER, raise_keyboard_interrupt=True) except KeyboardInterrupt: logger.error("Cancelled by user") sys.exit(1) if 'all' in answers["instance"]: selected_hosts = instances else: selected_hosts = [] if not multiple: answers["instance"] = [answers["instance"]] for answer in answers["instance"]: selected_hosts.append(display_instances[answer]) return selected_hosts