e9d29b1fe4
* Get no_log parameters from subspec * Add changelog and unit tests * Handle list of dicts in suboptions Add fancy error message (this will probably haunt me) * Update unit tests to test for list of dicts in suboptions * Add integration tests * Validate parameters in dict and list In case it comes in as a string * Make changes based on feedback, fix tests * Simplify validators since we only need to validate dicts Add test for suboptions passed in as strings to ensure they get validated properly and turned into a dictionary. ci_complete * Add a few more integration tests
45 lines
1.2 KiB
Python
45 lines
1.2 KiB
Python
#!/usr/bin/python
|
|
# -*- coding: utf-8 -*-
|
|
# Copyright (c) 2019 Ansible Project
|
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
from __future__ import absolute_import, division, print_function
|
|
__metaclass__ = type
|
|
|
|
from ansible.module_utils.basic import AnsibleModule
|
|
|
|
|
|
def main():
|
|
module = AnsibleModule(
|
|
argument_spec={
|
|
'state': {},
|
|
'secret': {'no_log': True},
|
|
'subopt_dict': {
|
|
'type': 'dict',
|
|
'options': {
|
|
'str_sub_opt1': {'no_log': True},
|
|
'str_sub_opt2': {},
|
|
'nested_subopt': {
|
|
'type': 'dict',
|
|
'options': {
|
|
'n_subopt1': {'no_log': True},
|
|
}
|
|
}
|
|
}
|
|
},
|
|
'subopt_list': {
|
|
'type': 'list',
|
|
'elements': 'dict',
|
|
'options': {
|
|
'subopt1': {'no_log': True},
|
|
'subopt2': {},
|
|
}
|
|
}
|
|
|
|
}
|
|
)
|
|
module.exit_json(msg='done')
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|