mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
commit
22e40b6a61
3 changed files with 19 additions and 5 deletions
|
@ -161,7 +161,9 @@ class AnsibleModule(object):
|
|||
self.argument_spec = argument_spec
|
||||
self.supports_check_mode = supports_check_mode
|
||||
self.check_mode = False
|
||||
|
||||
|
||||
self.aliases = {}
|
||||
|
||||
if add_file_common_args:
|
||||
self.argument_spec.update(FILE_COMMON_ARGUMENTS)
|
||||
|
||||
|
@ -169,7 +171,8 @@ class AnsibleModule(object):
|
|||
(self.params, self.args) = self._load_params()
|
||||
|
||||
self._legal_inputs = [ 'CHECKMODE' ]
|
||||
self._handle_aliases()
|
||||
|
||||
self.aliases = self._handle_aliases()
|
||||
|
||||
if check_invalid_arguments:
|
||||
self._check_invalid_arguments()
|
||||
|
@ -460,6 +463,7 @@ class AnsibleModule(object):
|
|||
|
||||
|
||||
def _handle_aliases(self):
|
||||
aliases_results = {} #alias:canon
|
||||
for (k,v) in self.argument_spec.iteritems():
|
||||
self._legal_inputs.append(k)
|
||||
aliases = v.get('aliases', None)
|
||||
|
@ -474,8 +478,11 @@ class AnsibleModule(object):
|
|||
self.fail_json(msg='internal error: aliases must be a list')
|
||||
for alias in aliases:
|
||||
self._legal_inputs.append(alias)
|
||||
aliases_results[alias] = k
|
||||
if alias in self.params:
|
||||
self.params[k] = self.params[alias]
|
||||
|
||||
return aliases_results
|
||||
|
||||
def _check_for_check_mode(self):
|
||||
for (k,v) in self.params.iteritems():
|
||||
|
@ -583,8 +590,15 @@ class AnsibleModule(object):
|
|||
# Sanitize possible password argument when logging.
|
||||
log_args = dict()
|
||||
passwd_keys = ['password', 'login_password']
|
||||
|
||||
for param in self.params:
|
||||
if param in passwd_keys:
|
||||
canon = self.aliases.get(param, param)
|
||||
arg_opts = self.argument_spec.get(canon, {})
|
||||
no_log = arg_opts.get('no_log', False)
|
||||
|
||||
if no_log:
|
||||
log_args[param] = 'NOT_LOGGING_PARAMETER'
|
||||
elif param in passwd_keys:
|
||||
log_args[param] = 'NOT_LOGGING_PASSWORD'
|
||||
else:
|
||||
log_args[param] = self.params[param]
|
||||
|
|
|
@ -129,7 +129,7 @@ def main():
|
|||
class CommandModule(AnsibleModule):
|
||||
|
||||
def _handle_aliases(self):
|
||||
pass
|
||||
return {}
|
||||
|
||||
def _check_invalid_arguments(self):
|
||||
pass
|
||||
|
|
|
@ -153,7 +153,7 @@ def main():
|
|||
ramdisk = dict(),
|
||||
wait = dict(choices=BOOLEANS, default=False),
|
||||
ec2_url = dict(aliases=['EC2_URL']),
|
||||
ec2_secret_key = dict(aliases=['EC2_SECRET_KEY']),
|
||||
ec2_secret_key = dict(aliases=['EC2_SECRET_KEY'], no_log=True),
|
||||
ec2_access_key = dict(aliases=['EC2_ACCESS_KEY']),
|
||||
user_data = dict(),
|
||||
instance_tags = dict(),
|
||||
|
|
Loading…
Reference in a new issue