Commit Graph

1317 Commits (cb2cd00cd17492207aad2280b40455fe0aa5a034)

Author SHA1 Message Date
Felix Fontein 2adcc34dd5
CI: Arch Linux updated to Python 3.13 (#9310)
* Arch Linux updated to Python 3.13.

* Skip lmdb_kv lookup on Arch Linux.

Ref: https://github.com/jnwatson/py-lmdb/issues/362
2024-12-22 21:53:25 +01:00
Felix Fontein d2088ccfcc
Polish botmeta extra sanity test and make it work without warnings on Python 3.13 (#9297)
Polish botmeta and make it work without warnings on Python 3.13.
2024-12-21 16:49:23 +01:00
Stanislav Shamilov 2b2872f0ef
Add android sdk module (#9236)
* adds simple implementation of adding and removing android sdk packages

* adds package update

* adds simple installed packages parsing

* moves parsing logic to a separate class

* adds absent state for sdkmanager packages and setup for tests

* adds output for installing and removing packages

* removes version from Package object since it is not possible to specify version for a package while using sdkmanager

* adds 'latest' state

* adds tests

* fixes crash when sdkmanager is invoked from python with LC_ALL=C

* fixes latest state

* adds sdk_root parameter

* adds channel parameter

* simplifies regexps, removes unused named groups

* minor refactoring of sdkmanager parsing

* adds java dependency variable for different distributions

* adds RETURN documentation

* adds check for nonexisting package

* adds check for non-accepted licenses

* removes excessive methods from sdkmanager

* removes unused 'update' module parameter, packages may be updated using 'latest' state

* minor refactoring

* adds EXAMPLES doc section

* adds DOCUMENTATION section and license headers

* fixes formatting issues

* removes diff_params

* adds maintainer

* fixes sanity check issues in sdkmanager

* adds java dependency for macos and moves some tests to a separate FreeBSD configuration

* fixes dependencies setup for OSX

* fixes dependencies setup for OSX (2)

* fixes dependencies setup for OSX (3)

* Apply minor suggestions from code review

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* applies code review suggestions

* changes force_lang from C.UTF-8 to auto in sdkmanager (as per discussion https://github.com/ansible-collections/community.general/pull/9236#discussion_r1881114326)

* Revert "changes force_lang from C.UTF-8 to auto in sdkmanager (as per discussion https://github.com/ansible-collections/community.general/pull/9236#discussion_r1881114326)"

This reverts commit 619f28dd58.

* fixes some more comments from review

* minor sanity issue fix

* uses the 'changed' test instead of checking the 'changed' attribute

* adds 'accept_licenses' parameter. Installation is now performed independently for each package specified.

* removes "Accept licenses" task from examples

* fixes docs sanity issues

* applies minor suggestions from code review

* fixes regexps. The previous version didn't match versions like "32.1.0 rc1". Also, this allows to simplify the parsing logic as there is no need to skip table headers anymore.

* renamed sdkmanager.py to android_sdkmanager.py

* applies minor suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>

* updates BOTMETA

* reordered BOTMETA

---------

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
2024-12-20 22:55:12 +01:00
Thibaut Decombe 9452a2c8ac
homebrew: fix incorrect handling of aliases (#9255)
* Add failing test (See commit description)

Second assert returns this:

changed: [localhost] => changed=true
  changed_pkgs:
  - sqlite3
  msg: 'Changed: 1, Unchanged: 1'
  unchanged_pkgs:
  - sqlite

* Extract proper package_name from brew info using alisases

* Add changelog fragment

* Fix pep8

* Make sure sqlite is uninstalled beforehand

* Use `package_result is (not) changed` syntax in assertions

* Register more explicit names

* Fix handling of casks
2024-12-20 22:53:41 +01:00
Felix Fontein 50b25f8c01
random_words integration tests: avoid test failure due to valid result (#9271)
Avoid test failure due to valid result.
2024-12-17 21:20:19 +01:00
Alexei Znamensky 88ea025d12
test helper improvements (#9242) 2024-12-14 12:06:41 +13:00
Felix Fontein 9df4ef9a9c
sysrc: add another exclusion for ezjail (#9243)
Add another exclusion.
2024-12-13 21:09:58 +00:00
Max Gautier a789bd128f
Add the accumulate filter (#9133)
* Add the accumulate filter

- Add myself as a maintainer for it.
- Some integration tests.

* accumulate: fix documentation and add test aliases

The aliases file was copied over from
tests/integrations/targets/filter_dict/aliases as the documentation[1]
suggests to use the same group as existing similar tests.

[1]: https://docs.ansible.com/ansible/latest/dev_guide/testing/sanity/integration-aliases.html

Suggested-by: Felix Fontein <felix@fontein.de>

* accumulate: documentation: markup consistency with other plugins

Suggested-by: Felix Fontein <felix@fontein.de>
Suggested-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* filter/accumulate: Validate input is a Sequence

Accepting arbitrary iterables might lead to surprising behavior so we
are stricter on what we accept in the filter.
Relaxing those requirements is easier than retrofitting them, in terms
of backwards compatibility.

Suggested-by: Felix Fontein <felix@fontein.de>
Signed-off-by: Max Gautier <mg@max.gautier.name>

* filter/accumulate: Document the behavior with a string

Signed-off-by: Max Gautier <mg@max.gautier.name>

---------

Signed-off-by: Max Gautier <mg@max.gautier.name>
2024-12-02 20:20:13 +01:00
ONODERA Masaru 34010a788a
Add dynamicforward option (#9192)
* Add dynamicforward option

* Add fragment

* Modify fragment
2024-12-02 20:18:56 +01:00
Ian Bishop 82462e407e
Add SR-IOV support to nmcli module (#9168)
* Add SR-IOV support to nmcli module (#9168)

* Add SR-IOV support to nmcli module (#9168)

Fixes

* Add SR-IOV support to nmcli module (#9168)

Add test

* Update changelogs/fragments/9168-nmcli-add-sriov-parameter.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/nmcli.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/nmcli.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/nmcli.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Populate sriov options

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-12-02 20:18:28 +01:00
Thibaut Decombe fddccea940
Greatly speed up homebrew module when multiple packages are passed in the `name` key (#9181)
* Increase test coverage and assert output more strictly

* Remove unused `_current_package_is_installed_from_head`

* Remove `un/changed_count` and infer from un/changed_pkgs length

* Track `installed` & `outdated` package state once

* Validate package names beforehand

* Install packages in 1 brew call instead of N

This also has the side effect of fixing the check message so that it prints every packages that will be installed instead of only the first one.

* Uninstall packages in 1 brew call instead of N

* Link packages in 1 brew call instead of N

* Unlink packages in 1 brew call instead of N

* Upgrade packages in 1 brew call instead of N

* Remove dangling checks

* Remove `_status` method and directly return the tuple

* Add changelog fragment

* Fix invalid format string (nice catch pylint!)

* Update changelogs/fragments/9181-improve-homebrew-module-performance.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update brew info parsing for casks

* Update changelogs/fragments/9181-improve-homebrew-module-performance.yml

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
2024-12-02 20:17:04 +01:00
Stanislav Shamilov 41b6a281e1
Add decompress module (#9175)
* adds simple implementation of `decompress` module

* adds simple test, fixes src and dest arg types

* minor refactoring

* adds support for common file operations
adds integration test for gz decompressing

* makes tests parametrized to test all supported compression formats

* checks that target file exists

* writes to decompressed file now uses atomic_move

* adds idempotency for decompression

* refactoring, removed classes

* adds support for check mode

* adds check for destination file. If it exists and it is a directory, the module returns error

* refactoring, moves code to a class. Also, simplifies tests (now only tests related to the module core functionality run as parametrized, tests for idempotency and check mode run only for one format)

* adds 'remove' parameter that deletes original compressed file after decompression

* adds documentation

* fixes bug with 'remove' parameter in check mode

* makes dest argument not required. Dest filename now can be produced from the src filename

* adds dest to output

* updates the documentation, adds "RETURN" block

* fixes test

* adds support for python2

* removes some of the test files that can be generated during testing. Adds copyright header to test files

* adds maintainer

* apply minor suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>

* fixes code review comments (idempotency issue with non existing src, existing dest and remove=true; fixes the issue and adds test)

* refactors the module to use ModuleHelper

* refactors lzma dependency manual check to use 'deps.validate'

* minor fix

* removes registered handlers check

* minor refactoring

* adds aliases

* changes setup for tests

* tests: ignores macos and fixes tests for FreeBSD

* tests: reverts ignore for macos and fixes issue with centos7

* tests: adds liblzma dependency for python2

* tests: adds backports.lzma

* fixes bz2 decompression for python2

* tests: install xz for osx

* tests: install xz for osx (2)

* fixes code review comments

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-12-02 20:16:00 +01:00
IamLunchbox c38b474982
Add backup module for proxmox (#9197)
* Defined configuration variables, main backup function todo

* Defined configuration variables, main backup function todo

* wip

* permission checks and basic flow done, final request missing

* ansible-test and unit test open

* Improve documentation

* fix pep8 errors

* remove f-string and fix bugs through manual testing

* longer full example

* improve docs

* error message for fail + timeout

* move sleep location

* remove residual debugger

* include newline for better readability

* more linting errors fixed

* Include UPIDs as return value

* Output logs as comma separated value, move exception and create new abstraction for api calls

* pretter logs

* Update project to final version

* Remove accidential placeholder for integration test

* Fix missing explizit string in docstring

* Reorder imports below docstrings

* remove type annotations and fix indendation of options dict

* prettier idendation and aplhabetic ordering of options dict

* aplhabetic ordering of docstring options

* Remove the rest of type hinting as well :(

* fix version

* improve documentation

* add change detection mode

* refactor list comprehension to filter function

* remove storage availability check for node

* refactor to quotation marks

* Fix trailing newline and incorrect RV usage

* rollback filter plugin

* Remove action_group reference and add proxmox_backup to meta/runtime.yml

* Include note about missing idempotency

---------

Co-authored-by: IamLunchbox <r.grieger@hotmail.com>
2024-12-02 20:06:08 +01:00
Alexei Znamensky a9449ccc2e
pipx/pipx_info: add return value version (#9180)
* pipx/pipx_info: add return value version

* add changelog frag
2024-11-24 22:10:19 +01:00
Alexei Znamensky a3bd49c010
deps module utils: unit tests + minor improvement (#9179)
* deps module utils: unit tests + minor improvement

* deps.clear() calls dict.clear() instead of creating new dict

* add changelog frag
2024-11-24 22:09:53 +01:00
Alexei Znamensky 152339a8f9
gio_mime: fix bug when looking for version (#9171)
* gio_mime: fix bug when looking for version

* add changelog frag
2024-11-23 15:03:56 +01:00
Alexei Znamensky 47637cdec7
locale_gen: add testcase for de_CH.utf8 (#9176) 2024-11-23 10:47:22 +13:00
Alexei Znamensky bf6ae7bf59
pipx: add testcase for upgrade --global (#9170) 2024-11-22 18:36:16 +13:00
Andrew Hyatt 36c7e56005
dnf_config_manager: use --assumeyes when changing state (#9124)
* dnf_config_manager: use --assumeyesm when changing state

* changelog fragment

* update tests

* format fix

* Update changelogs/fragments/9124-dnf_config_manager.yml

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

---------

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
2024-11-17 15:27:53 +01:00
Stanislav Shamilov 523439ab62
alternatives: add support for "family" parameter (#9096)
* alternatives: added parsing and setting of 'family' for an alternative

* alternatives: added checks for path nullability

* alternatives: added idempotence when setting alternative using family

* alternatives: added family to diff mode

* alternatives: added tests for family

* alternatives: updated documentation and examples

* alternatives: added constraints for 'path' and 'family' parameters.

in any invariants at least one of the parameters must be specified

* alternatives: added changelog fragment

* removed unnecessary check

* added version

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-11-16 18:34:09 +01:00
Felix Fontein 04c2ad18da
Add FreeBSD 13.4 to CI (#9109)
* Add FreeBSD 13.4 to CI.

* iso_extract won't work.

* pkgng: jail won't work either.
2024-11-08 23:05:35 +01:00
Connor Newton 3d03c373ff
jenkins_node: Add set offline message (#9084)
* jenkins_node: Add set offline message

* Implement offline_message parameter for updating a Jenkins node
  offline cause reason when the state is "disabled" (offline).

* Fix enabled, disable and absent node state redirect authorization
  issues, same as was present for present.

* Add unit tests for redirect authorization workarounds.

* * Make docs clearer re: offline_message behaviour

* Exit with fail_json() instead of raising when
  create/delete/enable/disable node fail.

* * Add changelog fragment

* Update changelog fragments.

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-11-03 11:31:32 +01:00
Alexei Znamensky 2429e228a4
pipx/pipx_info: multiple fixes (#9044)
* pipx_info: factored process_list out

* pipx_info: no need to pass param to _list

* pipx_info: minor adjustment

* pipx mod utils: make_process_list parameters

* fix test for state=install_all

* fix assertions

* pipx tests: fix detection of pipx 1.7.0

* pipx: use make_process_output

* add testcase

* pipx: remove import json

* pinned in pipx list is not always there

* Update plugins/modules/pipx_info.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* remove ensurepath and --user from pipx install

* add changelog frag

* Update changelogs/fragments/9044-pipx-fixes.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/9044-pipx-fixes.yml

* Update changelogs/fragments/9044-pipx-fixes.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/9044-pipx-fixes.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-11-02 17:50:24 +01:00
Alexei Znamensky c8410a924e
opkg: add return value version (#9086)
* opkg: add return value version

* add changelog frag
2024-11-02 17:49:54 +01:00
Alexei Znamensky 8a2ac4f1eb
cpanm: add return value cpanm_version (#9061)
* add return value version

* add changelog frag

* fix indentation

* fix RV name and tests

* Update plugins/modules/cpanm.py

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-11-02 17:49:41 +01:00
Alexei Znamensky e63c2f54cf
gio_mime: add return value version (#9067)
* add return value version

* add changelog frag
2024-10-29 20:27:43 +01:00
Alexei Znamensky ce1b9887b1
gconftool2/gconftool2_info: add return value version (#9064)
* add return value version

* add changelog frag
2024-10-27 09:36:52 +01:00
Alexei Znamensky 107df41d9c
django_command/django_check/django_createcachetable: add return value version (#9063)
* add return value version

* add changelog frag

* reformat yaml
2024-10-27 09:36:38 +01:00
lewismiddleton 5b3b7a1fb1
github_app_access_token: add support for private key fact (#8989)
* github_app_access_token: add support for private key fact

Adds support for specifying the GitHub App private key via an ansible
fact instead of a path to a file.

This is useful when you want to generate registration tokens for a
remote host but don't want to put secrets on the host.

* Add license file

* Fix pep8 formatting

* Add changelog fragment

* Run sanity tests on changelog

* Apply suggestions from code review

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Felix Fontein <felix@fontein.de>

* Add input validation check

* Add import

* Apply suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>

* Add error for mutually exclusive options

* Update plugins/lookup/github_app_access_token.py

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
2024-10-21 20:53:18 +02:00
Björn Bösel 9fb686fe35
add plugin for generic keycloak component (#8826)
* add plugin for generic keycloak component

* add changelog fragment

* fix import in test

* Update plugins/modules/keycloak_component.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/keycloak_component.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/keycloak_component.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/keycloak_component.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* set correct supported diff_mode

* fix line lenght

* Update docblock

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/8826-keycloak-component.yml

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* Update plugins/modules/keycloak_component.py

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* Update plugins/modules/keycloak_component.py

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* update docblocks

* add entry to BOTMETA.yml

* update copyright

* Set Version number

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* remove changelog fragment

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
2024-10-21 20:52:28 +02:00
Felix Fontein b1f4604067
Skip timezone test on RHEL 7.9 VMs (#9035)
Skip timezone test on RHEL 7.9 VMs.
2024-10-19 14:05:48 +02:00
Connor Newton 064f76c27b
New module: Jenkins node management (#9016)
* New module: Jenkins node management

* Fix sanity errors

* (Try to) fix mock import for Python 2.7

* Remove encoding from XML tostring in hopes of appeasing py27

Default encoding is probably always good enough.

* Turns out that encoding parameter was important for python3...

It's not super obvious how to resolve in a 2 + 3 compatible way,
so branch and omit encoding for 2.

* Implement review fixes and suggestions
2024-10-19 12:51:50 +02:00
Zac 1180843e35
bitwarden_secrets_manager lookup plugin: support more current versions of BWS CLI (#9028)
* add support for getting secrets in the current version of bitwarden secrets manager

* format

* format2

* fragment

* fix formatting errors

* strip out junk before the version in cli output

* mock the --version command in the unit tests

* use LooseVersion comparison - russoz suggestion

* add blank line
2024-10-19 12:49:47 +02:00
TobiasZeuch181 410288401b
Add zypper_repository_info module (#8778)
* Adding the list-option for reading the registered repodata

* adding a parameter list
* if the parameter is set, return the output (as a dictionary)
* adjusting the documentation for the new parameter

* Adding changelot-fragment

and link to the issue in the issue-tracker https://github.com/ansible-collections/community.general/issues/8777

* Adding description and example for the new list parameter

* Adding type for new parameter list to argument_spec

* Revert "Adding type for new parameter list to argument_spec"

This reverts commit 6b86e8ba447a9b53e434c79d33c7fe260485b342.

* Revert "Adding description and example for the new list parameter"

This reverts commit db06dafb958f6aeffa38adeee85623904b26bbb1.

* Adding a new module for reading the list of regiestered repositories

I created a new module for reading the repositories based on a sub-procedure from the existing zypper_repository

* Removing the changes to module zypper_repository

because the list-option is not supposed to go into this module

* removing the last change from the zypper_repository module

* Fixing linter errors

Adding extra lines before definitions
adding the missing dash in the documentation
removing the unused imports

* Adding maintainer under BOTMETA, adding test and fixing suggestions

I added the maintainer to BOTMETA
I applied the suggestions on the code form the review
I added a test for the new module to the existing zypper_repository-tests

* Adding maintainer under BOTMETA, adding test and fixing suggestions

I added the maintainer to BOTMETA
I applied the suggestions on the code form the review
I added a test for the new module to the existing zypper_repository-tests

* Deleting the fragment because this will be created automatically

I deleted the fragment because this will be created automatically based on the short_description and version_added

* removing foreign commits from history that accidentily sneaked in with the last rebase

* Update plugins/modules/zypper_repository_info.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update .github/BOTMETA.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/zypper_repository_info.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/zypper_repository_info.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/zypper_repository_info.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/zypper_repository_info.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* removing irrelevant return fields from the sample

* Quoting the line with the colon

* fixing syntax errors in sam

* removing duplicate Note section

* Removing newline on sample-code

* Update version_added to 9.5.0

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* Update description (notespelling)

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update .github/BOTMETA.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update descriptino (notespelling URL)

Co-authored-by: Felix Fontein <felix@fontein.de>

* use module_utils.deps to include the parseString/parseXML module

* clean up module and botmeta

cleanup:
* remove duplicate entry from botmeta
* move imports below DOCUMENTATION
* remove unused imports
* add required key 'returned'

* moving import and fixing syntax

In this documentation example the return type is dict instead of dictionary: https://docs.ansible.com/ansible/latest/dev_guide/developing_modules_documenting.html#return-block
Also the from __future__ import should be at the beginning of the file, according to lint

* Enabling check-mode

because the module doesn't change anything anyways

* indicate empty dictionary

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* Update version_added

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
2024-10-12 10:05:34 +02:00
alexander 3de4682193
krb_ticket: Create module (#8953)
* Add kutils module

* PR Fixes

* PR Fixes 2

* PR Fixes

* Fix executables

* Fix comment

* Fix functions

* PR Fix

* PR Fix 2

* Fix list name

* Fix list name 2

* Rever check_for_none func

* Rever check_for_none func 2

* Update tests

* Update tests 2

* Fix principal

* Fix cmdrunner args

* Fix multiline

* Fix backslash

* Fix tests

* Fix elif

* Fix bool arg

* Update doc

* Fix doc

* Add man reference

* Fix doc YAML-quoting

* PR Fixes

* Fix indent

* Fix version_added and name

* Fix units name

* Fix module name
2024-10-10 22:03:30 +02:00
Felix Fontein ec6496024f
Prepare 10.0.0 release (#8921)
* Bump version to 10.0.0, remove deprecated modules and plugins.

* Remove redhat module utils.

* Drop support for ansible-core 2.13 and ansible-core 2.14.
2024-10-07 23:37:44 +02:00
Tom Paine 24b74cc4b9
opennebula inventory: add VM ID and VM host to data (#8532)
* Add VM id and VM host to opennebula inventory data

##### 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,
```

* Create 8532-expand-opennuebula-inventory-data.yml

* Update opennebula.py

* Update changelogs/fragments/8532-expand-opennuebula-inventory-data.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Add check for empty records and add test

* fix attribute test

* fix attribute test

* fix attribute test

* fix attribute test

* Update plugins/inventory/opennebula.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* update as per guidance

* restore attribute checks

* fix attr

* fix indent

* PR Fixes

* add attribute check in case of empty variable

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Александр Бакановский <abakanovskii@astralinux.ru>
2024-10-07 22:16:29 +02:00
fgruenbauer c814fd0530
keycloak_userprofile: improve diff by deserializing fetched `kc.user.profile.config` and serializing it before sending (#8940)
* deserialize fetched `kc.user.profile.config` and serialize it before sending

* change `kc.user.profile.config` to JSON formatted string in mock `get_component` responses

* add changelog fragment
2024-10-07 22:15:45 +02:00
alexander 1d86d49688
ipa_getkeytab: Create module (#8938)
* Add ipa_getkeytab

* Parameters fix

* PR fixes

* PR fixes 2

* Fix unit tests

* Fix doc and unit tests

* Fix doc

* Fix doc 2

* Fix doc 3

* PR fixes

* PR fixes 2

* Fix name

* Fix description typo

* Fix variable names

* Update tests

* Add man reference
2024-10-07 22:12:06 +02:00
Felix Fontein 29a2df8e6b
udm_user, homectl: use legacycrypt on Python 3.13+ (#8987)
Use legacycrypt on Python 3.13+.
2024-10-07 21:56:37 +02:00
alexander fea0ffa5aa
one_image/one_image_info: refactor (#8889)
* Refactor one_image

* Refactor one_image_info

* Add examples one_image

* Add CHANGELOG fragment

* Add integration tests for one_image

* Add integration tests for one_image_info

* Update one_image DOC

* Update one_image_info DOC

* Update one_image DOC

* Update one_image_info DOC

* Fix f-strings for one_image

* Update CHANGELOG fragment

* PR fixes

* PR fixes
2024-10-05 15:02:01 +02:00
alexander d4fb6bf8a6
nmcli: conn_reload param and up/down states (#8897)
* Update nmcli module

* Update nmcli state

* Update test_nmcli

* Add CHANGELOG fragment

* PR Fixes

* Fix DOCUMENTATION block
2024-10-03 12:37:18 +00:00
Alexei Znamensky a7d1b0fc52
python_runner/django_command: bugfixes (#8944)
* python_runner/django_command: bugfixes

* fix indentation

* join path_prefix with : when concatenating with PATH

* add changelog frag
2024-09-30 09:45:32 +03:00
Alexei Znamensky 8ef77d8664
unit test helper: big revamp (#8894)
* initial commit

* multiple changes:

- TestCaseContext fixture no longer need to autouse=True
- Helper.from_module() allows extra param to specify yaml file
- test_django_check: adjusted .py and .yaml

* set fixtures per testcase

* set fixtures per testcase

* rollback to original state

* patch_ansible_module fixture

- now it works not only in parametrized functions but also directly with args

* tests/unit/plugins/modules/helper.py

- improved encapsulation, class Helper no longer knows details about test cases
- test functions no longer parametrized, that allows using test case fixtures per test function
- renamed 'context' to 'mock'

* enable Helper.from_list(), better param name 'ansible_module'

* adjusted test fiels to new helper

* remove unnecessary .license file

* fix bracket

* fix reference name

* Update tests/unit/plugins/modules/helper.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* revert to parametrized test func instead of multiple funcs

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-09-28 08:17:36 +03:00
Felix Fontein fe18b05f08
10.0.0: remove deprecated features (#8918)
* Remove pool option from redhat_subscription.

* Remove proxmox_default_behavior option from proxmox_kvm.

* Remove the logging option from ejabberd_user.

* Remove the ack_params_state_absent option from consul.

* irc: change defaults of use_tls and validate_certs to true.

* rhsm_repository: remove states present and absent.

* Re-add 'using'.

* Fix typo.
2024-09-28 08:11:21 +03:00
Alexei Znamensky 002f137134
10.0.0: CmdRunner: remove deprecated feature (#8928)
* remove deprecated feature

* remove deprecated feature from tests as well

* Adjust the integration test

* add changelog frag
2024-09-26 12:01:36 +03:00
Felix Fontein 293021c3dd
Add stable-2.18 to CI (#8910)
Add stable-2.18 to CI.
2024-09-24 13:39:39 +03:00
Alexei Znamensky 76ebda7faf
snap tests: re-enable test for --dangerous using smaller snap (#8861) 2024-09-13 22:46:48 +02:00
Eike Waldt 529af4984c
keycloak_userprofile: new module (#8651)
keycloak_userprofile: new keycloak module to manage user profiles (#8651)
2024-09-09 13:51:07 +02:00
Björn Bösel ea389e7045
bugfix(keycloak): fix parameters for realm key creation (#8823)
* bugfix(keycloak): fix parameters for realm key creation

* supply changelog fragment

* fix formatting

* fix formatting

* Update changelogs/fragments/8823-keycloak-realm-key.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-09-08 14:25:33 +02:00