* uncoupled updates_url from plugin download urls
added new parameters: versioned_plugins_url, latest_plugins_url
* parameters updates_url, latest_plugins_url and versioned_plugins_url changed type to list of strings to implement fallback URLs usage
added type conversion if they are string (backward compatibility)
* removed type conversion this is handled by ansible validation
fix: dont fail if first url fails
* added fallback: if installation from plugin manager fails, try downloading the plugin manually
* fixed test failures
* PEP8 indent fix
* changelog fragment
* added debug outputs for new url fallback behavior
* added version_added in description for latest_plugins_url
Co-authored-by: Felix Fontein <felix@fontein.de>
* added version_added in description for versioned_plugins_url
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/1334-jenkins-plugin-fallback-urls.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* improve backwards-compatibility
add optional arg to allow custom update-center.json targets
* pep8 fixes
* fix inconsistency in argument documentation
* Apply suggestions from code review
Co-authored-by: Amin Vakil <info@aminvakil.com>
* add unit tests
* fix pep8
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Amin Vakil <info@aminvakil.com>
* [nmcli] add connection.slave-type for teamed devices
* [nmcli] add fragment with changes for #2827
* [nmcli] add tests for network team
* [nmcli] fix testing
Co-authored-by: Oriol MULA VALLS <oriol.mula@lxp.lu>
* Check idempotency on yum_versionlock
* Lock packages wildcard
* fix formatting
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix formatting in asserts
* little closer but not still there
* Import fnmatch
* Change check_mode logic
* Add check_mode for add
* Add changelog
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix keystore type; update unit tests
* add changelog fragment
* document new param 'keystore_type'
* add keystore_type support (backward compatible)
* check JKS format with magic bytes
* update integration tests
* revert first changes in unit tests
* update changelog fragment
* fix magic bytes for python2/python3
* fix integration tests (irrelevant check_mode)
* fix unit test (keystore removed before failure => changed=true)
* fix typo
* fix spelling
* shorten a branch
* mock is_jks_or_pkcs12
* fix function path in unit tests
* Apply suggestions from code review (spelling)
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* rename a method (module + unit tests)
* move ArgumentSpec class content to main()
* refactor create() to not loose existing keystore in case of error
* update unit tests
* add integration test (error handling)
* fix keystore backup cleanup
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Initial Commit
* Adding changelog fragment
* Ensured params are present during verbose output and enhanced check_mode
* Making specific to builtins
* Removing unneccessary external call
* Acutal bugfix
* Allow keycloak_group.py to take token as parameter for the authentification
Refactor get_token to pass module.params + Documentation
Fix unit test and add new one for token as param
Fix identation
Update plugins/modules/identity/keycloak/keycloak_client.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/modules/identity/keycloak/keycloak_clienttemplate.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Allow keycloak_group.py to take token as parameter for the authentification
Refactor get_token to pass module.params + Documentation
* Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Check if base_url is None before to check format
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/modules/identity/keycloak/keycloak_client.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
Update plugins/modules/identity/keycloak/keycloak_clienttemplate.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
Switch to modern syntax for the documentation (e.g. community.general.keycloak_client)
Update keycloak_client.py
Update keycloak_clienttemplate.py
Add keycloak_authentication module to manage authentication
Minor fixex
Fix indent
* Update plugins/modules/identity/keycloak/keycloak_authentication.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/modules/identity/keycloak/keycloak_authentication.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/modules/identity/keycloak/keycloak_authentication.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/modules/identity/keycloak/keycloak_authentication.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/modules/identity/keycloak/keycloak_authentication.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Removing variable ANSIBLE_METADATA from beginning of file
Minor fix
Refactoring create_or_update_executions :add change_execution_priority function
Refactoring create_or_update_executions :add create_execution function
Refactoring create_or_update_executions: add create_subflow
Refactoring create_or_update_executions: add update_authentication_executions function
Minor fix
* Using FQCN for the examples
Minor fix
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/keycloak/keycloak_authentication.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Update plugins/modules/identity/keycloak/keycloak_authentication.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Refactoring: rename isDictEquals into is_dict_equals
Refactoring: rename variable as authentication_flow
Refactoring: rename variable as new_name
Refactoring: rename variable as flow_list
Refactoring: rename variable as new_flow
Refactoring: changing construction of dict newAuthenticationRepresentation and renaming as new_auth_repr
Minor fix
* Refactoring: rename variables with correct Python syntax (auth_repr, exec_repr)
Move create_or_update_executions function from keycloak.py to keycloak_authentication.py
Minor fix
Remove mock_create_or_update_executions not needed anymore
Fix unit test
Update plugins/module_utils/identity/keycloak/keycloak.py
is_dict_equals function return True if value1 empty
Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Rename is_dict_equal as is_struct_included and rename params as struct1 and struct2
Rename variables according to Python naming conventions
Refactoring: add find_exec_in_executions function in keycloak_authentication to remove code duplication
typo
Add blank line
Add required parameter, either creds or token
Typo
try/except only surround for loop containing struct2[key]
Add sub-options to meta_args
assigment of result['changed'] after if-elif-else block
Fix CI error: parameter-type-not-in-doc
Fix unit test: none value excluded from comparison
Minor fix
Simplify is_struct_included function
Replace 'type(..) is' by isinstance(..)
Remove redundant required=True and redundant parenthesis
Add check_mode, check if value is None (None value added by argument spec checker)
Apply suggestions from code review
Update plugins/modules/identity/keycloak/keycloak_authentication.py
* Update plugins/modules/identity/keycloak/keycloak_authentication.py
* Add index paramter to configure the priority order of the execution
* Minor fix: authenticationConfig dict instead of str
Co-authored-by: Felix Fontein <felix@fontein.de>
* Initial Commit
* Further refinement
* Fixing archive name distortion for single file zips
* Applying initial review suggestions
* Updating path value for single target
* Adding test case for single target zip archiving
* Fixing integration for RHEL/FreeBSD on ansible 2.x
* Fixing integration second attempt
* Adding changelog fragment
* Updating changelog fragment
* Support stop a running Jenkins build. Meanwhile enrich document content and test cases.
* Fix the inconsistencies regarding the function name.
* Submit the changelog and fix a PEP8 issue.
* Remedy whitespace related PEP8 issues.
* Implement the idempotent test case for the stop build function.
* Make sure it returns proper changed status when we stop a build repeatedly.
* Fix incorrect usages on comparison with True or False and incorrect usages on validating the changed status.
* In this mocking situation, adjust the mock return value and test case to perform unit testing.
* Implement JenkinsMockIdempotent() to mock return value in idempotent test cases.
* Fix issues reported by CI.
* Refactor the code to avoid CI exception and remove get_build_status() from mock function as they should not be there.
* Update plugins/modules/web_infrastructure/jenkins_build.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* gem_module: Add bindir option
This option allows to specify directory to install executables, e.g.
`/home/user/bin` or `/home/user/.local/bin`. This comes especially handy
when used with user_install option as the default path of executables is
not in PATH.
* Update changelogs/fragments/gem_module_add_bindir_option.yml
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* gem_module: Integration tests for bindir option
* gem_module: Update Integration tests for bindir option
* gem_module: Update Integration tests for bindir option
Make sure gist is not installed system-wide prior the tests
* Revert "gem_module: Update Integration tests for bindir option"
This reverts commit 04eec6db27.
* Do not check "install_gem_result is changed" for ansible develop on openSUSE
* Revert "Do not check "install_gem_result is changed" for ansible develop on openSUSE"
This reverts commit 48ecb27889.
* gem_module: Use --norc to avoid surprises
Run install and uninstall actions with `--norc`. This way ansible has
more control over the way gems are installed.
* Revert "gem_module: Use --norc to avoid surprises"
This reverts commit 66f40bcfe6.
* gem_module: bindir - Ignore openSUSE Leap
* Update plugins/modules/packaging/language/gem.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* gem_module: Use --norc to avoid surprises
Run install and uninstall actions with `--norc` when supported (rubygems >= 2.5.2).
This way ansible has more control over the way gems are installed.
* Try distutils.version instead of packaging
* ver is an list, not string
* ver is not list either but tuple
* Update changelogs/fragments/gem_module_add_bindir_option.yml
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* ver can be None (when can this happen?)
* gem: Add norc option
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/language/gem.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Use tuples to compare versions
* Apply suggestions from code review
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/packaging/language/gem.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* lost norc option check is back
* Move handling norc option to separate function
* cosmetic
* fix for the previos commit
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Cache result of get_rubygems_version
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Amin Vakil <info@aminvakil.com>
ZFS-backed block devices may contain just the bare device name and
not have extra options like `,size=foo`, `,format=qcow2` etc. This
breaks an assumption in existing regex (which expects a comma).
Support such device strings and add a couple of testcases to validate.
* npm - fix updating version specific modules
if a version specific module is used, the comparison will be used with the version and not only by name
* Update plugins/modules/packaging/language/npm.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update changelogs/fragments/2830-npm-version-update.yml
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update changelogs/fragments/2830-npm-version-update.yml
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update changelogs/fragments/2830-npm-version-update.yml
Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Amin Vakil <info@aminvakil.com>
* reviving flatpack PR
* added changelog fragment
* adjusted integration tests per PR
* adjusted examples to use the full name of the module
* Use new local artifacts.
* Re-add StrictVersion import.
* Try to clean up PR.
* ...
* Use original name in installed/not installed list.
* More fixes.
* Work around flatpak bug.
* Fix bug I introduced.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add server_prefix and server_port as supported arguments for the redhat_subscription module.
* Adjust the argument sequence in the test case to be consistent with the original code in line 364 in redhat_subscription.py and add the changelog fragment.
* Grammatical changes such as adding full stops and using 'an HTTP' instead of 'a HTTP'.
* Commit the suggested changelog update.
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Fix typo.
Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Re-enable Fedora 34
* Update procps-ng before anything in yum_versionlock integration test
* Move procps-ng installation to block
* Revert "Move procps-ng installation to block"
This reverts commit 3aa873a110.
* Update procps-ng only on Fedora 34
* Similar version restrictions than flatpak_remote tests.
* ...
* Try to work around missing dependencies.
* Revert "Try to work around missing dependencies."
This reverts commit 66a4e38566.
* Add changelog.
* App8 -> App2; make sure that there are two apps App1 and App2.
* Fix forgotten variabe.
* Remove test notices.
* Seems like flatpak no longer supports file:// URLs.
The tests would need to be rewritten to offer the URL via http:// instead.
* Try local HTTP server for URL tests.
* ...
* Lint, add status check.
* Add boilerplate.
* Add 'ps aux'.
* Surrender to -f.
* Work around apparent flatpak bug.
* Fix YAML.
* Improve condition.
* Make sure test reruns behave better.
* zypper_repository: Check idempotency on adding repo with releasever
* Name required when adding non-repo files.
* Initial try to fix releasever
* Replace re.sub with .replace
* name releaseverrepo releaseverrepo
* Change to ansible_distribution_version for removing repo
* improve asserts format
* add changelog
* Fix changelog formatting
Co-authored-by: Felix Fontein <felix@fontein.de>
* improve command used for retrieving releasever variable
Co-authored-by: Felix Fontein <felix@fontein.de>
* add basearch replace
* Add basearch to changelog fragment
* Check for releasever and basearch only when they are there
Co-authored-by: Felix Fontein <felix@fontein.de>
* also uses LC_ALL to force language
* adjusted test_xfconf and test_cpanm
* added changelog fragment
* Update changelogs/fragments/2731-mh-cmd-locale.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* adjusted chglog frag per PR
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed validation-modules for plugins/modules/remote_management/stacki/stacki_host.py
* sanity fix
* added changelog fragment
* extra fix to the documentation
* Update plugins/modules/remote_management/stacki/stacki_host.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/remote_management/stacki/stacki_host.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* rollback params
Co-authored-by: Felix Fontein <felix@fontein.de>
* Reduce stormssh searches based on host
Due to the stormssh searches in the whole config values, we need to reduce the search results based on the full matching of the hosts
* Removed whitespaces in the blank line
* Added changelog fragment and tests for the fix.
* Added newline at the end of the changelog fragment
* Added newline at the end of the tests
* Fixed bug with name in tests
* Changed assertion for the existing host
* Update changelogs/fragments/2568-ssh_config-reduce-stormssh-searches-based-on-host.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Adjusted tests
* New line at the end of the tests
Co-authored-by: Anton Nikolaev <anikolaev@apple.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* add module pacman_key
* add symlink and fix documentation for pacman_key
* documentation fix for pacman_key
* improve logic around user input
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Improve parameter checking
required_one_of=[] is neat.
Co-authored-by: Alexei Znamensky
* Revert "Improve parameter checking"
This reverts commit 044b0cbc85.
* Simplify a bunch of code.
* fix typos pointed out by yan12125
* replaced manual checks with required-if invocation
* added default keyring to documentation
* some initial tests
* updated metadata
* refactored to make sanity tests pass
* refactor to make sanity tests pass ... part deux
* refactor: simplify run_command invocations
* test: cover check-mode and some normal operation
* docs: fix grammatical errors
* rip out fingerprint code
a full length (40 characters) key ID is equivalent to the fingerprint.
* refactor tests, add a couple more
* test: added testcase for method: data
* Update plugins/modules/packaging/os/pacman_key.py
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* docs: correct yaml boolean type
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* use get() rather than querying the key directly
* add a changelog fragment
* re-enable CI tests
* Update changelog fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* new
* move link
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* add more interesting return value in test
* remove unused objects
* removed unneeded function
* extend test output
* Update tests/unit/plugins/modules/database/saphana/test_hana_query.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Rainer Leber <rainer.leber@sva.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* rhsm_release: Fix the issue that rhsm_release module considers 8, 7Client and 7Workstation as invalid releases.
* Fix the unit test error: The new release_matcher could pass a wider range of patterns but that would not cause extra issue to the whole module.
* Submit the changelog fragment.
* Update changelogs/fragments/2571-rhsm_release-fix-release_matcher.yaml
Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Amin Vakil <info@aminvakil.com>
* opening file as utf-8-sig
* added changelog fragment
* using io.open()
* Update tests/integration/targets/ini_file/tasks/main.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix wrong certificate alias used when importing pkcs12, modify error output, stdout is more relevant than stderr
* add changelog fragment
* fix changelog fragment
* revamp filesystem module to prepare next steps
* pass all commands to module.run_command() as lists
* refactor grow() and grow_cmd() to not need to override them so much
* refactor all existing get_fs_size() overrides to raise a ValueError if
not able to parse command output and return an integer.
* override MKFS_FORCE_FLAGS the same way for all fstypes that require it
* improve documentation of limitations of the module regarding FreeBSD
* fix indentation in DOCUMENTATION
* add/update function/method docstrings
* fix pylint hints
filesystem: refactor integration tests
* Include *reiserfs* and *swap* in tests.
* Fix reiserfs related code and tests accordingly.
* Replace "other fs" (unhandled by this module), from *swap* to *minix*
(both mkswap and mkfs.minix being provided by util-linux).
* Replace *dd* commands by *filesize* dedicated module.
* Use FQCNs and name the tasks.
* Update main tests conditionals.
* add a changelog fragment
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* declare variables as lists when lists are needed
* fix construction without useless conversion
Co-authored-by: Felix Fontein <felix@fontein.de>
Add ability to ignore error on missing pass file to allow processing the
output further via another filters (mainly the default filter) without
updating the pass file itself.
It also contains the option to create the pass file, like the option
create=true does.
Finally, it also allows to issue a warning only, if the pass file is not
found.
* Adding cryptography as a backend for OpenSSL operations
* Updating unit tests and adding changelog fragment
* Allowing private key password option when using unprotected key
* Incorporating suggestions from initial review
* Centralizing module exit path
* gitlab_user: add expires_at option
* Add changelog
* Add integration test
* Add expires_at to addSshKeyToUser function
* password is required if state is set to present
* Check expires_at will not be added to a present ssh key
* add documentation about present ssh key
* add expires_at to unit tests
* Improve documentation
Co-authored-by: Felix Fontein <felix@fontein.de>
* Only pass expires_at to api when it is not None
* Emphasize on SSH public key
* Apply felixfontein suggestion
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add proxmox_nic module
Add proxmox_nic module to manage NIC's on Qemu(KVM) VM's in a Proxmox VE
cluster.
Update proxmox integration tests and add tests for proxmox_nic module.
This partially solves https://github.com/ansible-collections/community.general/issues/1964#issuecomment-790499397
and allows for adding/updating/deleting network interface cards after
creating/cloning a VM.
The proxmox_nic module will keep MAC-addresses the same when updating a
NIC. It only changes when explicitly setting a MAC-address.
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add check_mode and implement review comments
- check_mode added
- some documentation updates
- when MTU is set, check if the model is virtio, else fail
- trunks can now be provided as list of ints instead of vlanid[;vlanid...]
* Make returns on update_nic and delete_nic more readable
Co-authored-by: Felix Fontein <felix@fontein.de>
* Increase readability on update_nic and delete_nic
* Implement check in get_vmid
- get_vmid will now fail when multiple vmid's are returned as proxmox
doesn't guarantee uniqueness
- remove an unused import
- fix a typo in an error message
* Add some error checking to get_vmid
- get_vmid will now return the error message when proxmoxer fails
- get_vmid will return the vmid directly instead of a list of one
- Some minor documentation updates
* Warn instead of fail when setting mtu on unsupported nic
- When setting the MTU on an unsupported NIC model (virtio is the only
supported model) this module will now print a warning instead of
failing.
- Some minor documentation updates.
* Take advantage of proxmox_auth_argument_spec
Make use of proxmox_auth_argument_spec from plugins/module_utils/proxmox.py
This provides some extra environment fallbacks.
* Add blank line to conform with pep8
Co-authored-by: Felix Fontein <felix@fontein.de>
* first push: add discord module and test for notifications
* fix the yaml docs and edit the result output
* add link
* fix link
* fix docs and remove required=False in argument spec
* add elements specd and more info about embeds
* called str...
* elements for embeds oc.
* fix typo's in description and set checkmode to false
* edit docs and module return
* support checkmode with get method
* fix unit test
* handle exception and add new example for embeds
* quote line
* fix typos
* fix yaml
* break down of module_helper into smaller pieces, keeping compatibility
* removed abc.ABC (py3 only) from code + fixed reference to vars.py
* multiple changes:
- mh.base - moved more functionalities to ModuleHelperBase
- mh.mixins.(cmd, state) - CmdMixin no longer inherits from ModuleHelperBase
- mh.mixins.deps - DependencyMixin now overrides run() method to test dependency
- mh.mixins.vars - created class VarsMixin
- mh.module_helper - moved functions to base class, added VarsMixin
- module_helper - importing AnsibleModule as well, for backward compatibility in test
* removed unnecessary __all__
* make pylint happy
* PR adjustments + bot config + changelog frag
* Update plugins/module_utils/mh/module_helper.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/module_utils/mh/module_helper.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add dependent lookup plugin.
* Use correct YAML booleans.
* Began complete rewrite.
* Only match start of error msg.
* Improve tests.
* Work around old Jinja2 versions.
* Fix metadata.
* Fix filter name.
* Clean up test entries from sysrc tests
* sysrc: enable tests
* sysrc: cache the files to be changed and restore them
* Update the ezjail archive host and remove obsolete file
* sysrc: set ezjail to use archives for 12.0 or less
* sysrc: Detect the version to use ftp vs ftp-archive using http
* sysrc: Skip ezjail test on FreeBSD 12.0
* nmcli: Compare MAC addresses case insensitively
* Update changelogs/fragments/2416-nmcli_compare_mac_addresses_case_insensitively.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add mac to TESTCASE_BRIDGE so test_bridge_connection_unchanged covers case sensitive mac address comparison
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Convert current_value to uppercase as well in case nmcli changes behaviour
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add fedora 34 and fix typo
* Remove Fedora 32 from devel testing
* Use one newer version of Fedora for fixed ansible versions
* Revert "Use one newer version of Fedora for fixed ansible versions"
This reverts commit cbd006bd38.
* Try to skip task.
* Revert "Try to skip task."
This reverts commit ff0c899a86.
* Temporary disable Fedora 34 on setup_postgresql_db
Co-authored-by: Felix Fontein <felix@fontein.de>
* lxd dynamic inventory and test data
* added ``merge_profile`` parameter to merge configurations from the play to an existing profile
* cosmetic changes
* added ``merge_profile`` parameter to merge configurations from the play to an existing profile
* cosmetic changes
* fix pylint errors
* fix flake8 warnings
* fix pep8 errors without "line to long"
* fix ansible tests
* fix typo
* fix version added
* fix lost of suggestions from felixfontein
* fix filter
fix ansible test errors
* delete test config
* delete 'notes:' and copy content to description
* move testdata
load testdata by path from config
* updated documentation
* fix test data and remove inventory branch
* fix spellings and rename lxd to community.general.lxd
* fix documentation
* remove selftest
* strip example data
* add unit test
* switch to ansible.module_utils.common.dict_transformations
* documentation cleanup
* move lxd_inventory.atd from files to fixtures
* update documentation
move lxd_inventory.atd
* rename self.groups to self dispose
remove dumpdata
* cleanup
* fix unittests
comment out dump_data, it breaks the unit tests
* fix pep8
* Apply suggestions from code review
* Update plugins/inventory/lxd.py
* add test if no groupby is selected
* rename disposed to groupby
remove unused constant
other suggested cleanups
* Use bundled ipaddress instead of own code.
* Update plugins/inventory/lxd.py
* Exceptions should not be eaten.
* Improve error handling for network range/address parsing.
* Fix typo.
* Make network range valid.
* Do not error when groupby is not a dict.
Co-authored-by: Frank Dornheim <“dornheim@posteo.de@users.noreply.github.com”>
Co-authored-by: Felix Fontein <felix@fontein.de>
* added some cases for unsupported network interface and multi-nic without IP addresses
* added changelog fragment
* lint fixes and added option for ansible_host setting
* added description about the new option
* lint fix too long line
* Update changelogs/fragments/2259-proxmox-multi-nic-and-unsupported.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/inventory/proxmox.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/inventory/proxmox.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/inventory/proxmox.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added CommandDisabled
* refactored to code and added a test case where an interfaces doesnt have a mac address or is invalid to reset it to 00:00:00:00:00:00
* Update tests/unit/plugins/inventory/test_proxmox.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update tests/unit/plugins/inventory/test_proxmox.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* mac-address is set to None instead of 00:00:... when not defined
* changed None to empty string for mac-address
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Keycloak: add realm management
* Minor fixes
* Review fixes
* Remove sort of list because condition on list cannot be true
* Add exception in fail_json and update test
* Change output for secret and version in comments
* Update copyright
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add missing traceback
* Apply suggestions from code review
* Update plugins/modules/identity/keycloak/keycloak_realm.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Allow keycloak_group.py to take token as parameter for the authentification
* Fix some pep8 issues
* Add changelog fragment
* Refactor get_token to pass module.params + Documentation
* Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix unit test and add new one for token as param
* Fix identation
* Check base_url format also if token is given
* Update plugins/doc_fragments/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/keycloak/keycloak_client.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/keycloak/keycloak_clienttemplate.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Allow keycloak_group.py to take token as parameter for the authentification
* Refactor get_token to pass module.params + Documentation
* Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/keycloak/keycloak_group.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Check if base_url is None before to check format
* Fix unit test: rename base_url parameter to auth_keycloak_url
* Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/2250-allow-keycloak-modules-to-take-token-as-param.yml
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/identity/keycloak/keycloak_client.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/identity/keycloak/keycloak_client.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/identity/keycloak/keycloak_clienttemplate.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update changelogs/fragments/2250-allow-keycloak-modules-to-take-token-as-param.yml
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/module_utils/identity/keycloak/keycloak.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/identity/keycloak/keycloak_clienttemplate.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/identity/keycloak/keycloak_group.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/identity/keycloak/keycloak_group.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Switch to modern syntax for the documentation (e.g. community.general.keycloak_client)
* Add check either creds or token as argument of all keyloak_* modules
* Update plugins/modules/identity/keycloak/keycloak_client.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Amin Vakil <info@aminvakil.com>
* fixed udm_dns_zone
* fixed udm_dns_record
* removed lines from ignore files
* added changelog fragment
* moved the list elements fix to minor_changes
* new module: filesize
* description: create or resize a file, given its size
* with integration tests
* Update plugins/modules/files/filesize.py (version_added)
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update filesize.py (extends_documentation_fragment: use fqcn)
Co-authored-by: Amin Vakil <info@aminvakil.com>
* doc: use strict lowercase booleans (true/false) rather than other variants
* use *raw* type to manage size values
* drop 'miB' unit family
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* add more details
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* copying from the previous branch
* passing sanity - docs incomplete
* adjusted parameter name
* adjusted unit tests for mode=new
* adjusted integration tests for mode=new
* added 'russoz' to list of maintainers for cpanm
* Update tests/integration/targets/cpanm/tasks/main.yml
* Update tests/integration/targets/cpanm/tasks/main.yml
* ensuring backward compatibility + tests
* added changelog fragment
* version for new parameter and adjusted example
* typo and formatting
* Update plugins/modules/packaging/language/cpanm.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/language/cpanm.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/language/cpanm.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* multiple changes
- some fixes from PR
- supporting tests
- integration is no longer unsupported => destructive, should run on
apt- and rpm-based systems only
* only run integration tests in redhat-family > v7 or debian-family
Co-authored-by: Felix Fontein <felix@fontein.de>
* linode_v4: add support for `private_ip` option.
* linode_v4: remove `required` attribute from `private_ip` parameter.
* linode_v4: add changelog fragment.
* linode_v4: add PR link to changelog fragment.
Co-authored-by: Amin Vakil <info@aminvakil.com>
* linode_v4: add the `version_added` attribute to the `private_ip` section of module documentation
Co-authored-by: Felix Fontein <felix@fontein.de>
* linode_v4: improve styling of `private_ip` docs
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* New filters hashids_encode and hashids_decode
* Adding changelog
* Correcting whitespace issue in vars file
* Attempt to fix integration test failures
* Correcting copyright
* Addressing initial review comments
* Updating decoded sequence return from tuple to list
* Correcting capitilization and spelling
* java_keystore: add `certificate_path` and `private_key_path` options
* Update DOCUMENTATION and EXAMPLES accordingly.
* Refactor integration tests to play the same tasks twice.
* Add a changelog fragment (minor_changes).
refactor DOCUMENTATION
* Add useful info for better understanding of what options allow
keystore regeneration on the fly, and what other options lead the
module to fail, if their values change.
* Fix indentation and tenses.
* Add myself as author.
* readability-related stuff + changelog fragment
* Added handling for commas in the agent field for agent configuration
* Removed test statement
* Added changelog fragment
* Fixed spelling on fragment :-)
* fixed cdrom parameter
* fixed networks and custom_params parameters
* fixed disks parameter
* fixed remaining parameters
* removed plugins/modules/cloud/xenserver/xenserver_guest.py from ignore list
* comments from PR
* comments from PR
* more adjustments from the PR
* spectrum_model_attrs: Initial commit
* spectrum_model_attrs: sanity check fixes (1)
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Apply suggestions from code review:
* Removed ANSIBLE_METADATA.
* List all currently supported names in DOCUMENTATION block.
* Don't escape declarations that are long enough to fit on one
line.
* Apply suggestions from code review:
* YAML bools in DOCUMENTATION block.
* Various DOCUMENTATION block aesthetics.
* RETURN block proper format.
* 'yes' -> True declaration in argument spec.
* import urlencode from python 2 and 3 changed to
six.moves.urllib.quote.
* spectrum_model_attrs: integration test added.
* Update plugins/modules/monitoring/spectrum_model_attrs.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Update plugins/modules/monitoring/spectrum_model_attrs.py
Co-authored-by: Amin Vakil <info@aminvakil.com>
* spectrum_model_attrs: lint error fixes.
Co-authored-by: Tyler Gates <tgates@citco.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Added agent network interaces fact
* Adding changelog fragment
* More concise looping over interfaces
* Adding unit test case for agent interfaces
* Correcting whitespace issue
* Commented new dummy json returns with corresponding method
* java_keystore - improve error handling and returned results
* set check_rc=False to return results as documented when module fails
* set LANG, LC_ALL and LC_MESSAGES to C to rely keytool output parsing
* fix pylint's `no-else-return` and `unused-variable` hints
* update related unit tests accordingly
* add a changelog fragment
update unit test (remove stdout_lines from returned dict)
fix unit test: failure is now expected when alias does not exist
* Update changelogs/fragments/2183-java_keystore_improve_error_handling.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix integration test: overwrite keystore at the same location
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added module for ipa_otpconfig
* Make no_log=False explicit.
* Updated inputs to be int type instead of strings to align to expected inputs. Updated output message
* Add changelog fragment
* Remove changelog fragment as this is a new module
* Update plugins/modules/identity/ipa/ipa_otpconfig.py
Add version_added field to module description.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Updated punctuation in examples
* Add unit test for ipa_otpconfig
* Add ipa_otptoken module with unit test
* Updated documentation in unit test
* Update plugins/modules/identity/ipa/ipa_otpconfig.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/ipa/ipa_otpconfig.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/ipa/ipa_otptoken.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/ipa/ipa_otptoken.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/ipa/ipa_otptoken.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/ipa/ipa_otptoken.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/ipa/ipa_otptoken.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/identity/ipa/ipa_otptoken.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added some documentation updates to make it conform to ansible standards
* Update plugins/modules/identity/ipa/ipa_otptoken.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Address review comments
Co-authored-by: Chris Costa <chris.costa@compellingtech.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Bugfix: PyGithub does not support explicit port in base_url
* Fix unit tests
* Fix unit tests
* Added changelog
* Update changelogs/fragments/2204-github_repo-fix-baseurl_port.yml
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* attempt at fixing the issue
* Update plugins/modules/web_infrastructure/jira.py
* Fixed setting of "fields" element in the payload
* added changelog fragment
* added accountId parameter + minor fixes in docs
* added integration test for jira
* adjustments per PR
* Update plugins/modules/web_infrastructure/jira.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/web_infrastructure/jira.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/web_infrastructure/jira.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/web_infrastructure/jira.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/web_infrastructure/jira.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* adjustments per PR
Co-authored-by: Felix Fontein <felix@fontein.de>
* replace inline clear password by environment variable on a per-command basis.
* add changelog fragment
* update related unit tests
* Update changelogs/fragments/2177-java_keystore_1668_dont_expose_secrets_on_cmdline.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix unit test: force result without lambda
Co-authored-by: Felix Fontein <felix@fontein.de>
* added metadata for variables in module helper
* adjustments
* added separate support for tracking changes
* rewrote the diff code
* added integration test for module_helper
* using ansible.module_utils.common.dict_transformations.dict_merge
* improved dependency management
* restore ModuleHelper to base classes of CmdStateModuleHelper
* added assertions to ensure the failing module name appears in the error messages
* added test code for state-based modules
* fixed test name
* renamed class to VarMeta
* small fixes
* fixes from the PR
* fixed VarDict.__set_attr__
* added VarDict.__getitem__()
* added changelog fragment
* adjustments per PR
* ModuleHelper.output is now aware of conflicting variable names
* Update plugins/module_utils/module_helper.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* improve temporary files storage (naming/removal)
* update unit tests
* Update changelogs/fragments/2163-java_keystore_1667_improve_temp_files_storage.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* add dedicated function to randomize PKCS#12 filename
fix unit tests (also mock the new function)
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed bug
- scope file was not working
- added test to guarantee that behaviour
- marked integration test as destructive, because it overwrites ~/.gitconfig
* added changelog fragment
* Update tests/integration/targets/git_config/tasks/setup_no_value.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update tests/integration/targets/git_config/tasks/get_set_state_present_file.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update tests/integration/targets/git_config/tasks/get_set_state_present_file.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update tests/integration/targets/git_config/aliases
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/2125-git-config-scope-file.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* opennebula: add one_template module
A basic module for maintaining VM templates which should be flexible enough
for most needs ...
* fixup! opennebula: add one_template module
* fixup! fixup! opennebula: add one_template module
* Add support for `sudo su -` using password auth
Allow users to run Ansible tasks through `sudo su -` using password auth
- Feature Pull Request
sudosu
So I have been using this at various customers for bootstrapping Ansible mostly.
Often you have an existing setup where there is a user that has root-access enabled through sudo, but only to run `su` to log using the user's password.
In these specific cases the root password is unique to the system and therefore not an easy way to automate bootstrapping.
Having a `sudo su -` become option **with password prompt** is not possible with the existing become methods (neither sudo nor su can be used) by abusing `become_exe` or `become_flags`.
This fixesansible/ansible#12686
* Fix all reported issues
* Add unit tests
* Apply suggestions from code review
* Update plugins/become/sudosu.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update tests/unit/plugins/become/test_sudosu.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update tests/unit/plugins/become/test_sudosu.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* add new module xcc_redfish_command to manage Lenovo servers using Redfish APIs
* Update plugins/modules/remote_management/lenovoxcc/xcc_redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix some errors detected by ansible-test sanity
* end all descriptions (except short_description) with a period
* fix return definition problem and other errors detected by ansible-test sanity
* Always use true/false for booleans in YAML
* It is usually a good idea to leave away required: false
* fix errors detected by ansible-test sanity
* fix elements of command is not defined
* check whether resource_uri is specified for Raw commands
* if no Members property, return false; if empty array, return true
* get @odata.etag from patch body instead of getting again
* add request_body checking
* add unit test for the module
* fix errors detected by ansible-test sanity --test pep8
* update class name xcc_RedfishUtils to XCCRedfishUtils to follow convention; import AnsibleExitJson, AnsibleFailJson, ModuleTestCase, set_module_args, exit_json, fail_json from ansible_collections.community.general.tests.unit.plugins.modules.utils instead of inline them
* support using security token for auth
* fix line too long error
* As 2.3.0 got released yesterday, move to 2.4.0
* add maintainers for lenovoxcc
* update to make sure that it's sorted alphabetically
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added from_csv filter and integration tests
* Cleaning up whitespace
* Adding changelog fragment
* Updated changelog fragment name
* Removed temp fragment
* Refactoring csv functions Part 1
* Syncing refactored csv modules/filters
* Adding unit tests for csv Module_Util
* Updating changelog fragment
* Correcting whitespace in unit test
* Improving changelog fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/2037-add-from-csv-filter.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add gandi_livedns module
This module uses REST API to register, update and delete domain name
entries in Gandi DNS service (https://www.gandi.net/en/domain).
* Apply suggestions from code review
* Update plugins/module_utils/gandi_livedns_api.py
Co-authored-by: Gregory Thiemonge <greg@thiemonge.org>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Improvements and fixes to ModuleHelper, with (some) tests.
* added changelog fragment
* adjusted changelog frag - get_bin_path() handling is actually a bugfix
* fixed validation-modules for plugins/modules/cloud/smartos/smartos_image_info.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_scaling_group.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_cdb_user.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax.py
* Tidy up sanity checks ignore lines modules (batch 8)
* added changelog fragment
* rolled back removal of parameter from rax.py
* Included explicit parsing for proxmox guest tags and updated corresponding unit test with tags key
* Including changelog fragment for PR 1949
* Removed ellipsis from test
Proxmox only permits periods when surrounded by alphanumeric characters
* Corrected punctuation for changelog entry
Co-authored-by: Felix Fontein <felix@fontein.de>
* Allowing tags string to contain commas
* Incorporated new parsed tags fact with bugfix
* Correcting whitespace issues
* Update changelogs/fragments/1949-proxmox-inventory-tags.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/inventory/proxmox.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/1949-proxmox-inventory-tags.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed validation-modules for plugins/modules/cloud/heroku/heroku_collaborator.py
* fixed validation-modules for plugins/modules/cloud/linode/linode_v4.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_provider.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_policies.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_alert_profiles.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_tags.py
* fixed validation-modules for plugins/modules/cloud/opennebula/one_host.py
* fixed validation-modules for plugins/modules/cloud/opennebula/one_image_info.py
* fixed validation-modules for plugins/modules/cloud/opennebula/one_vm.py
* fixed validation-modules for plugins/modules/cloud/scaleway/scaleway_lb.py
* fixed validation-modules for plugins/modules/cloud/scaleway/scaleway_compute.py
* fixed validation-modules for plugins/modules/remote_management/oneview/oneview_network_set_info.py
* fixed validation-modules for plugins/modules/remote_management/oneview/oneview_ethernet_network_info.py
* fixed validation-modules for plugins/modules/remote_management/oneview/oneview_datacenter_info.py
* fixed validation-modules for plugins/modules/remote_management/oneview/oneview_enclosure_info.py
* Tidy up sanity checks ignore lines modules (batch 7)
* added changelog fragment
* Missed a couple of lines in ingnore-2.11.txt
* fixed validation-modules for plugins/modules/cloud/packet/packet_volume_attachment.py
* Adjusted ignore files and changelog for packet_volume_attachment.py
* Rolled back ignore line for linode module
* Update plugins/modules/cloud/opennebula/one_image_info.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixes from the PR
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added integration test and fixed bug
* added changelog fragment
* Update changelogs/fragments/1972-ini_file-empty-str-value.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update tests/integration/targets/ini_file/tasks/main.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed validation-modules for plugins/modules/packaging/language/composer.py
* fixed validation-modules for plugins/modules/packaging/os/apt_rpm.py
* fixed validation-modules for plugins/modules/packaging/os/homebrew.py
* fixed validation-modules for plugins/modules/packaging/os/homebrew_cask.py
* fixed validation-modules for plugins/modules/packaging/os/opkg.py
* fixed validation-modules for plugins/modules/packaging/os/pacman.py
* fixed validation-modules for plugins/modules/packaging/os/slackpkg.py
* fixed validation-modules for plugins/modules/packaging/os/urpmi.py
* fixed validation-modules for plugins/modules/packaging/os/xbps.py
* fixed validation-modules for plugins/modules/source_control/github/github_deploy_key.py
* fixed validation-modules for plugins/modules/system/puppet.py
* added changelog fragment
* adjustments from PR + fixes in changelog frag
* fixed deprecation of param "show_diff" in module "puppet"
* Update changelogs/fragments/1927-removed-parameter-invalid.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/system/puppet.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* removed unnecessary ignore lines, adjustment in changelog frag
* no need to explicitly call deprecate() when param marked for removal
* Update changelogs/fragments/1927-removed-parameter-invalid.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Adjustments in changelog fragment, per PR
* bumping deprecation to 7.0.0
Co-authored-by: Felix Fontein <felix@fontein.de>
* Jenkins build module
A module for queuing and deleting jenkins builds.
* CI fixes
* More CI fixes.
* Even more CI fixes
* Fixing symlink
* Update plugins/modules/web_infrastructure/jenkins_build.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* removed ansible meta section
* Added unit tests.
* fix tests
* more test fixes.
* Completed tests.
Mocked jenkins api calls.
Fixed some logging.
* Update plugins/modules/web_infrastructure/jenkins_build.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/web_infrastructure/jenkins_build.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/web_infrastructure/jenkins_build.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/web_infrastructure/jenkins_build.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Cleaned up default items
And removed supports check mode flag.
* setting name param required
* Update plugins/modules/web_infrastructure/jenkins_build.py
Co-authored-by: Brett Milford <brettmilford@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Add version_sort filter to properly sort list of versions
* Fix all comments from Felix
- add changelog fragment
- fix test by removing runme.sh/yml and renaming to filter_version_sort
- use fully qualified name of filter in test case
* Remove wrong plugin.test changelog fragment
Ups...
* Properly name the file version_sort.py
* Update changelogs/fragments/1916-add-version-sort-filter.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Eric L <ewl+git@lavar.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* bugfix: xfs_quota feedback on projects not initialized has changed
* changelog fragment
* Update changelogs/fragments/1596-xfs_quota-feedback_on_projects_not_initialized_has_changed.yml
Thanks for this, felixfontein
Co-authored-by: Felix Fontein <felix@fontein.de>
* xfs_quota is not necessarily in PATH
* pep8 and formatting
* Test was wrong. It needs to be changed
* formatting
* pep8 and formatting
* xfs_quota is not necessarily in PATH
* pep8 and formatting
Co-authored-by: Felix Fontein <felix@fontein.de>
* Change all packages at once in yum_versionlock module
* Re-enable tests
* Convert package list to packages string
* Fix module
* Change variable name to make it appropriate
* Fix module check_mode
* Revert "Fix module" and apply felixfontein suggestion
This reverts commit 5936da3198.
* Rename package to packages
* Only change packages which are needed
* Ignore if list is empty
* Add changelog
* fixed validation-modules for plugins/modules/source_control/git*
* Tidy up sanity checks ignore lines for source_control/* modules
* removed unnecessary ignore lines from 2.9 and 2.11
* proxmox_storage_info: new module
Simple info module dedicated to the retrieval of information about the
storages available on a Proxmox VE cluster.
* Update plugins/modules/cloud/misc/proxmox_storage_info.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/cloud/misc/proxmox_storage_info.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/cloud/misc/proxmox_storage_info.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/cloud/misc/proxmox_storage_info.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/cloud/misc/proxmox_storage_info.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed validation-modules for plugins/modules/database/misc/elasticsearch_plugin.py
* fixed validation-modules for plugins/modules/database/misc/kibana_plugin.py
* fixed validation-modules for plugins/modules/database/misc/riak.py
* fixed validation-modules for plugins/modules/database/vertica/vertica_info.py
* fixed validation-modules for plugins/modules/database/vertica/vertica_role.py
* fixed validation-modules for plugins/modules/database/vertica/vertica_schema.py
* fixed validation-modules for plugins/modules/database/vertica/vertica_user.py
* fixed validation-modules for plugins/modules/storage/ibm/ibm_sa_domain.py
* fixed validation-modules for plugins/modules/storage/ibm/ibm_sa_host_ports.py
* fixed validation-modules for plugins/modules/storage/ibm/ibm_sa_host.py
* fixed validation-modules for plugins/modules/storage/ibm/ibm_sa_pool.py
* fixed validation-modules for plugins/modules/storage/ibm/ibm_sa_vol.py
* fixed validation-modules for plugins/modules/storage/ibm/ibm_sa_vol_map.py
* fixed validation-modules for plugins/modules/storage/ibm/ibm_sa_host_ports.py
* fixed validation-modules for plugins/modules/system/runit.py
* fixed validation-modules for plugins/modules/source_control/bzr.py
* fixed validation-modules for plugins/modules/source_control/hg.py
* fixed validation-modules for plugins/modules/storage/emc/emc_vnx_sg_member.py
* fixed validation-modules for plugins/modules/identity/opendj/opendj_backendprop.py
* fixed validation-modules for plugins/modules/files/iso_extract.py
* fixed validation-modules for plugins/modules/monitoring/logstash_plugin.py
* fixed validation-modules for plugins/modules/database/aerospike/aerospike_migrations.py
* Tidy up a number of sanity checks for some modules
* added changelog fragment
* Some parameters in vertica_* had their aliases documented as the name, and sometimes vice-versa as well
* Adjustments per PR
* Rolled back sanity ignores for runit
* Update changelogs/fragments/1830-valmod_docmissingtype_batch1.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed validation-modules for plugins/callback/hipchat.py
* fixed validation-modules for plugins/connection/lxc.py
* fixed validation-modules for plugins/modules/cloud/lxc/lxc_container.py
* fixed validation-modules for plugins/modules/monitoring/statusio_maintenance.py
* fixed validation-modules for plugins/modules/system/alternatives.py
* fixed validation-modules for plugins/modules/system/beadm.py
* fixed validation-modules for plugins/modules/system/cronvar.py
* fixed validation-modules for plugins/modules/system/dconf.py
* fixed validation-modules for plugins/modules/system/interfaces_file.py
* fixed validation-modules for plugins/modules/system/java_cert.py
* fixed validation-modules for plugins/modules/system/lvg.py
* fixed validation-modules for plugins/modules/system/lvol.py
* fixed validation-modules for plugins/modules/system/parted.py
* fixed validation-modules for plugins/modules/system/timezone.py
* fixed validation-modules for plugins/modules/web_infrastructure/rundeck_acl_policy.py
* Tidy up all pylint:blacklisted-name sanity checks ignore lines
* Missed one in statusio_maintenace.py
* fixed validation-modules for plugins/modules/system/filesystem.py
* Missed one in gconftool2.py
* Missed one in alternatives.py
* Using dummies now
* fixed indentation
* Made all the changes about replacing _ with dummy
* Rollback bug fixed
* Rollback bug fixed, part II
* added changelog fragment
* Improved changelog frag message per PR
* fixed validation-modules for plugins/modules/storage/netapp/na_ontap_gather_facts.py
* fixed validation-modules for plugins/modules/source_control/gitlab/gitlab_runner.py
* fixed validation-modules for plugins/modules/packaging/os/redhat_subscription.py
* fixed validation-modules for plugins/modules/notification/twilio.py
* fixed validation-modules for plugins/modules/notification/slack.py
* fixed validation-modules for plugins/modules/notification/sendgrid.py
* fixed validation-modules for plugins/modules/notification/rocketchat.py
* fixed validation-modules for plugins/modules/notification/office_365_connector_card.py
* fixed validation-modules for plugins/modules/notification/nexmo.py
* fixed validation-modules for plugins/modules/notification/mail.py
* fixed validation-modules for plugins/modules/net_tools/omapi_host.py
* fixed validation-modules for plugins/modules/net_tools/nsupdate.py
* fixed validation-modules for plugins/modules/net_tools/dnsimple.py
* fixed validation-modules for plugins/modules/monitoring/pagerduty.py
* fixed validation-modules for plugins/modules/monitoring/librato_annotation.py
* fixed validation-modules for plugins/modules/identity/onepassword_info.py
* fixed validation-modules for plugins/modules/identity/keycloak/keycloak_client.py
* fixed validation-modules for plugins/modules/files/xml.py
* fixed validation-modules for plugins/modules/cloud/softlayer/sl_vm.py
* fixed validation-modules for plugins/modules/cloud/smartos/vmadm.py
* fixed validation-modules for plugins/modules/cloud/pubnub/pubnub_blocks.py
* fixed validation-modules for plugins/modules/cloud/packet/packet_device.py
* fixed validation-modules for plugins/modules/cloud/lxd/lxd_container.py
* fixed validation-modules for plugins/module_utils/oracle/oci_utils.py
* fixed validation-modules for plugins/doc_fragments/oracle_creatable_resource.py
* Tidy up validate-modules:parameter-list-no-elements for some modules
* fixed validation-modules for plugins/modules/monitoring/statusio_maintenance.py
* Fixed pending issues from CI validation
* Fixed xml module elements for add_children & set_children
* added changelog fragment
* typo
* fix wording in changelog frag
* fixed validation-modules for plugins/modules/storage/zfs/zfs.py
* fixed validation-modules for plugins/modules/storage/zfs/zfs_delegate_admin.py
* fixed validation-modules for plugins/modules/storage/zfs/zfs_facts.py
* fixed validation-modules for plugins/modules/storage/zfs/zpool_facts.py
* Tidy up validate-modules ignores for storage/zfs modules
* removed ignore lines in 2.11 files as well
* added changelog fragment per PR
* Update changelogs/fragments/1766-zfs-fixed-sanity.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_alert_policy.py
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_blueprint_package.py
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_firewall_policy.py
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_loadbalancer.py
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_modify_server.py
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_publicip.py
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_server_snapshot.py
* fixed validation-modules for plugins/modules/cloud/centurylink/clc_server.py
* Tidy up validate-modules ignores for cloud/centurylink modules
* added changelog fragment per PR
* Removed parameter-list-no-elements validation errors from redfish modules
* added changelog fragment per PR
* Update changelogs/fragments/1761-redfish-tidy-up-validation.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update targets for CI for devel branch; move some targets to stable-2.10.
* Skipping test on RHEL 8.3 (it is already skipped on RHEL 8.2).
* Linting.
* Shut 2.9/2.10 pylint complaints up.
* fixed validation-modules for plugins/modules/remote_management/ipmi/ipmi_boot.py
* fixed validation-modules for plugins/modules/remote_management/ipmi/ipmi_power.py
* Tidy up validate-modules ignores for remote_management/ipmi modules
* fixes various issues related to updating an ...
... existing gitlab user, in detail:
- fixes updating admin status not working
- fixes user passwords not updated
- fixes confirmation skipping param ignored for user updates
- added tests for code changes
* fixing sanity issues
* fixing sanity issues 02
* fixing sanity issues 03
* fixing sanity issues 04
* fixing unit test failures
* fixing unit test failures 02
* add changelog fragment
* fixing unit test failures 03
* forgot to add changelog fragment
* fix changelog sanity issues
* fix changelog sanity issues 02
* incorporate review suggestions
Co-authored-by: Mirko Wilhelmi <Mirko.Wilhelmi@sma.de>
* Limit cryptography to < 3.4 for Python < 3.6.
* Work around old pip versions.
* Use constraints file when installing stormssh.
* Work around old pip in RHEL8.2, CentOS 8, Ubuntu 18.04, and OpenSuSE 15
* feat(gitlab-deploy-key): automatically update ...
... the public key
* add integrity test
* fix sanity issues
* added changelog fragment
Co-authored-by: Mirko Wilhelmi <Mirko.Wilhelmi@sma.de>
* Fix 2 regex in parted related to parted version string and to parsing partition size output.
* Added changelog fragment.
* Updated changelog as per recommendation.
* Fix the regex matching the parted version. The space character at the end of the string may or may not be always present
* provided sample version output and corrected regex to match
* add/correct changelog fragment
* split parted_version function to allow creating a test unit
* test unit for parted version info
* ansible-test sanity fixes
* review fix
* Update changelogs/fragments/1695-parted-updatedregex.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* comment fixes
* better function name
* Update plugins/modules/system/parted.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* comment fixes
Co-authored-by: Claude Robitaille <claude@cbcr.me>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Use 'xfs_info' to query fs size, that doesn't always require the device be
mounted. Although still query mountpoint first for backward compatibility.
* Do not fail whith fstype=xfs and resizefs=yes if filesystem already fills
its underlying device.
* Include xfs in the tasks that test idempotency of resizefs option
* Add changelogs/fragments/1478-filesystem-fix-1457-resizefs-idempotency.yml
* Add Ubuntu 20.04 to CI.
* Skip mqtt test on Ubuntu 20.04.
* Use explicit disable instead of aliases.
* Add Ubuntu 20.04 specific config for setup_postgresql_db.
* Fix postgres version.
* added integration test for module django_manage
* Initial attempt at integration tests for django_manage
* added ignore lines for django python code
* added more ignore lines for django python code
* removed a couple of extraneous files and ignore lines
* also removed urls.py, as it is not required for testing
* added test group to aliases file
* Adding a few lines attempting to remove py2 from the equation.
* restricted integration tests platforms
* restricted integration tests platforms (moving to aliases)
* foce using a virtualenv for the test, to avoid differences in different OSes
* Adding urls.py back to the test project
* Adding ignore lines for urls.py
* Updated aliases for the testing
* add environment scope on gitlab project variables
* fix sanity code
* apply again test
* environment_scope not defined by default. compatible with old versions of lib.
* environment_scope must be optional
* add changelog
* Update changelogs/fragments/1197_gitlab_project_variable.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add tags filter to linode inventory plugin
* add tags to return tuple on line 66 in test_linode.py
* Add period in changelog fragment.
use if any() rather than for ... if list completion
* Clarify the description of the ``tags`` option
* Updated description to remove syntax error of line break.
* New sysrc module for managing rc files on FreeBSD
* Updated sysrc module, docs and tests per reviews
* Refactored the check_mode to be in the methods and not main
Also updated tests
* Fixed a duplicate "name" key in the sysrc test
* Remove debugging output
* Add changelog fragment
* Remove changelog fragment
* Make sure tests actually run in CI.
* Update failing test due to bad path to jail
* Create and remove testjail for tests
* Fix and cleanup tests
* Set the correct path to the testjail
Co-authored-by: Felix Fontein <felix@fontein.de>
* Improvements in module_helper
- added `ModuleHelperException` to handle problems specific to ModuleHelper
- updated `module_fails_on_exception` for `ModuleHelperException`
- `StateMixin`: composed names of state methods are now calculated instead of fixed.
- `CmdMixin`: added `run_command_fixed_options` to pass some parameters on every call
* Improvements in module_helper
- Named deprecations: ability to declare a `dict` of deprecations indexed by names, allowing module maintainer to trigger them by those names, and also allowing the module user to acknowledge them in a similar way.
- Adding `ack_named_deprecations` to module's `argument_spec` when they exist.
- Providing doc fragment for `ack_named_deprecations`.
- Added method `__quit_module__` providing a hook for code that needs to be run when quitting the module.
- Created convenience classes combining `ModuleHelper`, `StateMixin`, `CmdMixin`.
* fixed validation
* fixed validation
* changelog fragment
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Improvement on Named Deprecations
Per the comments in PR, we want to expose a call to a ``deprecate`` method on the module code, so that pylint can properly perform its static analysis on deprecations.
This prompted a revamp of the named deprecation feature.
* Use .get() instead of [] for the param to ack named deprecations.
* Changes from suggestions in the PR
* removed named deprecations
* Update changelogs/fragments/1480-module-helper-improvements.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/module_utils/module_helper.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Provide a user friendly message by handling json decode
exception rather than providing a stacktrace
Fixes: #1614
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* Add ipa_pwpolicy module
Used for modifying FreeIPA password policies
Functions similarly to the existing IPA modules
* Add sample return value to ipa_pwpolicy module
* Add unit tests for the ipa_pwpolicy module
Also moves the `exit_json` call in the main module outside of the try
clause because it was stopping the tests from working
* Update version added for the ipa_pwpolicy module
* Add check_mode note for the ipa_pwpolicy module
* Add missing period in ipa_pwpolicy module doc
* Fix tense of the ipa_pwpolicy module description
* Reword ipa_pwpolicy documentation
Improve the wording of the ipa_pwpolicy documentation to make it more
clear
* Rename ipa_pwpolicy options to use shorter names
* Remove kubevirt and set up redirects to community.kubevirt
This also removes the dependency on community.kubernetes which fixes
https://github.com/ansible-collections/community.general/issues/354.
* Update changelogs/fragments/1317-kubevirt-migration-removal.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/1317-kubevirt-migration-removal.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add missed redirects
Co-authored-by: Felix Fontein <felix@fontein.de>
* add support for all monit service types
* ignore case when performing check
* add changelog
* Escape special characters before matching
Co-authored-by: Felix Fontein <felix@fontein.de>
* escape each element individually
Co-authored-by: Felix Fontein <felix@fontein.de>
* Remove Google cloud plugins migrated to community.google
* Remove another symlink
* Fix typo for community.general version
* Update changelogs/fragments/1319-google-migration-removal.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/1319-google-migration-removal.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add fragment for inventory script
* fix yaml formatting
* adjust past relnotes in accordance with removal of google plugins
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fixed case of empty section + parameter validation
* Adjusted code for integration test, and added test case for empty section
* Update changelogs/fragments/479-ini_file-empty-section.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/479-ini_file-empty-section.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Using "is changed" in integration tests, per PR review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Do not remove non-ASCII Unicode from multi-line string output.
* Added basic tests.
* Add Unicode test.
* Simplify tests, avoid later Jinja features.
* Refactor.
* Make use diy tests use callback test framework as well.
* Remove color codes.
* Work around stable-2.9 bug.
* Simplify again.
* Fresh branch to try this again
* Fix typo
* Fix sanity error
* Redid some tests, not sure if this works...
* Re-fixed documentation
* Fixed linter
* Update layout
* Processed feedback
* Processed feedback
* Added check_mode
* Run test with check mode
* Fix layout
* Fix more layout
* Fixed last sanity errors (for now)
* Check mode is not a module arg..
* Fix sanity-error
* Reworked check_mode and adapted tests
* Added extra test to also run through remove logic, added message for check_mode to show output is different, grabbed magicmock from different library to fix py2 errors
* Remove unused function
* Processed feedback
* Processed feedback
* Processed feedback
* Fix 2.9/2.10 cloud
* Fix splunk callback tests.
* ansible_virtualization_type on AZP can be one of container/containerd instead of docker for dockerized tests.
* Disable nomad tests.
* Work around AZP bugs.