From 5b7abefb42bb2a962caab444ff2557ca78732f63 Mon Sep 17 00:00:00 2001 From: Rob Crittenden Date: Wed, 8 Dec 2010 17:24:26 -0500 Subject: If any params marked alwaysask are provided then prompt for none of them. ticket 604 --- ipalib/cli.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ipalib/cli.py b/ipalib/cli.py index 375607ff0..555cbac77 100644 --- a/ipalib/cli.py +++ b/ipalib/cli.py @@ -889,9 +889,14 @@ class cli(backend.Executioner): ``self.env.prompt_all`` is ``True``, this method will prompt for any params that have a missing values, even if the param is optional. """ + honor_alwaysask = True + for param in cmd.params(): + if param.alwaysask and param.name in kw: + honor_alwaysask = False + break for param in cmd.params(): if (param.required and param.name not in kw) or \ - param.alwaysask or self.env.prompt_all: + (param.alwaysask and honor_alwaysask) or self.env.prompt_all: if param.password: kw[param.name] = self.Backend.textui.prompt_password( param.label -- cgit