##### SUMMARY
<!--- Describe the change below, including rationale and design decisions --> To enable greater use of the inventory, add the ID of the VM, and the hostname of the host the VM is running on to the inventory output
<!--- HINT: Include "Fixes #nnn" if you are fixing an existing issue -->
<!--- Please do not forget to include a changelog fragment:
https://docs.ansible.com/ansible/devel/community/collection_development_process.html#creating-changelog-fragments
No need to include one for docs-only or test-only PR, and for new plugin/module PRs.
Read about more details in CONTRIBUTING.md.
-->
##### ISSUE TYPE
<!--- Pick one or more below and delete the rest.
'Test Pull Request' is for PRs that add/extend tests without code changes. -->
- Feature Pull Request
##### COMPONENT NAME
<!--- Write the SHORT NAME of the module, plugin, task or feature below. --> opennebula.py
##### ADDITIONAL INFORMATION
<!--- Include additional information to help people understand the change here --> <!--- A step-by-step reproduction of the problem is helpful if there is no related issue -->
<!--- Paste verbatim command output below, e.g. before and after your change -->
```paste below
"host": "foo23.host",
"id": 1234,
```
* Fixes installed version for git/local.
* Support latest determination with local source.
* Adds docs.
* Improves error message.
* Setup for tests.
* Updates copyright.
* Align closer to #7895.
* Adds changelog.
* Check directory exists.
* Stop using format strings.
* Corrects directory arg type in docs.
* Setup test repo dynamically.
* Adds tests.
* Adds version matching tests.
* Update changelog fragment to match PR ID.
* Updates copyright.
* Import new directory tests.
* proxmox_kvm: document that force requires archive
As per `qm(1)`, the force option requires `archive`. Add this
information in the `proxmox_kvm` module so one will know they have to
define `archive` when using `force`.
* fix: parameter is an option O(archive)
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix OpenNebula inventory crash when NIC does not have IP
Match IPv6 behaviour.
When a NIC does not have an IP:
File "ansible/inventory/manager.py", line 292, in parse_source
plugin.parse(self._inventory, self._loader, source, cache=cache)
File "ansible-cm/plugins/inventory/opennebula.py", line 263, in parse
self._populate()
File "ansible-cm/plugins/inventory/opennebula.py", line 226, in _populate
servers = self._retrieve_servers(filter_by_label)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "ansible-cm/plugins/inventory/opennebula.py", line 210, in _retrieve_servers
server['v4_first_ip'] = self._get_vm_ipv4(vm)
^^^^^^^^^^^^^^^^^^^^^
File "ansible-cm/plugins/inventory/opennebula.py", line 154, in _get_vm_ipv4
return net['IP']
* Update to call to match IPv6 and add changelog fragment
* Update changelog fragment.
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* Implement agent service and check (#7987)
* implement update of service and check
* update tests
update documentation
* update documentation
* add consul_agent_check/service to action_groups
check if unique_identifier of name is in params to get object
add suggested improvements
* update sanity
* fix sanity issues
update documentation
* fix naming
* fix naming
check if response_data has data
* fix sanity extra-docs
* add as ignore maintainer in BOTMETA.yml
update version_added to 8.4
* fix sanity
* add to maintainers
* Update plugins/modules/consul_agent_check.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/consul_agent_check.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/consul_agent_check.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* update version_added
* if create and update return no object as result we read the object again
* get_first_appearing_identifier check the params for the given identifier and return it to simplify id vs name
* add unique_identifiers as a new property and a method to decide which identifier should be used
* fix sanity
* add self to team consul
remove params with no values
add operational_attributes that inherited classes can set them
get identifier value from object
* fix sanity
fix test
* remove the possibility to add checks with consul_agent_check.
check if service has changed
* remove tests for idempotency check because for checks it is not possible
* remove unique_identifier from consul.py
change unique_identifier to unique_identifiers
* get id from params
* Revert "remove unique_identifier from consul.py"
This reverts commit a4f0d0220dd23e95871914b152c25ff352097a2c.
* update version to 8.5
* Revert "Revert "remove unique_identifier from consul.py""
This reverts commit d2c35cf04c8aaf5f0175d772f862a796e22e35d4.
* update description
update test
* fix sanity tests
* fix sanity tests
* update documentation for agent_check
* fix line length
* add documentation
* fix sanity
* simplified check for Tcp
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* check duration with regex
* fix
* update documentation
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* Add filter replace_keys.
* Update examples and integration tests.
* Fix examples and copyright.
* Update documentation, examples and integration tests.
* Implement #8445. Add filter replace_keys
* Fix documentation formatting.
* Fix documentation.
* Fix type(target). Formatting improved.
* Instead of a dictionary, _keys_filter_target_dict returns a list
* No target testing in _keys_filter_params
* Interface changed _keys_filter_params(data, matching_parameter)
* If there are items with equal C(before) the B(first) one will be used.
* Update remove_keys. Interface changed _keys_filter_params(data, matching_parameter)
* The target can't be empty also in _keys_filter_target_dict
* Update plugins/filter/replace_keys.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/filter/replace_keys.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/filter/replace_keys.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Test attributes before and after are strings in the iteration of target.
* Update plugins/filter/replace_keys.py
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* feat(redis_info): add option to fetch cluster info
* add changelog fragment
* update description
Co-authored-by: Felix Fontein <felix@fontein.de>
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* django_check: new module
* sanity fix
* working version
* remove unused import
* add note about the module output
* add note on module failing when rc!=0
* Add support for SSHFP records to ipa_dnsrecord module
* Create 8404-ipa_dnsrecord_sshfp.yml
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix a typo in the example for ipa_dnsrecord with type SSHFP
* Update plugins/modules/ipa_dnsrecord.py
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix(opentelemetry): remove request from the logs
* add changelog
* filter by task
* add new bugfix
* rename
* support legacy and shortcat ansible tasks
* Update plugins/callback/opentelemetry.py
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* Redfish: Add options to check the availability of the service
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
* Updates based on review feedback
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
* Updated comment to reflect changed behavior
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
* Added changelog fragments
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
* Update changelogs/fragments/8051-Redfish-Wait-For-Service.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add partial diff support, not in check mode
* Add changelog fragment
* Fix PEP8. Want to run Black against this so badly.
* Update changelogs/fragments/8402-add-diif-mode-openbsd-pkg.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/openbsd_pkg.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/openbsd_pkg.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Remove unneeded comment
---------
Co-authored-by: Allen Smith <allsmith@allsmith.users.ipa.redhat.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix(keycloak_client): avoid TypeError if attributes is a list
As sanitize_cr might be executed after normalise_cr, result['attributes'] can be of type list and we
run into:
TypeError: list indices must be integers or slices, not str
* Update changelog fragment.
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
Instead of checking if there is an error message, which can also be a
warning, we now check the return code.
This commit fixes#8229#7044
Co-authored-by: Strahinja Kustudic <strahinjak@nordeus.com>
* use new vardict in module
* add changelog frag
* Update changelogs/fragments/8411-locale-gen-vardict.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* set use_old_vardict to false in snap
* set use_old_vardict to false in cpanm
* set use_old_vardict to false in django mod helper
* set use_old_vardict to false in gconftool2_info
* set use_old_vardict to false in kernel_blacklist
* set use_old_vardict to false in mksysb
* set use_old_vardict to false in pipx_info
* set use_old_vardict to false in snap_alias
* update chglog frag
* fix typo
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* docs: add seealso and notes for yaml callback plugin
* docs: correct links to parameters
Co-authored-by: Felix Fontein <felix@fontein.de>
* docs: shorten the long lines
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* added usb support to proxmox module
* forgot docs
* fixed net refrances
* changed usb to USB
* added changelog fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
* added changelog fragment
* corrected spelling and punctuation
Co-authored-by: Felix Fontein <felix@fontein.de>
* Another one.
---------
Co-authored-by: ripplefcl <ripple@ripplefcl.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add toggle for verbose logging
Updated params with 'verbose' mode (defaults to False, which is existing behavior) to allow users to toggle verbose to True, which disables the '-q' flag that was hardcoded in the original module
* Create 8379-verbose-mode-pkg5.yml
* update pkg5.py to conform to PEP8 length requirements
The new verbosity argument on line 172 broke the 160 character length PEP8 requirement - split the line in two to conform to PEP8
* Add PR link to changelog fragement yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add version_added and make the description of the verbose param clearer
* Update pkg5.py verbose description to conform to ansible documentation for semantic markup
Co-authored-by: Felix Fontein <felix@fontein.de>
---------
Co-authored-by: Felix Fontein <felix@fontein.de>
* lint and fix polkit examples
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
* add changelog fragment
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
* remove changelog fragment
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
---------
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
* opentelemetry: support flag to create output file
this is only to help with adding unit tests
* refactor and rename
* changelog
* rename
* fix linting