* Fix _clean_result for debug callback with 1 char var names
The check in _clean_results was removing any keys that happened
to be one of the chars in ('invocation') instead of the string
'invocation'. This was meant to be a tuple but there was no comma
so the for iterated the string instead of the tuple.
Introduced in 9dba580204
Update unit test to catch this.
Fixes#33723
* Use .pop() to remove invocation from results dict
In base callback _clean_results, simplify the way the
'invocation' item is removed.
Add some more unit tests.
* windows dev docs - vagrant info
* added info about FileUtil and LinkUtil
* Initial edit pass - WIP
* updated some wording
* fix some more general sayings to be more professional
* Deprecate Entity, EntityCollection and use subspec in network modules
* As per proposal https://github.com/ansible/proposals/issues/76
deprecate use of Entity, EntityCollection, ComplexDict, ComplexList
and use subspec instead.
* Refactor ios modules
* Refactor eos modules
* Refactor vyos modules
* Refactor nxos modules
* Refactor iosxr modules
* Add support for key in suboptions handling
* Fix CI issues
* Refactor cloudscale API code
Move code common to all cloudscale cloud modules into a common base
class.
This is needed as a prepartion of the cloudscale_floating_ip module.
* cloudscale_floating_ip module
New cloud module to manage floating IPs on the cloudscale.ch IaaS
service.
* Update zabbix_host documentation (extend ipmi_-documentation, and update style to be consistent on the rest while we are at it)
* Remove ipmi_parameters being added to the API call when not required
* remove optional parameters from add_host, as well
Fix a bunch of things mentioned in the review.
Delete commented code from module. Add fix for vcsim not returning
uncommitted.
Add integration test.
Add changes suggested
* A first pass at moving libs to new dir structure
The network modules changed their module_utils dir structure.
This first patch establishes mod utils for F5 in this new structure.
Module use will be limited until things are more fleshed out
* Fixing upstream errors
* Fixing more issues
The command module docs were unclear. They talked about ignoring the user's environment which lead people to believe the user's environment variables were not used. In actual fact, the user's environment variables are used. They just are not expanded in the command.
* Bulk pep8 fixes - hand crafted
Fix by hand the remaining issues that autopep8 couldn't
* Next batch of hand crafted pep8 fixes
* Ignore W503
https://github.com/PyCQA/pycodestyle/pull/499
* Revert more of W503
* python3 support for letsencrypt module (fixes#30690)
* initialize result to a dict in some methods to prevent 'NoneType is not iterable' TypeError
* use dict.get() to retrieve values from info dict to prevent KeyError
* convert to/from text/bytes using _text methods for PY3 support
* Add docs describing some additional behaviors around modules, to outline why generic modules will not be accepted
* Add/copy the generic module guidelines to developing_modules
* Edits for clarity
* Edits for clarity
* Fail when attempting to modify unmodifiable target group parameters
As you can't modify Port, Protocol or VPC id for a target group, fail
when this happens rather than pretending to do it.
One could argue that the target group could be recreated rather than
failing, but this has massive knock on implications to other resources
that depend on the TG (all ASGs would need to be updated, the ELB
listener would need to be updated, etc)
* Use `.get()` instead of direct dictionary access