def _prompt_for_parameters(missing_parameters): result = {} for param_name in missing_parameters: prompt_str = 'Please provide a value for \'{}\' (? for help): '.format(param_name) param = missing_parameters[param_name] param_type = param.get('type', 'string') description = 'Missing description' metadata = param.get('metadata', None) if metadata is not None: description = metadata.get('description', description) allowed_values = param.get('allowedValues', None) while True: if allowed_values is not None: ix = prompt_choice_list(prompt_str, allowed_values, help_string=description) result[param_name] = allowed_values[ix] break elif param_type == 'securestring': value = prompt_pass(prompt_str, help_string=description) elif param_type == 'int': int_value = prompt_int(prompt_str, help_string=description) result[param_name] = int_value break elif param_type == 'bool': value = prompt_t_f(prompt_str, help_string=description) result[param_name] = value break else: value = prompt(prompt_str, help_string=description) if len(value) > 0: break return {}
def _prompt_for_parameters(missing_parameters): result = {} for param_name in missing_parameters: prompt_str = 'Please provide a value for \'{}\' (? for help): '.format(param_name) param = missing_parameters[param_name] param_type = param.get('type', 'string') description = 'Missing description' metadata = param.get('metadata', None) if metadata is not None: description = metadata.get('description', description) allowed_values = param.get('allowedValues', None) while True: if allowed_values is not None: ix = prompt_choice_list(prompt_str, allowed_values, help_string=description) result[param_name] = allowed_values[ix] break elif param_type == 'securestring': value = prompt_pass(prompt_str, help_string=description) result[param_name] = value elif param_type == 'int': int_value = prompt_int(prompt_str, help_string=description) result[param_name] = int_value break elif param_type == 'bool': value = prompt_t_f(prompt_str, help_string=description) result[param_name] = value break else: value = prompt(prompt_str, help_string=description) result[param_name] = value if value: break return result