Fix tower_* modules **params kwargs (#40137)

* Add cleaning function to handle **params

The cleaning function is only added to tower modules which pass a `**params`
argument as an unpacked dictionnary to the tower-cli method calls.

Fix #39745

* Remove previous code added only for tower_role

In 872a7b4, the `update_resources` function was modified so that it would clear unwanted
parameters. However, this behaviour is desired for other modules too, modified in
another commit. (see tower_clean_params).
This commit is contained in:
Pierre Roux 2018-05-26 01:03:12 +02:00 committed by Adam Miller
commit 81de7582d9
4 changed files with 8 additions and 12 deletions

View file

@ -87,10 +87,6 @@ def update_resources(module, p):
by name using their unique field (identity)
'''
params = p.copy()
for key in p:
if key.startswith('tower_'):
params.pop(key)
params.pop('state', None)
identity_map = {
'user': 'username',
'team': 'name',
@ -134,7 +130,7 @@ def main():
module.fail_json(msg='ansible-tower-cli required for this module')
role_type = module.params.pop('role')
state = module.params.get('state')
state = module.params.pop('state')
json_output = {'role': role_type, 'state': state}