* Restrict Python 3.6 unit test requirements for elastic-apm. (#5441)
(cherry picked from commit 2754d86ac5)
* Stick to the older version.
Co-authored-by: Felix Fontein <felix@fontein.de>
* requests drops support for older Python.
* Work around CentOS 6 pip bugs.
(cherry picked from commit c8a2c5d375)
Co-authored-by: Felix Fontein <felix@fontein.de>
* Disable repo URL test for OpenSuSE 15.4.
* Forgot some places.
(cherry picked from commit dd24c98fe5)
Co-authored-by: Felix Fontein <felix@fontein.de>
* certifi dropped Python 2 support.
* Apparently the consul tests didn't use the constraints.
(cherry picked from commit 8421af1ea3)
Co-authored-by: Felix Fontein <felix@fontein.de>
* Get first found configuration file
There are three valid places to get the configuration.
https://developer.1password.com/docs/cli/about-biometric-unlock#remove-old-account-information
* Use common config class
* Add changelog fragment
* Explicitly use new style classes for Python 2.7 compatibility
This shouldn’t matter for lookups, but does matter for module_utils
and modules since Python 2.7 is still supported on the managed node.
* Update changelogs/fragments/4065-onepassword-config.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 9e1af2d1bc)
Co-authored-by: Sam Doran <github@samdoran.com>
##### SUMMARY
Clarify what ansible_pre_command_output actually is
##### ISSUE TYPE
- Docs Pull Request
+label: docsite_pr
(cherry picked from commit e57fc54a10)
Co-authored-by: Jan-Piet Mens <jp@mens.de>
* change list.copy() with list[:] for py2 compat in terraform module
* add changelog fragment
* Update changelogs/fragments/4621-terraform-py2-compat.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 4b0245355e)
Co-authored-by: Andrea Tartaglia <andrea@braingap.uk>
* Add docs for ansible-core 2.13 use
local testing shows fine, adding here as example for other filters/tests
* Update plugins/filter/random_mac.py
* Improve docs.
* Remove wrong 'positional'.
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit e62a56e15c)
Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
* Remove FreeBSD 12.0 and 12.2 from CI.
* Revert "Temporarily disable the pkgng tests. (#4493)"
This reverts commit 5ecac692de.
(cherry picked from commit 26cebb9c30)
* Only get monitor if it is not null api response
* Add changelog fragment
* Update changelogs/fragments/4459-only-get-monitor-if-it-is-not-null-api-response.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/dnsmadeeasy.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: drevai <revai.dominik@gravityrd.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 06675034fe)
Co-authored-by: drevai753 <86595897+drevai753@users.noreply.github.com>
The previous error message was not giving the full or even correct
information to the user.
(cherry picked from commit d3adde4739)
Co-authored-by: Cameron Nemo <CameronNemo@users.noreply.github.com>
* Add error handling to check correct SDK version installed
* Fix CI errors
* Added changelog fragment
* Changed exeption type
* Update changelogs fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit e7ffa76db6)
Co-authored-by: Ricky White <rickywhite@outlook.com>
* fixed issue with specified package versions
zypper.py was doing nothing on state=present, when ALL requestet/checked packages had a specific version stated. This was caused by get_installed_state() being called with an empty package list, which in this case returns information about all ALL installed packages. This lead to an exessive filter list prerun_state, essentially removing all packages that are installed in ANY version on the target system from the request list.
* Create 4421-zypper_package_version_handling_fix
added changelog fragment for https://github.com/ansible-collections/community.general/pull/4421
* Delete 4421-zypper_package_version_handling_fix
* Create 4421-zypper_package_version_handling_fix.yml
(cherry picked from commit bbe231e261)
Co-authored-by: tover99 <101673769+tover99@users.noreply.github.com>
* Proxmox inventory plugin - Fix string to dict conversion (#4348)
* Re-use the (defined but unused) `plaintext_configs` variable to list
configuration entries that should be ignored by the string to
dictionary conversion code. At this point, it only contains the
`description` string.
* Convert to a dictionary if the all substrings obtained by splitting
off the initial value with commas contain a `=` character
* Limit substring splitting to a single split, so that a substring
containing `a=b=c` will generate an `a` entry with value `b=c`.
* Added changelog fragment for PR #4349
* Fix changelog fragment for #4349
(cherry picked from commit 3eec63421a)
Co-authored-by: Emmanuel Benoît <tseeker@nocternity.net>
* Remove DWSR from BOTMETA.yml
I'm no longer using Ansible.
* Update .github/BOTMETA.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit ea0697601b)
Co-authored-by: Brandon McNama <brandonmcnama@outlook.com>
* fix sparse file creation on Alpine linux
* re-enable tests for Alpine
* remove `conv=sparse` flag (rely only on `seek=fullsize` & `count=0`)
* doc: add a reference to busybox's dd
* doc: remove restrictions for OpenBSD, Solaris & AIX (should work as
for Alpine linux now)
* add a changelog fragment
* fix typo
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 0da8cb2e02)
Co-authored-by: quidame <quidame@poivron.org>
* keycloak: fix creating a user federation w/ idempotent id
Creating a user federation while specifying an id (that doesn't exist
yet) will fail with a 404. This commits fix this behavior.
* keycloak: fix user federation mapper duplication
This commit fixes a bug where mappers are duplicated instead of
configured when creating a user federation.
When creating a user federation, some mappers are autogenerated by
keycloak. This commit lets the keycloak_user_federation module recompute
mappers final values after the user federation is created so that the
module can try to merge them by their name.
* add missing fragment for pr #4212
(cherry picked from commit c1485b885d)
Co-authored-by: Jules Lamur <jlamur@users.noreply.github.com>
* yum_versionlock: Fix entry matching (#4183)
As an input the module receives names of packages to lock.
Those never matched existing entries and therefore always reported
changes.
For compatibility yum is symlinked to dnf on newer systems,
but versionlock entries defer. Try to parse both formats.
Signed-off-by: Florian Achleitner <flo@fopen.at>
(cherry picked from commit f5ec73735f)
* Empty commit to trigger CI.
Co-authored-by: fachleitner <flo@fopen.at>
Co-authored-by: Felix Fontein <felix@fontein.de>
The passwordstore lookup plugin depends on parsing GnuPG's
error messages in English language. As a result, detection of
a specific error failes when users set a different locale.
This change corrects this by setting the `LANGUAGE` environment
variable to `C` when invoking `pass`, as this only affects
gettext translations.
See
https://www.gnu.org/software/gettext/manual/html_node/The-LANGUAGE-variable.html
(cherry picked from commit 77a0c139c9)
Co-authored-by: grembo <freebsd@grem.de>
Given a password stored in _path/to/secret_, requesting the password
_path/to_ will literally return `path/to`. This can lead to using
weak passwords by accident/mess up logic in code, based on the
state of the password store.
This is worked around by applying the same logic `pass` uses:
If a password was returned, check if there is a .gpg file it could
have come from. If not, treat it as missing.
Fixesansible-collections/community.general#4185
(cherry picked from commit da49c0968d)
Co-authored-by: grembo <freebsd@grem.de>
* dconf: Skip processes that disappeared while we inspected them
Fixes#4151
* Update changelogs/fragments/4151-dconf-catch-psutil-nosuchprocess.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 9567c99c9f)
Co-authored-by: Pavol Babinčák <scroolik@gmail.com>
* Update Documentation with additional example
* Added an example to have the plugin return an IP address for a Proxmox guest, instead of the name of the guest (default behavior)
* Added an example to include a string literal to every guest (to support a playbook being able to check for variable presence to identify inventory in use)
* Update for line length readability
Co-authored-by: Felix Fontein <felix@fontein.de>
* Changed to cleaner static value
* Changed text for clarity
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit c09f529f02)
Co-authored-by: IronTooch <27360514+IronTooch@users.noreply.github.com>
* homebrew_cask: reinstall when force is install option
* add changelog entry
* Fix OSX CI runs - run as non-root
* test with cask that has no macos dependencies
* use `brooklyn` cask to test
(cherry picked from commit 8b95c56030)
Co-authored-by: Joseph Torcasso <87090265+jatorcasso@users.noreply.github.com>
When using project it will use project level runner to create runner that based on python-gitlab it will be used for enabling runner and needs a runner_id so for creating a new runner it should use gitlab level runner
Signed-off-by: Seena Fallah <seenafallah@gmail.com>
(cherry picked from commit 929136808f)
Co-authored-by: Seena Fallah <seenafallah@gmail.com>
* PyOpenSSL 22.0.0 no longer supports Python 2.7.
* Try to make pip on CentOS 6 happy.
(cherry picked from commit 84124224ae)
Co-authored-by: Felix Fontein <felix@fontein.de>
* bugfix: don't overwrite results in 'mismatched'
Whichever mismatched package is evaluated last is the value stored in the
'mismatched' key. Instead, it should have a subdict for each pkg that is mismatched
to keep in line with its documented usage.
* Update changelogs/fragments/4078-python_requirements_info.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 526369a243)
Co-authored-by: Will Hegedus <will@wbhegedus.me>
* Fix 'changed' status for yarn global by actually expanding ~
* Ignore use-argspec-type-path test
* Add changelog fragment
* Update changelogs/fragments/4048-expand-tilde-in-yarn-global-install-folder.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 7ca60e0177)
Co-authored-by: jack1142 <6032823+jack1142@users.noreply.github.com>
* Properly parse JSON Lines output from yarn
* Properly support output of yarn global list
* Add changelog fragment
* Check that the string starts with 'bins-'
* Fix changelog fragment
* Update changelogs/fragments/4050-properly-parse-json-lines-output-from-yarn.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 4309dfda52)
Co-authored-by: jack1142 <6032823+jack1142@users.noreply.github.com>
* Improve documentation on how to run tests.
* Fix incomplete sentence.
* Apply suggestions from code review
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Improve separation.
* Fix unrelated typo.
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
(cherry picked from commit 8a03d9f286)
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix alternatives parsing when they are part of a group
* add changelog fragment
Co-authored-by: Guillaume Rousse <guillaume.rousse@renater.fr>
(cherry picked from commit a675afcba9)
Co-authored-by: Guillaume Rousse <guillomovitch@gmail.com>
* Restrict PyNaCL to 1.4.x on RHEL8 when using Python 3.6.
* Fix typo.
(cherry picked from commit 77a930cf6b)
Co-authored-by: Felix Fontein <felix@fontein.de>
* fix scaleway_user_data
scaleway_user_data put cloud-init valuer with 2 unexpected " (begin and end of value)
If Content-Type is not change , it's jsonify ( file module_utils/scaleway.py ligne 131 )
fix the probleme when "Content-Type" is used instead of "Content-type"
* Create 3940_fix_contenttype_scaleway_user_data.yml
* Update changelogs/fragments/3940_fix_contenttype_scaleway_user_data.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 043b407412)
Co-authored-by: pmangin <96626847+pmangin@users.noreply.github.com>
* Prepare for distutils.version being removed in Python 2.12.
* Fix copy'n'paste error.
* Re-add Loose prefix.
* Fix Python version typos.
* Improve formulation.
* Move message into own line.
* Fix casing, now that the object is no longer called Version.
(cherry picked from commit a2f72be6c8)
* Don't use loops for installing packages.
* Install util-linux-systemd on OpenSuSE so that findmnt is around.
(cherry picked from commit f34c454412)
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixing onboot parameter when not supplied
* adding changelog fragment
(cherry picked from commit 00a1152bb1)
Co-authored-by: Andrew Pantuso <ajpantuso@gmail.com>
* Update lxd connection to use documented vars
* Add a changelog fragment
* Add clarification to changelog description
* Shorten changelog fragment description
(cherry picked from commit 8f6866dba6)
Co-authored-by: Conner Crosby <conner@cavcrosby.tech>
* interfaces_file: fixed unit tests and added README, added test cases for #3862
* typo fix for interfaces_file unit tests README.md
Co-authored-by: Felix Fontein <felix@fontein.de>
* typo fix for interfaces_file unit tests README.md
Co-authored-by: Felix Fontein <felix@fontein.de>
* typo fix for interfaces_file unit tests README.md
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 0c828d9d01)
Co-authored-by: Roman Belyakovsky <ihryamzik@gmail.com>
* pipx - fixed --include-apps bug
* added changelog fragment
* skipped freebsd for the last test
(cherry picked from commit bc619bcefc)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* change ip6 type to list of str and fix problem with setting addresses without netmask
* change ip6 type to list of str and fix problem with setting addresses without netmask
* Add changelog fragment
* add suggestions
* fix no mask using bug
* Make change independed from feature branch
(cherry picked from commit aae3ae1a8e)
Co-authored-by: Alex Groshev <38885591+haddystuff@users.noreply.github.com>
* Fixes parameters missing in planned state
* Added new line at end of file
* Added changelog fragment for pr 3726
* Added changes mentioned by felixfontein
* Removed blank space for pep8 validation
* Update changelogs/fragments/3726-terraform-missing-parameters-planned-fix.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/cloud/misc/terraform.py
extend needs to be a list
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Thomas Arringe <thomas.arringe@fouredge.se>
Co-authored-by: Thomas Arringe <Thomas.Arringe@ica.se>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 946430e1fb)
Co-authored-by: egnirra <37709886+egnirra@users.noreply.github.com>
* Replace RHEL 8.4 by RHEL 8.5 for devel.
* Install virtualenv.
* Revert "Install virtualenv."
This reverts commit 22ba0d074e.
* Just do another skip...
(cherry picked from commit 26c7995c82)
Co-authored-by: Felix Fontein <felix@fontein.de>
* Enable counter_enabled.py to support serial mode
Enable counter_enabled.py to support batch playbook executions using the serial tag in plays. Currently, the host counter gets reset at the beginning of every task. However, during batch executions we want it to keep track of the previous batch executions and print the host counter based on the previous runs. This proposal keeps track of how many servers have been updated in previous batches and starts the host counter at that tracked value.
```
- hosts: allthethings
gather_facts: no
serial:
- 3
- 15%
- 20%
- 35%
- 55%
- 90%
- 100%
tasks:
- name: Ping Hello!
ping:
data: "Hello!!!!"
```
* Reset task counter on play start
Reset task counter on play start for batch mode playbook executions.
* Add changelog fragment
* change changelog fragment after feedback
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit f5b4dcc564)
Co-authored-by: Nabheet Sandhu <nabheet@users.noreply.github.com>
* Fix exception in xattr module when existing extended attribute's value contains non-printable characters and the base64-encoded string contains a '=' sign
* Added changelog fragment for #3675
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 2f0ae0408d)
Co-authored-by: sc-anssi <sc-anssi@users.noreply.github.com>
* Fixed - TypeError: unexpected keyword argument
- File proxmox_group_info.py creates the error "TypeError:
get_group() got an unexpected keyword argument \'group\'\r\n'" if a
group parameter is used.
Issue is an argument naming conflict. After changing the argument
name to 'groupid', as used in method ProxmoxGroupInfoAnsible::get_group,
testing a Proxmox group name is working now.
* Changelog fragment added for #3649
changelog fragment for TypeError: unexpected keyword argument #3649
* Update changelogs/fragments/3649-proxmox_group_info_TypeError.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 0df41241dd)
Co-authored-by: hklausing <hklausing@users.noreply.github.com>
While porting this module to make use of `pyone` I have overlooked one
attribute. Luckily the error only occurs when trying to rename an image
to a name that has already been taken.
Instead of telling the user which image ID already uses that name, the
module failed with the following error (along with a huge backtrace):
AttributeError: 'IMAGESub' object has no attribute 'id'
With this commit the error message is much more obvous again.
(cherry picked from commit b429c520f5)
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
* provide more fitting description for runner timeout
* Update plugins/modules/source_control/gitlab/gitlab_runner.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Tim Herren <tim.herren@gmx.ch>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 96de25fc94)
Co-authored-by: nerrehmit <accounts+github@herren.id>
* Replace yaml.load with yaml.safe_load in unit tests.
* Remove no longer needed loader arg in two instances.
(cherry picked from commit 753df78877)
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update gitlab_project_members.py
The actual search method doesn't accept path with namespace for project_name. If you have many project with same name, this module gitlab_project_members can't work.
* Update gitlab_project_members.py
* Update gitlab_project_members.py
* Update gitlab_project_members.py
* Create 3602-fix-gitlab_project_members-improve-search-method
* Rename 3602-fix-gitlab_project_members-improve-search-method to 3602-fix-gitlab_project_members-improve-search-method.yml
(cherry picked from commit cdfc4dcf49)
Co-authored-by: paytroff <93038288+paytroff@users.noreply.github.com>
* pipx - fixed bug in state=inject
* added changelog fragment
* copy/paste error in the integration test
* replaced injected package with simpler one
* testing force_lang = None
* disable UTF-8 emojis in pipx output
* better way to achieve the same outcome
* Adjsuted the changelog fragment
(cherry picked from commit 40ccd1501b)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
fixes#3621
* running check mode used to accidentally delete the existing
ssh key; change it so deletion is skipped in check mode
(cherry picked from commit 8ba7fd5d61)
Co-authored-by: Waldek Maleska <w.maleska@gmail.com>
* Fix exception in pkgin module when all packages are already installed.
* Update plugins/modules/packaging/os/pkgin.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add changelog fragment for #3583
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 86a22b5ed2)
Co-authored-by: Nate Coraor <nate@bx.psu.edu>
* Redfish: Do not set the boot source override mode if not provided by the user
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
* Corrected changelog file extension
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
* Update changelogs/fragments/3509-redfish_utils-SetOneTimeBoot-mode-fix.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 481fc48e51)
Co-authored-by: Mike Raineri <michael.raineri@dell.com>
* nmcli: Fix ipv6.dns not being recongnized as list
There was a missing comma on the previous line.
* nmcli: Add changelog fragment for #3563
* nmcli: Update changelogs/fragments/3563-nmcli-ipv6_dns.yaml
Make the fix description more descriptive
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* nmcli: Remove ipv4.route-metric from list-typed properties
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* nmcli: Update fragment 3563 with ipv4.route-metric bug
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
(cherry picked from commit e7e2ab94da)
Co-authored-by: Matyáš Kroupa <kroupa.matyas@gmail.com>
* Redfish: perform manager network interface configuration even if property is missing
Signed-off-by: Mike Raineri <michael.raineri@dell.com>
* Update changelogs/fragments/3404-redfish_utils-skip-manager-network-check.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 6580e7559b)
Co-authored-by: Mike Raineri <michael.raineri@dell.com>
* Add names to tasks in oneview module examples
* Fix task name in github_webhook module example
* Fix trailing whitespace
* Add changelog fragment
* Remove changelog fragment
(cherry picked from commit 3731064368)
Co-authored-by: Vitaly Khabarov <vitkhab@users.noreply.github.com>
* Add elastic callback plugin
* Capture task failures
* Catch errors and add UTs
* Skip 3.5< python versions and install dependency
* fix lint
* Fix linting
* Fix linting
* Add botmeta
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* It's not required
* As suggested in the code review OrderedDict has been added to the Python stdlib since version 2.7
* Update plugins/callback/elastic.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 905f4dcfa2)
Co-authored-by: Victor Martinez <victormartinezrubio@gmail.com>
* pkgng: join package list into one command
Change the pkgng module so all packages being
installed (or upgraded) are acted on in one
command (per action). This will make installs
and upgrades a bit faster, because pkg will be
invoked fewer times per module run. More important,
module actions will be more atomic, making it less
likely that some packages are acted on because they
appear earlier in the argument list.
This change also improves the status reporting of
packages acted on, specifying the number of packages
for each action (install or upgrade).
* pkgng: make upgrade check lazily evaluated
Make upgrade_available an inner function so that the
if statement that checks whether installed packages
are up-to-date only runs the upgrade check on packages
that are already installed. This gets lazily evaluated
because of boolean operator short-circuiting:
https://docs.python.org/3.8/library/stdtypes.html#boolean-operations-and-or-not
Previously, the module would always check for upgrades,
even for not-installed packages, when running with
`state=latest`.
* pkgng: add changelog fragment
* pkgng: Apply changelog suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* pkgng: resolve pep8 style issue
Remove inline function. It's purpose would be confusing for
future maintainers, and someone refactoring it to a variable,
with good intentions, would introduce a performance regression.
Including the `query_update()` call in the if expression makes
the intent more legible and still ensures lazy evaluation of the
function call if the first `and` is `False`.
* pkgng: Fix changelog fragment syntax issue
Need to escape quotes so YAML doesn't eat them
Co-authored-by: Felix Fontein <felix@fontein.de>
* pkgng: Improve output message English grammar
Make word "package" plural only if reporting on more than one package
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 293c7a9fb3)
Co-authored-by: Ross Williams <ross@ross-williams.net>
* If repo option points to .repo file, download for later parsing
* Parse downloaded .repo file content (ini format)
* Validate downloaded file, map values to repodata, workaround to ignore old .repo related code
* Integration Test adjusted to install python package 'requests' first
* Revert "Integration Test adjusted to install python package 'requests' first"
This reverts commit 0d18352c2238d098831ba6d59b66e731fa8f0cd9.
Not allowed to introduce new dependencies at this point, module_utils usage required
* Remove python 'requests' dependency, using 'fetch_url' and 'to_text' from 'ansible.module_utils' instead
* Prefer alias (name) if given instead repo (url)
* If gpgkey was given in .repo file ensure key get automatically imported
* ConfigParser Import made Python2 compatible
* New .repo code moved below existing run-time parameters checks to keep previous logic
* Obsolete workaround removed
* two pylint/pep8 errors fixed
* name added to autorefresh assert
* Missing assert for 'Delete test repo' added
* name added to priority option assert
* name added to check repo is updated by url assert
* name added to check repo is updated by name assert
* name added to check add a repo by releasever assert
* name added to check remove added repo assert
* name added to check add a repo by basearch assert
* name added to check remove added repo #2 assert
* Bugfix to avoid 'KeyError' Exception in if statements
* Refactoring of configparser related code, usage of module_utils, py2 compatibility
* Removal of some leftover from earlier testing
* Integration tests for add/remove repositories by url to .repo file added
* Additional name added to list of test repos that has to be removed
* Test added to verify cleanup of local .repo file after removal via zypper
* Changelog fragment related to PR #3474 added
* yamllint error resolved
* Refactoring to reduce indentation and removal of else statements
* Integration tests added for loading .repo file from local path
* Test .repo file added
* Dependency to setup_remote_tmp_dir added
* New entry added to 'remove repositories added during test'
* Support for .repo file from local path
* Changelog: Ref to https://github.com/ansible-collections/community.general/issues/3466 added
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit f0fcb221cd)
Co-authored-by: Dominik Wombacher <dominik@wombacher.cc>
* [opentelemetry][callback] add option to support enabling plugin in the CI only
* [opentelemetry][callback] add changelog fragment
* Apply suggestions from code review
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* [opentelemetry][callback] use enable_from_environment
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* [opentelemetry] ensure the value is true otherwise the plugin is not enabled
* [opentelemetry][changelog] update entry with the new option
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 3a460751a4)
Co-authored-by: Victor Martinez <victormartinezrubio@gmail.com>
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
* [ufw] Insert or delete biased when deletion enabled - as for append or delete.
(cherry picked from commit 80bb42325b)
Co-authored-by: Greg <greg-a-atkinson@users.noreply.github.com>
* pipx - new module
* using python instead of python3
* removed ensure_path as it is unused
* ensuring we are running the same python as Ansible
* changed the last solution to adding a pipx_path parameter to the module, with a sensible default
* added docs for the new parameter
* changed param name to executable, and customized it for Darwin
* use executable if passed, otherwise use python -m pipx
* minor update
* added examples
* Update plugins/modules/packaging/language/pipx.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/language/pipx.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/language/pipx.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* tests names 324 -> 3.24.0
* ensure tox is uninstalled by the beginning of the test
* Renamed option+suggestions from PR
* improved idempotency
* fixed sanity
* fixed test
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit f1807d3323)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* Started creating Unit tests for Proxmox Tasks module
* Tried really hard to get the mock to work
* unit tests for the module
* Fixed symslink and permissions
* Suggested changes and more unit tests
* Fixed isFalse
* Apply suggestions from code review
* Update plugins/modules/cloud/misc/proxmox_tasks_info.py
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit e95f63b067)
Co-authored-by: Andreas Botzner <paginabianca66@gmail.com>
* adhere to proper task structure
* add changelog fragment
* return code formatting to original
* remove unnecessary fragment
(cherry picked from commit a14392fab0)
Co-authored-by: Zach Biles <bile0026@users.noreply.github.com>
* Updated nmcli.py
Amended the routing-rules4 values as list. By this we could add the entries for "routing_rules4" in the form of a list .
* Update nmcli.py
Fixed typo in line #1701
* 3395-nmcli-needs-type.yml
routing_rules4 module argument is currently accepting only string elements. In order to accept multiple values, amended the type of routing_rules4 as list.
* nmcli: amended the routing-rules4 key values as list
routing_rules4 module argument is currently accepting only string elements. In the case of adding multiple entries to routing_rules4, we need to accept values as list.
* Added 3401-nmcli-needs-type.yml
routing_rules4 module argument is currently accepting only string elements. In the case of adding multiple entries to routing_rules4, we need to accept values as lists
* Amended type to 'minor_changes'
Amended type to 'minor_changes' from 'bug_fixes'
* routing_rules4 to a list of element str
nmcli.py - routing_rules4 to a list of element str
* Update changelogs/fragments/3401-nmcli-needs-type.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* nmcli: allow routing-rules4 key values as list
* nmcli: amended the routing-rules4 key values as list
* nmcli: amended the routing-rules4 key values as list
* nmcli: amended the routing-rules4 key values as list
* test_nmcli: amended whitespaces
* Update 3401-nmcli-needs-type.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 53fc2c477b)
Co-authored-by: Sreekanth H <65583280+sree0744@users.noreply.github.com>
* Copy the permissions along with file for jboss module
Issue: The deployment file is copied with file content only. The file
permission is set to 440 and belongs to root user. When the
JBossI(Wildfly) server is running under non root account, it can't read
the deployment file.
With is fix, the correct permission can be set from previous task for JBoss
server to pickup the deployment file.
* Update changelogs/fragments/3426-copy-permissions-along-with-file-for-jboss-module.yml
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
(cherry picked from commit 7cfdc2ce8c)
Co-authored-by: Pan Luo <xcompass@gmail.com>
* Enable ansibullbot notifications in issues and PRs (#3462)
The more recent version of Ansibullbot defaults notifications to false.
We need to set it to true so it can notify contributors and maintainers.
(cherry picked from commit 845c406419)
* Update botmeta sanity test to accept notifications.
(cherry picked from commit 71a655193c)
Co-authored-by: David Moreau Simard <moi@dmsimard.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added OpenNebula inventory plugin
Signed-off-by: Kristián Feldsam <feldsam@gmail.com>
* Apply suggestions from code review
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Removed matching inventory yaml files ending with "one"
Too general word
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Apply suggestions from code review
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* Added BOTMETA
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* Moved import
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* Fix indentation problem
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* Added group_by_labels, refactored so can be unit tested
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* Added unit tests
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* Removed blank line
Signed-off-by: Kristian Feldsam <feldsam@gmail.com>
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
(cherry picked from commit 806f1ea3c9)
Co-authored-by: Kristian Feldsam <feldsam@gmail.com>
* fix: return correct group id
match only full_path or name
* chore: add changelog fragment
* fix: indentation multiple of four
* refactor: use two loops
* fix: typo of group id
* fix: changelog fragment
(cherry picked from commit b6b7601615)
Co-authored-by: Chris Frage <chris.frage@cancom.de>
* Fix diff mode when updating authentication flow with keycloak_authentication module
* Update documentation of create_or_update_executions function (return tuple instead of dict)
* Fix: Update requirement when new exex created
* Add changelog fragment
* Update changelogs/fragments/3330-bugfix-keycloak-authentication-flow-requirements-not-set-correctly.yml.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/3330-bugfix-keycloak-authentication-flow-requirements-not-set-correctly.yml.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Edit requirement of sublow
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 147ca2fe66)
Co-authored-by: Gaetan2907 <48204380+Gaetan2907@users.noreply.github.com>
* Restrict to unit tests with devel (to be reverted later).
* Restrict lxml for Python 2.6.
* Revert "Restrict to unit tests with devel (to be reverted later)."
This reverts commit d0d87a8a0f.
(cherry picked from commit 935348ae78)
Co-authored-by: Felix Fontein <felix@fontein.de>
* Adding capability to specify ehlo hostname
* Fixing default for ehlohost
the CI did not like "None" as default in the documentation,
judging from the rest of the definitions omitting that seems to be right
* Update plugins/modules/notification/mail.py
Proper spelling in documentation
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Adding Changelog Fragment
* Update changelogs/fragments/3425-mail_add_configurable_ehlo_hostname.yml
Proper phrasing in changelog
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* integration-test for ehlohost parameter
* proper description, increased async-time
changed body of ehlohost-mail to reflect ehlohost
increased async from 30 to 45 as CI failed because
smtp was already down.
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
(cherry picked from commit ae6cbc2d82)
Co-authored-by: Hartwig Hauschild <hardy+github@foxxnet.de>
* Accept context/ in aliases.
* Mark ansible_galaxy_install test as context/controller.
* Fix interfaces_file test.
ci_complete
* Install pyone dependency.
ci_complete
(cherry picked from commit 98d071f61e)
Co-authored-by: Felix Fontein <felix@fontein.de>
* do not ignore volatile - fix#2466
* remove unnecessary checks
* fix ansible-tests sanity
* fix access to the option: ignore_volatile_options
* add fragment
* fix quotation marks error
* fix review findings
* fix sanity error
* fix description - in yaml examples use true not True
comment out the deprecate message
* remove "default=True" at ignore_volatile_options
fix spelling
* fix sanity error that ignore_volatile_options have no default value
* undo changes. add defaut value and remove keyword at dict.get()
* fix sanity error
* small spelling fixes
* change text for fragment
* Fix description sentence.
Co-authored-by: Frank Dornheim <“dornheim@posteo.de@users.noreply.github.com”>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 8e7d49c1c6)
Co-authored-by: Frank Dornheim <524257+conloos@users.noreply.github.com>
* Added redis_set module
Added redis_set module and unit tests for the new module.
Applied suggested changes and removed redis_del in favor of state
option.
Also added redis utility class that handles connection.
* Typos, added version and BOTMETA
* Fixed import error checking
* Fixed Unit tests
* Docfix and return consistency
* Added Check Mode
* Update plugins/modules/database/misc/redis_data.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 424af85929)
Co-authored-by: Andreas Botzner <paginabianca66@gmail.com>
* kernel_blacklist - revamped the module
* file default and setting "lines" when file does not exist
* added changelog fragment
* added change in arg_spec to the documentation block
* Update plugins/modules/system/kernel_blacklist.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/system/kernel_blacklist.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/system/kernel_blacklist.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed: initialize self.pattern before self.var.is_blacklisted
* File writing recoded
* added try/finally for the file
* multiple changes:
- fixed case when last line of the existing file has no newline char
- added integration tests
* PR: integration test now using remote_tmp_dir
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 2ad7ed4f83)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
If package installation has an error after the package is install (e.g.
when running tags), then there will be output on stderr and the fallback
regex will match; however, since pkg_add exited non-zero, changed is
never added as a key to the dictionary. As a result the code at the end
of main that checks if anything has changed raises a KeyError.
(cherry picked from commit 02d0e3d286)
Co-authored-by: Matthew Martin <phy1729@gmail.com>
* pythonific!! no camel cases, bitte
* simplified iface attributes parsing
* some improvements, passing tests
* simplified set_interface_option()
* further simplifications
* remove unreachable stmt
* pythonified a file open
* added changelog fragment
* adjustment per PR
* PR: fixed the auto- case
* PR: added testcase and chglog frag for the misleading change report
* extra line removed
* integration is not destructive
(cherry picked from commit 7aae8d5386)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* Adding "Id" to the add user function
Some implementations of Redfish (e.g. the one in Cisco's CIMC) seem to require the id of the new user for account creation.
I'm not that firm with Python but lines 982 and 983 should fix it.
* changed indention
* created changelog fragment
* Update changelogs/fragments/3343-redfish_utils-addUser-userId.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update change type
* supplemented the description of the ID parameter
* Update plugins/modules/remote_management/redfish/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 331f5bdf24)
Co-authored-by: Patrick Pfurtscheller <57419021+PfurtschellerP@users.noreply.github.com>
* Add opentelemetry callback plugin
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Formatting (text), booleans and renamed env variables
* This should be done in a future release
* Remove insecure in favour of the OTEL env variable. Add descriptions
* Use OpenTelemetrySource
* Move generate_distributed_traces
* Move update_span_data and set_span_attribute
* Move finish_task
* Move start_task
* Refactor to support UTs
* Add first UT
* Fix codestyle
* opentelemetry callback entry in the botmeta
* Fix linting
* Fix signature
* Mock methods
* Use MagicMock
* Mock the methods
* UT for transform_to_boolean_or_default
* Fix linting
* Set test data
* Mock _time_ns
* Exclude tests for python <= 3.6
* Remove obsoleted setup task type configuration
* Remove unused docs
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix docs
* unrequired logic that was originally took from https://github.com/ansible/ansible/blob/devel/lib/ansible/plugins/callback/junit.py\#L226
* Use raise_from for the required dependencies
* Fix linting
* Add requirements for the UTs
* add missing dependency for the opentelemetry plugin in the UTs
* Add ANSIBLE_ prefix for the ansible specific options
* Add more context in the docs and remove duplicated docs
* As suggested in the code review
* Verify if the OTEL env variables for the endpoint were set
* Fix docs typo
* Fix linting
* Revert "Fix linting"
This reverts commit 3a54c827c5472553a6baf5598bc76a0f63f020c1.
* Revert "Verify if the OTEL env variables for the endpoint were set"
This reverts commit cab9d8648899c28c0345745690c4ec7a41f7e680.
* Remove console_output as suggested
* Apply suggestions from code review
Co-authored-by: flowerysong <junk+github@flowerysong.com>
* Delegate the definition of OTEL_EXPORTER_OTLP_INSECURE to the user
* Move definitions above, close to the class that uses them
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: flowerysong <junk+github@flowerysong.com>
(cherry picked from commit 517570a64f)
Co-authored-by: Victor Martinez <victormartinezrubio@gmail.com>
* Added token parameter for AccessTokenAuthorizer
Parameters username and password are not required anymore because of
this.
* Added changelog fragments
* Apply suggestions from code review
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* token authorizer is prioritized
token authorizer is prioritized when token parameter is set
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* domain optional if token not provided
* Updated examples
- `base_url` is required everywhere
- examples for user, name + domain authorization included
- token authorization included
* Update 3327-tss-token-authorization.yml
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit dc8d076a25)
Co-authored-by: Martin Vician <vician@users.noreply.github.com>
* Added redis_data_info module
Added:
- redis_data_info module and suggested 'exists' return flag.
- module_utils for redis with a base class that handles database connections.
- inhereited unit tests and added some new ones for the exit flag
* Docfix and sanity
* typo
* Suggested doc changes and ssl option
* TLS and validate_certs fix
* Set support_check_mode for info plugin
* Docfix and import errors
* Redis versioning Fix
* version bump and append fixes
(cherry picked from commit 6b207bce4c)
Co-authored-by: Andreas Botzner <paginabianca66@gmail.com>
* django_manage - fix fixures
* docs formatting adjustments
* param apps also in need of splitting
* oops, the splitted version was not being properly added to the command args
* added changelog fragment
* check for None
* moving to shlex.split()
* Update changelogs/fragments/3334-django_manage-split-params.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit dd25c0d3bf)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* Some vendors surround header etag with quotes, which need to be cleaned before sending a patch
* Minor change fragment
* Add etag strip quote option
* Rebase
* Cleanup fragment
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/remote_management/redfish/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Description update
* Update plugins/modules/remote_management/redfish/redfish_config.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Kyle Williams <kyle.williams@thetradedesk.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 3502f3b486)
Co-authored-by: Kyle Williams <36274986+kyle-williams-1@users.noreply.github.com>
Note: tastychutney is another github account of mine that was also added as a maintainer.
(cherry picked from commit 135faf4421)
Co-authored-by: Scott Anderson <scott@waymark.com>
* - fix to issue 3041
- add func to work with user lists
- add func to set members to the ones give
* Added version_added to new parameter
* fixed elements in definition of gitlab_users nad wrong import in gitlab_users
* linter issues fixed
* added list elelements to argument_spec
* More whitspeaces for the linter
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* adapted changelog
* removed bugfix (other PR), changes due to review
* changed input handling according to review
* Fixed test findings
* Added list of dict to allow for specifying user/access_level tuples
* corrected doc section
* fixed parameter definitions
* removed strange additional import
* Update changelogs/fragments/3041-gitlab_x_members_fix_and_enhancement.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_project_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed required if
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added suggestions from PR
* fixed identation problem
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Zainab Alsaffar <za5775@rit.edu>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Zainab Alsaffar <za5775@rit.edu>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Recommended changes from discussionst
* Fixed issues from automatic tests
* added missing metaclass due to test finding
* added integration tests
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed optimization for only one user
* Reverted gitlab_project_members to original version - changes will be done in a separate branch
* added examples for new functionality
* - fixed changelog after reverting gitlab_project_memebers
- fully reverted gitlab_project_members
* Fixed error handling: when single users are not updateable in bulk mode the exception should not stop the code flow but document the problem in the result.
* Better error handling
* on error give username, not gitlab numeric userid
* Fixed broken check_mode
* Update plugins/modules/source_control/gitlab/gitlab_group_members.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Change from review
Co-authored-by: Max Bidlingmaier <Max-Florian.Bidlingmaier@sap.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Zainab Alsaffar <za5775@rit.edu>
(cherry picked from commit fce562ad6d)
Co-authored-by: Max Bidlingmaier <maks@konsolan.de>
* zfs.py: treated received properties as local and added diff mode support
If you use "zfs set" to explicitly set ZFS properties, they are marked as from source "local". If ZFS properties are implicitly set by using "zfs send" and "zfs receive", for example as part of a template based installation, they are marked as from source "received". But as there is no technical difference between both types of them, the “received” ZFS properties should also be considered “local”. Otherwise Ansible would detect changes, which aren’t actual changes. Therefore I changed line 202/207 to reflect this.
For us it’s quite important, that Ansible modules support the diff mode in order to qualify changes. Therefore I added some code lines to address this.
* added changelog fragment for PR #502
* fixed typos in changelog fragment for PR #502
* minor changes in changelog fragment for PR #502
* added link to pull request in changelog fragment for PR #502
* extended the diff data structure to always include the name of the zfs filesystem
* added code to also maintain the diff data structure after a change
* reverted back some code lines for better code readability
* added an extra dict in the diff data structure to hold the zfs properties
(cherry picked from commit baa721ac22)
Co-authored-by: froebela <32922546+froebela@users.noreply.github.com>
* udm_dns_record: Fix handling of PTR records (#3244)
Before, it was not possible to manage PTR records in Univention DNS,
due to broken zone lookups and improper used parameters of the object.
This patch fixes the PTR handling, allowing both v4 and v6 entries.
* udm_dns_record: [doc] add changelog fragment
* udm_dns_record: [fix] validation errors
* udm_dns_record: import ipaddress module conditionally (#3244)
* udm_dns_record: fix sanity check error, improve doc (#3244)
* udm_dns_record: Improve changes to meet community standards (#3244)
(cherry picked from commit d9dcdcbbe4)
Co-authored-by: Sebastian Damm <SipSeb@users.noreply.github.com>
* Force new enough requests version.
* Revert "Force new enough requests version."
This reverts commit 339d40bef7.
* Make sure we don't install a too new python-gitlab for Ansible 2.10.
* Change requirement instead of appending new one.
* Fix quoting.
* Try to skip if import fails.
* Revert "Try to skip if import fails."
This reverts commit 254bbd8548.
* Make other Python versions happy...
* Update tests/utils/shippable/units.sh
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
(cherry picked from commit cf43356753)
Co-authored-by: Felix Fontein <felix@fontein.de>
* snap - improved error handling
* added changelog fragment
* removed experiments left overs
* rolled back the smaller list of params for commands other than install
(cherry picked from commit a91eb6ae4f)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* Fixed incorrect VMID: cloning to an existing VM
During a cloning operation, if the destination VM already exists the VMID returned is not correct.
The VMID returned should be that of the destination VM and not that of the source VM (consistent with line 1230).
A playbook that relies on the returned VMID, for example, to perform other operations on the destination VM, will not work properly if it is unexpectedly interrupted.
* Add files via upload
* moved 3266-vmid-existing-target-clone.yml to changelogs/fragments/
replaced line separator CRLF -> LF
* storing vmid list in variable to avoid multiple API calls
(cherry picked from commit 4e2d4e3c68)
Co-authored-by: Atlas974 <43972908+Atlas974@users.noreply.github.com>
* Linode Inventory can use full IP data from APIv4
- The Linode dynamic inventory module does not currently distinguish
between private and public IP addresses even though the Linode APIv4
contains this information. This change keeps the current behavior as
the default and adds an option to set `ip_style: api`. When set, this
option allows administrators to differentiate between private, public,
slaac, local_link, and pool network addresses providing a more nuanced
and granular view of the remote host's network information.
Signed-off-by: Kellin <kellin@retromud.org>
* Review - amend changelog details
- Adds a link back to this pull request
- Uses markdown styles for easier to read publishing in the changelogs
- Amends the wording style to match the existing changelog styles
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add scope to example invocation
- Adds the `community.general` scope to invocation example
Co-authored-by: Felix Fontein <felix@fontein.de>
* Convert lamda to list comprehension
- Change the ip type filter from a lambda to a list comprehension
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add punctuation to description sentence
- Adds a period to the end of the description sentence
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit e77adff0b7)
Co-authored-by: Kellin <kellin@retromud.org>
If `api_token` is not set and config file exists, it will try to fetch
the value from the activated profile and fallback on default.
This should not break existing workflows.
(cherry picked from commit cc458f7c37)
Co-authored-by: Nicolas Karolak <nikaro@users.noreply.github.com>
* Add option for retry_servfail
cf. https://dnspython.readthedocs.io/en/latest/resolver-class.html#dns.resolver.Resolver.retry_servfail
Setting this option to `True` allows for the possibility of the lookup plugin to retry and thereby recover from potentially transient lookup failures, which would otherwise cause the task or play to bail with an unrecoverable exception.
* Create 3247-retry_servfail-for-dig
* documentation for `retry_servfail` option
* Rename 3247-retry_servfail-for-dig to 3247-retry_servfail-for-dig.yaml
* fix whitespace
* Update plugins/lookup/dig.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/lookup/dig.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* rm try/except block
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
(cherry picked from commit 23e7ef0255)
Co-authored-by: Matt 'Archer' Vaughn <nethershaw@gmail.com>
* nmcli: Disallow Wi-Fi options not supported by nmcli
By querying nmcli directly
* Added changelog fragment
* Added tests
* Simplify `get_available_options()`
* Update changelogs/fragments/3141-disallow-options-unsupported-by-nmcli.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Remove redundant `802-11-wireless` settings from test show outputs
* Update `mocked_wireless_create(mocker)`
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Address comment re. creating function & use nmcli naming conventions
I.E. `setting`.`property` = `value`
```
nmcli> help set
set [<setting>.<prop> <value>] :: set property value
This command sets property value.
Example: nmcli> set con.id My connection
```
* Added `ignore_unsupported_suboptions` option & improved `wifi(_sec)` doc
* Corrected pep8 issues
```
ERROR: Found 2 pep8 issue(s) which need to be resolved:
ERROR: plugins/modules/net_tools/nmcli.py:342:161: E501: line too long
(236 > 160 characters)
ERROR: plugins/modules/net_tools/nmcli.py:359:161: E501: line too long
(237 > 160 characters)
```
* Fixed remaining sanity check issues and added even more docs
* No need to split Note
* Update plugins/modules/net_tools/nmcli.py
3.5.0 has already been released.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Followed uniformity guideline for format macros from Ansible's dev guide
* Addressed comment
https://github.com/ansible-collections/community.general/pull/3141#discussion_r689098383
* Documentation cleanup continuation
* Replace `NM_SETTING_*`s having a description with their numeric value
* Splitting up long paragraphs.
Also removed `wifi`.`seen-bssids` as it "`is only meant for reading`"
* Addressed remaining comments and clarified `wake-on-lan` note
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Finishing addressing documentation comments.
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/net_tools/nmcli.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update nmcli.py
* Added wifi-related `list` type options to `settings_type` method
* Moved `edit_commands` `execution` logic into its own method
* Move `unsupported_property` deletion into `main` function
* Missing `.items()`
* Resolved missing proper `nmcli conn edit` arguments
* Resolve pylint issue `dangerous-default-value`
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: David Hummel <dhummel@Fingerling>
(cherry picked from commit 8a62b79ef2)
Co-authored-by: David Hummel <6109326+hummeltech@users.noreply.github.com>
Use DomainPasswordGrantAuthorizer if parameter `domain` is used.
(cherry picked from commit bcccf4e388)
Co-authored-by: Martin Vician <vician@users.noreply.github.com>
* redfish_info: Include Status property for GetChassisThermals
Include Status property for Thermal objects when querying Thermal properties
via GetChassisThermals command.
FIXES#3232
* fixup for rename of fragments file
* Update changelogs/fragments/3233-include-thermal-sensor-status-via-redfish_info.yaml
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
(cherry picked from commit c7fccb2c01)
Co-authored-by: Jacob <jyundt@gmail.com>
* Added fix for bug report in issue #3192
* Added changelog fragment
* Typo fix
* Added Importerror to exception - as req by linters
* Moved the conditional import statement to try/except block
(cherry picked from commit 6ac410b3f6)
Co-authored-by: Ricky White <ricky@whitelionmedia.com>
* module_helper - implemented classmethod to start the module plus minor change
* rolled back the __changed__() method
* added changelog fragment
* Update plugins/module_utils/mh/base.py
Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
* no capt Piccards allowed in the base class
* removed extra piccards
Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
(cherry picked from commit 41101e55a0)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
- Fix a typo in the Linode inventory plugin unit tests
- Fix some style issues in descriptions where punctuation was missing
Signed-off-by: Kellin <kellin@retromud.org>
(cherry picked from commit fccae19177)
Co-authored-by: Kellin <kellin@retromud.org>
* refactor to vdo
* adjusted if condition
* added changelog fragment
* Update plugins/modules/system/vdo.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* adjustements per the PR
* more occurrences of bool compared with yes or no
* Update changelogs/fragments/3191-vdo-refactor.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 16945d3847)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* Add ipv4 example to linode inventory
* Update plugins/inventory/linode.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 432c891487)
Co-authored-by: Paul Hauner <paul@paulhauner.com>
* ini_file - prepare for fixing #273
- restructure tests
- fix error message call: fail_json() takes 1 positional argument but 2 were given
* ini_file - multiple values for one option (#273)
- add module option 'exclusive' (boolean) for the abbility to add
single option=value entries without overwriting existing options
with the same name but different values
- add abbility to define multiple options with the same name but
different values
* ini_file - add more tests for ini_file
* ini_file - fix sanity tests
* apply suggested changes:
- rename 03-regressions.yml to 03-encoding.yml
- fix typos
- fix documentation
* apply suggested changes:
- test errors also for result is failed
* apply suggested changes:
- make state=absent also work with module option exclusive
- add more tests for state=absent and module option exclusive
* fix sanity test:
- 02-values.yml:251:9: hyphens: too many spaces after hyphen
* apply proposed changes
* apply proposed changes from review
- adjust version_added to 3.6.0
- small syntax change in changelog fragment
(cherry picked from commit 25267b8094)
Co-authored-by: Daniel Ziegenberg <daniel@ziegenberg.at>
* Fix new devel sanity errors. (#3194)
(cherry picked from commit 1fec1d0c81)
* Add two more.
* Fix PR #.
Co-authored-by: Felix Fontein <felix@fontein.de>
* zypper: support transactional-updates
- Check if transactional updates are in use by checking for the
existence of /var/lib/misc/transactional-update.state
- Prefix zypper-commands with /sbin/transactional-update --continue --drop-if-no-change --quiet run
if this is the case
fixesansible-collections/community.general#3159
* re-add get_bin_path for executables
* fix typo
(cherry picked from commit 6033ce695b)
Co-authored-by: Sebastian <sebix@sebix.at>
* Support older version of psutil (RHEL7 and RHEL6)
The psutil python module is a true mess, they changed the API twice. The function arguments, as well as the objects that are returned.
The documentation does not make it clear which version supports what so the safest implementation is this waterfall approach.
A better approach would be to inspect the returned information, rather than trust a version, but that would not be any more efficient.
In the end it is better to have something that at least works out-of-the-box on all platforms than something that requires custom updates to system packages before it works as expected. Especially for something as basic as `pids`.
* A little bit more concise
* Apply suggestions from code review
* Add changelog fragment.
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit b5d6457611)
Co-authored-by: Dag Wieers <dag@wieers.com>
When a package name contains special characters (e.g. "g++"), they are
interpreted as part of the regexp.
This can lead to a crash with an error in the python re module, for
instance with "g++":
sre_constants.error: multiple repeat
Fix this by escaping the package name.
Co-authored-by: Baptiste Jonglez <git@bitsofnetworks.org>
(cherry picked from commit 56b5be0630)
Co-authored-by: zorun <github@bitsofnetworks.org>
This because it contains new changes, e.g. ignore development
environments for Python projects.
(cherry picked from commit 429359e977)
Co-authored-by: Roy Lenferink <lenferinkroy@gmail.com>
* fix empty-value vs. no-value inconsistency
* rename changelog fragment
* tests: omit value where there should be no value
* add integration tests
(cherry picked from commit 2831bc45f5)
Co-authored-by: quidame <quidame@poivron.org>
* nmcli: use `stdin` for setting private `wifi_sec` options
I.E.:
* `802-11-wireless-security.leap-password`
* `802-11-wireless-security.psk`
* `802-11-wireless-security.wep-key0`
* `802-11-wireless-security.wep-key1`
* `802-11-wireless-security.wep-key2`
* `802-11-wireless-security.wep-key3`
* Changelog fragement formatting.
* Update changelogs/fragments/3160-pass-wifi-secrets-via-stdin-to-nmcli-module.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Make `wifi_sec_secret_options()` into a constant
* Minor cleanup
`'set ' + key + ' ' + value`
=>
`'set %s %s' % (key, value)`
* Change `casing`
* Change `WIFI_SEC_SECRET_OPTIONS` from `list` to `tuple`
* Update `edit_connection()` to not reset `edit_commands`
It will just re`set` them if `edit_connection()` is called more than
once.
* Do not call `edit_connection()` if `connection_update(*)` fails
* Fixed `pep8` issue `E713` in tests
`test for membership should be 'not in'`
* Simplify `create_connection()`/`modify_connection()` logic
* `WIFI_SEC_SECRET_OPTIONS`=>`SECRET_OPTIONS`, options are prefixed
* Moved `if key in self.SECRET_OPTIONS` into `if value is not None` check
We don't need to do anything is the value is None
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 7f96b7df60)
Co-authored-by: David Hummel <6109326+hummeltech@users.noreply.github.com>
* Fixed `wifi_sec` option changes are not detected
Also updated `docs` URL and formatting to match that of the `wifi`
option
* Removed extraneous `appends` to `cmd` in `connection_update`
These really should have only been added to `connection_options` whose
return values get `extended` onto `cmd`
(cherry picked from commit 6bfa6e40f4)
Co-authored-by: David Hummel <6109326+hummeltech@users.noreply.github.com>
* Update AZP config.
* Skip 8.4 as well for django_manage (next to 8.3 and 8.2).
* Temporarily skip 8.4 for yum_versionlock.
(cherry picked from commit 16476f5cb9)
Co-authored-by: Felix Fontein <felix@fontein.de>
* Updated the plugin to reflect breaking changes introduced in the underlying SDK v1.0.0 update.
* Added Changelog fragment
* Updates based on feedback/review
* Added newline to pass CI
* Added whitepace for linter
* Update changelogs/fragments/3139-tss-lookup-plugin-update-to-make-compatible-with-sdk-v1.yml
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
(cherry picked from commit a73720c103)
Co-authored-by: Ricky White <rickywhite@outlook.com>
* For #3134
Expose BootOverrideMode parameter to redfish_command to allow setting by user during run.
* Fix trailing whitespace
* Add changelog fragment to contribution.
* Update changelogs/fragments/3135-add-redfish_command-bootoverridemode.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/remote_management/redfish/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/remote_management/redfish/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/remote_management/redfish/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/remote_management/redfish/redfish_command.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/3135-add-redfish_command-bootoverridemode.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 75688cb632)
Co-authored-by: Scott Seekamp <sylgeist@users.noreply.github.com>
* added utf-8 markers to all .py files in plugins/{action,cache,callback}
* added utf-8 markers to all .py files in plugins/connection
* added utf-8 markers to all .py files in plugins/doc_fragments
(cherry picked from commit 73c27d6a0e)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* added utf-8 markers to all .py files in plugins/filter
* added utf-8 markers to all .py files in plugins/inventory
* added utf-8 markers to all .py files in plugins/lookup
(cherry picked from commit 047b7ada3c)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* report power state of host
* Modify sample information
* add changelog fragment
* apply feedback from github community
* apply feedback
Co-authored-by: Yvan E. Watchman <git@yvanwatchman.eu>
(cherry picked from commit 9ccce82113)
Co-authored-by: Yvan Watchman <ik@yvanwatchman.eu>
* multiple improvements
* added changelog fragment
* comment and name in int test files
* added notes to the documentation
* removed the extraneous changelog frag
* Update plugins/modules/web_infrastructure/apache2_module.py
* adjusted doc text for sanity check
* Update plugins/modules/web_infrastructure/apache2_module.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* removed extraneous dependency in integration test
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit d9533c44aa)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* initial commit
* multiple changes:
- added a proper process_command_output()
- adjusted the output_params fields (and removed other *_params fields)
* added RETURN documentation, plus few adjustments
* fixed sanity tests
* updated BOTMETA.yml
* further adjustments
* integration tests - first commit
* removed unused files from integration test
* added role installation tests
* removed extraneous cmd line option
* added requirement-file installation tests
* adjusted documentation and output variable names
* fixed integration test
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update tests/integration/targets/ansible_galaxy_install/aliases
Co-authored-by: Felix Fontein <felix@fontein.de>
* Per comments in the PR:
- fixed missing paths case
- fixed install parsing (regexp) for ansible-galaxy collection install in v2.10
* changed the collection installed in test to something unlikely to come embedded in Ansible itself
* fixed logic for Ansible 2.9
* kill trailing whitespace
* changed default language from C.UTF-8 to en_US.UTF-8
* updated c.g version
* skipping test in python 2.6, as ansible-galaxy no longer supports it in devel
* Multiple changes:
- improved docs on ansible 2.9 and python 2.6
- removed method __changed__() - unnecessary since tracking changes in the ansible29_change var
- renamed methods __run29__() and __run210plus__() to __setup29__() and __setup210plus__(), respectively
- ansible 2.9 warning for requirements_file only when type is "both"
* sanity fix
* further adjustments
* removed extraneous doc
* changed method to determine remote ansible version
* do not allow type=both in Ansible 2.9
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/language/ansible_galaxy_install.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* changed method names per PR
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 2935b011ed)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* minor refactoring in gunicorn module
* added changelog fragment
* reworked the gunicorn bin path part of the code, per PR
* Update changelogs/fragments/3092-gunicorn-refactor.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 549dfaae64)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* django_manage - using list instead of string in run_command()
* added changelog fragment
(cherry picked from commit 0b70b3baff)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* More BOTMETA improvements.
* Improve BOTMETA test, start reporting missing entries for new plugins/modules.
* Add instructions for creating new plugins and modules.
(cherry picked from commit 024e7419da)
Co-authored-by: Felix Fontein <felix@fontein.de>
* import certificate+key bundle from pkcs12
* fix typo/syntax
* fix variable name
* fix passwords order and improve error handling
* add changelog fragment
* enter keystore pass only once if keystore already exists, and twice at creation
* nomalize tests
- Replace `command` tasks by dedicated (community.crypto) modules.
- Add spaces around jinja2 variable names.
- Call modules by their FQCNs.
* Add tests to check keystore has a private key
fix tests for RedHat/CentOS < 8 (run openssl command as an alternative to
`openssl_pkcs12` module)
(cherry picked from commit 21d5668c97)
Co-authored-by: quidame <quidame@poivron.org>
* Clone sucess should return new vm id, not id from cloned vm.
* add changelog fragment
* Update changelogs/fragments/3034-promox-kvm-return-new-id.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Yvan E. Watchman <git@yvanwatchman.eu>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit ac03881002)
Co-authored-by: Yvan Watchman <ik@yvanwatchman.eu>
* Initial commit
* Fixing units and path joins
* Ensuring paths are consistently ordered
* Adding changelog fragment
* Using os.path.join to ensure trailing slashes are present
* optimizing use of root in add_targets
* Applying initial review suggestions
(cherry picked from commit 31189e9645)
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
* Don't know why this works but it does.
Plugin was crashing on this line on Python 3.9.2 deployed on qemu image with debian bullseye. It doesn't crash anymore.
* Create 3052_proxmox_inventory_plugin.yml
* Update changelogs/fragments/3052_proxmox_inventory_plugin.yml
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
(cherry picked from commit 99c28313e4)
Co-authored-by: The Right Honourable Reverend <samueljsmith@gmail.com>
* Added module for creating protected branches
* Applied some changes due to comments and added a test that currently fails
* Changing no_access to nobody due to comment on PR
* Changing the description to clarify it a bit more
* Added working tests for module 'gitlab_protected_branch'
* Fixing lint issues
* Added doc that minimum of v2.3.0 is needed to work correctly
* Fixed the requirements notation
* Check the version of the module
* Hopefully fixed the tests by skipping it when lower version of 2.3.0 is installed
* Fix lint issues
* Applying changes due to comments in PR
* Remove commented code
* Removing the trailing dot ...
Co-authored-by: jenkins-x-bot <jenkins-x@googlegroups.com>
Co-authored-by: Werner Dijkerman <iam@werner-dijkerman.nl>
(cherry picked from commit 7734430f23)
Co-authored-by: Werner Dijkerman <werner@dj-wasabi.nl>
* Add extra sanity test to check aliases files.
* Remove invalid target name.
(cherry picked from commit 27ba98a68e)
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed pamd single line issue
* added changelog fragment
* supported case for 0 lines, improved test
(cherry picked from commit a3a40f6de3)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* added feature flag to control whether CmdMixin adds rc, out and err to the result of the module
* added changelog fragment
* changed from a global flag to parameters in run_command
* updated changelog
* fixed brainless copy-paste of yours truly
(cherry picked from commit c5cbe2943b)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
* extend support for FreeBSD
* Check if FS exists with `fstyp` if `blkid` fails to find FS signature
(fix a potential data loss)
* Add support for FreeBSD special devices (character devices).
* Add support for FreeBSD native fstype (UFS).
* Update DOCUMENTATION accordingly.
* add/update integration tests
* Add tests for `fstype=ufs` on FreeBSD.
* Run `remove_fs` tests (`state=absent`) on FreeBSD.
* Run `overwrite_another_fs` tests on FreeBSD.
* add a changelog fragment
* fix indentation
* restrict new tests to regular files
* fix typo
* fix searching of providersize (block count)
* add '-y' option to growfs command
* remove references to versions older than the collection itself
* bump version adding new feats to 3.4.0
* reformat *collection* and *version added* for better DOCUMENTATION parsing
* skip tests for FreeBSD < 12.2
* run tests for FreeBSD >= 12.2
* re-enable tests for FreeBSD < 12.2 and give it a try with group1
* util-linux not available on FreeBSD < 12.2
(cherry picked from commit 9023d4dba1)
Co-authored-by: quidame <quidame@poivron.org>
* replaced use of expanduser() with value from HOME var
* fixed sanity check
* added changelog fragment
(cherry picked from commit 1990f79d8a)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
aminvakil is no longer involved with the Ansible Community due to United
States export controls and economic sanctions laws apply to U.S.
persons, entities, and controlled software and technology that is of
U.S. origin or that enters the U.S., including open source software.
(cherry picked from commit 518ace2562)
* Add authentication_flow_binding_overrides option to the keycloak_client module
* Add changelog fragment
* Update changelogs/fragments/2949-add_authentication-flow-binding_keycloak-client.yml
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>
* Add unit test authentication_flow_binding_overrides feature on keycloak_client module
Co-authored-by: Amin Vakil <info@aminvakil.com>
(cherry picked from commit 1b80a9c587)
Co-authored-by: Gaetan2907 <48204380+Gaetan2907@users.noreply.github.com>
* pacman: fix returned code when ignorepkg has been defined
* add changelog
* make ignored check preciser
(cherry picked from commit c0740ca398)
Co-authored-by: Amin Vakil <info@aminvakil.com>
* lvol: support check_mode on thinpool
* add changelog
* Add %s when needed
* correct changelog sentence
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit b2b4877532)
Co-authored-by: Amin Vakil <info@aminvakil.com>
* fixed param order
* added changelog fragment
* rebased and uncommented tests per PR
* added /snap link in RH
* typo in tests
* Update tests/integration/targets/snap/tasks/default.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 9b02230477)
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
correctly handle cases where a dependency does not have a `version` property because it is either missing or invalid
(cherry picked from commit a0915036f9)
Co-authored-by: Shahar Mor <shaharmor1@gmail.com>
* Add integration test for classic snap
* Add comments and check remove without classic
* Comment new tests for now
(cherry picked from commit 00aa1250ee)
Co-authored-by: Amin Vakil <info@aminvakil.com>
* Try some snap fixes.
* Fix logic.
* Try to run tests privileged.
* Prevent failure on rc != 0.
* Fix formatting.
* Revert "Try to run tests privileged."
This reverts commit 77ca91f502.
* Try to run tests on RHEL instead.
* Make sure that snapd is running.
* Add changelog fragment.
* str -> to_native.
* Make sure that installed binary is actually found.
* Add check mode tests.
* Mention #2835 in changelog fragment.
(cherry picked from commit c63dc624b7)
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix bug when 2 identical executions in same auth flow
* Add changelog fragment
* Fix unit tests
* Update changelogs/fragments/2904-fix-bug-when-2-identical-executions-in-same-auth-flow.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 0e829e6a23)
Co-authored-by: Gaetan2907 <48204380+Gaetan2907@users.noreply.github.com>
* Add integration tests for snap
* Also test on fedora and remove snapd if it was not installed
* disable test for now
(cherry picked from commit a97d82be88)
Co-authored-by: Amin Vakil <info@aminvakil.com>
This changelog describes changes after version 2.0.0.
v3.8.10
=======
Release Summary
---------------
Final maintenance release of community.general major version 3.
Major Changes
-------------
- The community.general 3.x.y release stream is now effectively **End of Life**. No more releases will be made, and regular CI runs will stop.
Bugfixes
--------
- xenserver_facts - fix broken ``AnsibleModule`` call that prevented the module from working at all (https://github.com/ansible-collections/community.general/pull/5383).
v3.8.9
======
Release Summary
---------------
Maintenance release.
Minor Changes
-------------
- Added MIT license as ``MIT-license.txt`` for ``tests/unit/plugins/modules/packaging/language/test_gem.py`` (https://github.com/ansible-collections/community.general/pull/5065, https://github.com/ansible-collections/community.general/pull/5072).
v3.8.8
======
Release Summary
---------------
Maintenance and bugfix release.
Bugfixes
--------
- Include ``simplified_bsd.txt`` license file for various module utils, the ``lxca_common`` docs fragment, and the ``utm_utils`` unit tests.
- consul - fixed bug introduced in PR 4590 (https://github.com/ansible-collections/community.general/issues/4680).
v3.8.7
======
Release Summary
---------------
Regular maintenance release.
Major Changes
-------------
- The community.general 3.x.y release stream will from now on only receive major bugfixes and security fixes. There will be no more regular bugfix releases, or regular bugfixes backported to the ``stable-3`` branch.
Bugfixes
--------
- Include ``PSF-license.txt`` file for ``plugins/module_utils/_version.py``.
- consul - fixed bug where class ``ConsulService`` was overwriting the field ``checks``, preventing the addition of checks to a service (https://github.com/ansible-collections/community.general/pull/4590).
- dnsmadeeasy - fix failure on deleting DNS entries when API response does not contain monitor value (https://github.com/ansible-collections/community.general/issues/3620).
- gconftool2 - properly escape values when passing them to ``gconftool-2`` (https://github.com/ansible-collections/community.general/pull/4647).
- keycloak - fix parameters types for ``defaultDefaultClientScopes`` and ``defaultOptionalClientScopes`` from list of dictionaries to list of strings (https://github.com/ansible-collections/community.general/pull/4526).
- onepassword - search all valid configuration locations and use the first found (https://github.com/ansible-collections/community.general/pull/4640).
- opentelemetry callback plugin - fix warning for the include_tasks (https://github.com/ansible-collections/community.general/pull/4623).
- pritunl - fixed bug where pritunl plugin api add unneeded data in ``auth_string`` parameter (https://github.com/ansible-collections/community.general/issues/4527).
- terraform - fix list initialization to support both Python 2 and Python 3 (https://github.com/ansible-collections/community.general/issues/4531).
- xbps - fix error message that is reported when installing packages fails (https://github.com/ansible-collections/community.general/pull/4438).
v3.8.6
======
Release Summary
---------------
Regular bugfix release.
Bugfixes
--------
- dsv lookup plugin - raise an Ansible error if the wrong ``python-dsv-sdk`` version is installed (https://github.com/ansible-collections/community.general/pull/4422).
- filesize - add support for busybox dd implementation, that is used by default on Alpine linux (https://github.com/ansible-collections/community.general/pull/4288, https://github.com/ansible-collections/community.general/issues/4259).
- proxmox inventory plugin - always convert strings that follow the ``key=value[,key=value[...]]`` form into dictionaries (https://github.com/ansible-collections/community.general/pull/4349).
- proxmox inventory plugin - fixed the ``description`` field being ignored if it contained a comma (https://github.com/ansible-collections/community.general/issues/4348).
- zypper - fixed bug that caused zypper to always report [ok] and do nothing on ``state=present`` when all packages in ``name`` had a version specification (https://github.com/ansible-collections/community.general/issues/4371, https://github.com/ansible-collections/community.general/pull/4421).
v3.8.5
======
Release Summary
---------------
Regular bugfix release.
Bugfixes
--------
- dconf - skip processes that disappeared while we inspected them (https://github.com/ansible-collections/community.general/issues/4151).
- gitlab_runner - use correct API endpoint to create and retrieve project level runners when using ``project`` (https://github.com/ansible-collections/community.general/pull/3965).
- homebrew_cask - fix force install operation (https://github.com/ansible-collections/community.general/issues/3703).
- imc_rest - fixes the module failure due to the usage of ``itertools.izip_longest`` which is not available in Python 3 (https://github.com/ansible-collections/community.general/issues/4206).
- ini_file - when removing nothing do not report changed (https://github.com/ansible-collections/community.general/issues/4154).
- keycloak_user_federation - creating a user federation while specifying an ID (that does not exist yet) no longer fail with a 404 Not Found (https://github.com/ansible-collections/community.general/pull/4212).
- keycloak_user_federation - mappers auto-created by keycloak are matched and merged by their name and no longer create duplicated entries (https://github.com/ansible-collections/community.general/pull/4212).
- mail callback plugin - fix crash on Python 3 (https://github.com/ansible-collections/community.general/issues/4025, https://github.com/ansible-collections/community.general/pull/4026).
- passwordstore lookup plugin - prevent returning path names as passwords by accident (https://github.com/ansible-collections/community.general/issues/4185, https://github.com/ansible-collections/community.general/pull/4192).
- python_requirements_info - store ``mismatched`` return values per package as documented in the module (https://github.com/ansible-collections/community.general/pull/4078).
- yarn - fix incorrect handling of ``yarn list`` and ``yarn global list`` output that could result in fatal error (https://github.com/ansible-collections/community.general/pull/4050).
- yarn - fix incorrectly reported status when installing a package globally (https://github.com/ansible-collections/community.general/issues/4045, https://github.com/ansible-collections/community.general/pull/4050).
- yarn - fix missing ``~`` expansion in yarn global install folder which resulted in incorrect task status (https://github.com/ansible-collections/community.general/issues/4045, https://github.com/ansible-collections/community.general/pull/4048).
- yum_versionlock - fix matching of existing entries with names passed to the module. Match yum and dnf lock format (https://github.com/ansible-collections/community.general/pull/4183).
v3.8.4
======
Release Summary
---------------
Regular bugfix release.
Bugfixes
--------
- Various modules and plugins - use vendored version of ``distutils.version`` instead of the deprecated Python standard library ``distutils`` (https://github.com/ansible-collections/community.general/pull/3936).
- alternatives - fix output parsing for alternatives groups (https://github.com/ansible-collections/community.general/pull/3976).
- jail connection plugin - replace deprecated ``distutils.spawn.find_executable`` with Ansible's ``get_bin_path`` to find the executable (https://github.com/ansible-collections/community.general/pull/3934).
- jira - fixed bug where module returns error related to dictionary key ``body`` (https://github.com/ansible-collections/community.general/issues/3419).
- lxd connection plugin - replace deprecated ``distutils.spawn.find_executable`` with Ansible's ``get_bin_path`` to find the ``lxc`` executable (https://github.com/ansible-collections/community.general/pull/3934).
- nrdp callback plugin - fix error ``string arguments without an encoding`` (https://github.com/ansible-collections/community.general/issues/3903).
- passwordstore lookup plugin - replace deprecated ``distutils.util.strtobool`` with Ansible's ``convert_bool.boolean`` to interpret values for the ``create``, ``returnall``, ``overwrite``, 'backup``, and ``nosymbols`` options (https://github.com/ansible-collections/community.general/pull/3934).
- say callback plugin - replace deprecated ``distutils.spawn.find_executable`` with Ansible's ``get_bin_path`` to find the ``say`` resp. ``espeak`` executables (https://github.com/ansible-collections/community.general/pull/3934).
- scaleway_user_data - fix double-quote added where no double-quote is needed to user data in scaleway's server (``Content-type`` -> ``Content-Type``) (https://github.com/ansible-collections/community.general/pull/3940).
- slack - add ``charset`` to HTTP headers to avoid Slack API warning (https://github.com/ansible-collections/community.general/issues/3932).
- zone connection plugin - replace deprecated ``distutils.spawn.find_executable`` with Ansible's ``get_bin_path`` to find the executable (https://github.com/ansible-collections/community.general/pull/3934).
v3.8.3
======
Release Summary
---------------
Regular bugfix release.
Minor Changes
-------------
- lxd connection plugin - make sure that ``ansible_lxd_host``, ``ansible_executable``, and ``ansible_lxd_executable`` work (https://github.com/ansible-collections/community.general/pull/3798).
Bugfixes
--------
- interfaces_file - fixed the check for existing option in interface (https://github.com/ansible-collections/community.general/issues/3841).
- nmcli - fix returning "changed" when no mask set for IPv4 or IPv6 addresses on task rerun (https://github.com/ansible-collections/community.general/issues/3768).
- opentelemetry_plugin - honour ``ignore_errors`` when a task has failed instead of reporting an error (https://github.com/ansible-collections/community.general/pull/3837).
- pipx - passes the correct command line option ``--include-apps`` (https://github.com/ansible-collections/community.general/issues/3791).
- counter_enabled callback plugin - fix output to correctly display host and task counters in serial mode (https://github.com/ansible-collections/community.general/pull/3709).
- ldap_search - allow it to be used even in check mode (https://github.com/ansible-collections/community.general/issues/3619).
- lvol - allows logical volumes to be created with certain size arguments prefixed with ``+`` to preserve behavior of older versions of this module (https://github.com/ansible-collections/community.general/issues/3665).
- nmcli - fixed falsely reported changed status when ``mtu`` is omitted with ``dummy`` connections (https://github.com/ansible-collections/community.general/issues/3612, https://github.com/ansible-collections/community.general/pull/3625).
- terraform - fix command options being ignored during planned/plan in function ``build_plan`` such as ``lock`` or ``lock_timeout`` (https://github.com/ansible-collections/community.general/issues/3707, https://github.com/ansible-collections/community.general/pull/3726).
- xattr - fix exception caused by ``_run_xattr()`` raising a ``ValueError`` due to a mishandling of base64-encoded value (https://github.com/ansible-collections/community.general/issues/3673).
v3.8.1
======
Release Summary
---------------
Regular bugfix release.
Bugfixes
--------
- gitlab_deploy_key - fix the SSH Deploy Key being deleted accidentally while running task in check mode (https://github.com/ansible-collections/community.general/issues/3621, https://github.com/ansible-collections/community.general/pull/3622).
- gitlab_project_members - ``get_project_id`` return the project id by matching ``full_path`` or ``name`` (https://github.com/ansible-collections/community.general/pull/3602).
- nmcli - fixed ``dns6`` option handling so that it is treated as a list internally (https://github.com/ansible-collections/community.general/pull/3563).
- nmcli - fixed ``ipv4.route-metric`` being in properties of type list (https://github.com/ansible-collections/community.general/pull/3563).
- one_image - fix error message when renaming an image (https://github.com/ansible-collections/community.general/pull/3626).
- pipx - ``state=inject`` was failing to parse the list of injected packages (https://github.com/ansible-collections/community.general/pull/3611).
- pipx - set environment variable ``USE_EMOJI=0`` to prevent errors in platforms that do not support ``UTF-8`` (https://github.com/ansible-collections/community.general/pull/3611).
- pkgin - Fix exception encountered when all packages are already installed (https://github.com/ansible-collections/community.general/pull/3583).
- proxmox_group_info - fix module crash if a ``group`` parameter is used (https://github.com/ansible-collections/community.general/pull/3649).
- redfish_utils module utils - do not attempt to change the boot source override mode if not specified by the user (https://github.com/ansible-collections/community.general/issues/3509/).
- redfish_utils module utils - if a manager network property is not specified in the service, attempt to change the requested settings (https://github.com/ansible-collections/community.general/issues/3404/).
v3.8.0
======
Release Summary
---------------
Regular feature and bugfix release. Please note that this is the last minor 3.x.0 release; afterwards there will only be bugfix releases 3.8.y.
Minor Changes
-------------
- mail - added the ``ehlohost`` parameter which allows for manual override of the host used in SMTP EHLO (https://github.com/ansible-collections/community.general/pull/3425).
- nmcli - the option ``routing_rules4`` can now be specified as a list of strings, instead of as a single string (https://github.com/ansible-collections/community.general/issues/3401).
- open-iscsi - adding support for mutual authentication between target and initiator (https://github.com/ansible-collections/community.general/pull/3422).
- opentelemetry callback plugin - added option ``enable_from_environment`` to support enabling the plugin only if the given environment variable exists and it is set to true (https://github.com/ansible-collections/community.general/pull/3498).
- opentelemetry callback plugin - enriched the stacktrace information with the ``message``, ``exception`` and ``stderr`` fields from the failed task (https://github.com/ansible-collections/community.general/pull/3496).
- pkgng - packages being installed (or upgraded) are acted on in one command (per action) (https://github.com/ansible-collections/community.general/issues/2265).
- pkgng - status message specifies number of packages installed and/or upgraded separately. Previously, all changes were reported as one count of packages "added" (https://github.com/ansible-collections/community.general/pull/3393).
- ufw - if ``delete=true`` and ``insert`` option is present, then ``insert`` is now ignored rather than failing with a syntax error (https://github.com/ansible-collections/community.general/pull/3514).
Bugfixes
--------
- gitlab_deploy_key - fix idempotency on projects with multiple deploy keys (https://github.com/ansible-collections/community.general/pull/3473).
- gitlab_group - avoid passing wrong value for ``require_two_factor_authentication`` on creation when the option has not been specified (https://github.com/ansible-collections/community.general/pull/3453).
- gitlab_group_members - ``get_group_id`` return the group ID by matching ``full_path``, ``path`` or ``name`` (https://github.com/ansible-collections/community.general/pull/3400).
- jboss - fix the deployment file permission issue when Jboss server is running under non-root user. The deployment file is copied with file content only. The file permission is set to ``440`` and belongs to root user. When the JBoss ``WildFly`` server is running under non-root user, it is unable to read the deployment file (https://github.com/ansible-collections/community.general/pull/3426).
- keycloak_authentication - fix bug, the requirement was always on ``DISABLED`` when creating a new authentication flow (https://github.com/ansible-collections/community.general/pull/3330).
- keycloak_role - quote role name when used in URL path to avoid errors when role names contain special characters (https://github.com/ansible-collections/community.general/issues/3535, https://github.com/ansible-collections/community.general/pull/3536).
- logstash callback plugin - replace ``_option`` with ``context.CLIARGS`` to fix the plugin on ansible-base and ansible-core (https://github.com/ansible-collections/community.general/issues/2692).
- macports - add ``stdout`` and ``stderr`` to return values (https://github.com/ansible-collections/community.general/issues/3499).
- opentelemetry callback plugin - validated the task result exception without crashing. Also simplifying code a bit (https://github.com/ansible-collections/community.general/pull/3450, https://github.com/ansible/ansible/issues/75726).
- yaml callback plugin - avoid modifying PyYAML so that other plugins using it on the controller, like the ``to_yaml`` filter, do not produce different output (https://github.com/ansible-collections/community.general/issues/3471, https://github.com/ansible-collections/community.general/pull/3478).
- zypper_repository - when an URL to a .repo file was provided in option ``repo=`` and ``state=present`` only the first run was successful, future runs failed due to missing checks prior starting zypper. Usage of ``state=absent`` in combination with a .repo file was not working either (https://github.com/ansible-collections/community.general/issues/1791, https://github.com/ansible-collections/community.general/issues/3466).
New Plugins
-----------
Callback
~~~~~~~~
- elastic - Create distributed traces for each Ansible task in Elastic APM
Inventory
~~~~~~~~~
- opennebula - OpenNebula inventory source
New Modules
-----------
Cloud
~~~~~
misc
^^^^
- proxmox_tasks_info - Retrieve information about one or more Proxmox VE tasks
Packaging
~~~~~~~~~
language
^^^^^^^^
- pipx - Manages applications installed with pipx
Web Infrastructure
~~~~~~~~~~~~~~~~~~
- rundeck_job_executions_info - Query executions for a Rundeck job
- rundeck_job_run - Run a Rundeck job
v3.7.0
======
Release Summary
---------------
Regular feature and bugfix release.
Minor Changes
-------------
- gitlab_group - add new options ``project_creation_level``, ``auto_devops_enabled``, ``subgroup_creation_level`` (https://github.com/ansible-collections/community.general/pull/3248).
- gitlab_group - add new property ``require_two_factor_authentication`` (https://github.com/ansible-collections/community.general/pull/3367).
- gitlab_project - add new properties ``ci_config_path`` and ``shared_runners_enabled`` (https://github.com/ansible-collections/community.general/pull/3379).
- gitlab_project_members - ``gitlab_user`` can now also be a list of users (https://github.com/ansible-collections/community.general/pull/3319).
- gitlab_project_members - added functionality to set all members exactly as given (https://github.com/ansible-collections/community.general/pull/3319).
- gitlab_runner - support project-scoped gitlab.com runners registration (https://github.com/ansible-collections/community.general/pull/634).
- interfaces_file - minor refactor (https://github.com/ansible-collections/community.general/pull/3328).
- ipa_config - add ``ipaselinuxusermaporder`` option to set the SELinux user map order (https://github.com/ansible-collections/community.general/pull/3178).
- kernel_blacklist - revamped the module using ``ModuleHelper`` (https://github.com/ansible-collections/community.general/pull/3329).
- lxd_container - add ``ignore_volatile_options`` option which allows to disable the behavior that the module ignores options starting with ``volatile.`` (https://github.com/ansible-collections/community.general/pull/3331).
- nmcli - add ``gsm`` support (https://github.com/ansible-collections/community.general/pull/3313).
- pids - refactor to add support for older ``psutil`` versions to the ``pattern`` option (https://github.com/ansible-collections/community.general/pull/3315).
- redfish_command and redfish_config and redfish_utils module utils - add parameter to strip etag of quotes before patch, since some vendors do not properly ``If-Match`` etag with quotes (https://github.com/ansible-collections/community.general/pull/3296).
- tss lookup plugin - added ``token`` parameter for token authorization; ``username`` and ``password`` are optional when ``token`` is provided (https://github.com/ansible-collections/community.general/pull/3327).
- zpool_facts - minor refactoring (https://github.com/ansible-collections/community.general/pull/3332).
- django_manage - parameters ``apps`` and ``fixtures`` are now splitted instead of being used as a single argument (https://github.com/ansible-collections/community.general/issues/3333).
- interfaces_file - no longer reporting change when none happened (https://github.com/ansible-collections/community.general/pull/3328).
- linode inventory plugin - fix default value of new option ``ip_style`` (https://github.com/ansible-collections/community.general/issues/3337).
- openbsd_pkg - fix crash from ``KeyError`` exception when package installs, but ``pkg_add`` returns with a non-zero exit code (https://github.com/ansible-collections/community.general/pull/3336).
- redfish_utils module utils - if given, add account ID of user that should be created to HTTP request (https://github.com/ansible-collections/community.general/pull/3343/).
New Plugins
-----------
Callback
~~~~~~~~
- opentelemetry - Create distributed traces with OpenTelemetry
Filter
~~~~~~
- unicode_normalize - Normalizes unicode strings to facilitate comparison of characters with normalized forms
Inventory
~~~~~~~~~
- icinga2 - Icinga2 inventory source
New Modules
-----------
Database
~~~~~~~~
misc
^^^^
- redis_data - Set key value pairs in Redis
- redis_data_info - Get value of key in Redis database
Identity
~~~~~~~~
keycloak
^^^^^^^^
- keycloak_user_federation - Allows administration of Keycloak user federations via Keycloak API
- gitlab_group_members - ``gitlab_user`` can now also be a list of users (https://github.com/ansible-collections/community.general/pull/3047).
- gitlab_group_members - added functionality to set all members exactly as given (https://github.com/ansible-collections/community.general/pull/3047).
- ini_file - add abbility to define multiple options with the same name but different values (https://github.com/ansible-collections/community.general/issues/273, https://github.com/ansible-collections/community.general/issues/1204).
- ini_file - add module option ``exclusive`` (boolean) for the ability to add/remove single ``option=value`` entries without overwriting existing options with the same name but different values (https://github.com/ansible-collections/community.general/pull/3033).
- keycloak_realm - add ``events_enabled`` parameter to allow activation or deactivation of login events (https://github.com/ansible-collections/community.general/pull/3231).
- linode inventory plugin - adds the ``ip_style`` configuration key. Set to ``api`` to get more detailed network details back from the remote Linode host (https://github.com/ansible-collections/community.general/pull/3203).
- module_helper cmd module utils - added the ``ArgFormat`` style ``BOOLEAN_NOT``, to add CLI parameters when the module argument is false-ish (https://github.com/ansible-collections/community.general/pull/3290).
- module_helper module_utils - added classmethod to trigger the execution of MH modules (https://github.com/ansible-collections/community.general/pull/3206).
- nmcli - add ``gre`` tunnel support (https://github.com/ansible-collections/community.general/issues/3105, https://github.com/ansible-collections/community.general/pull/3262).
- nmcli - query ``nmcli`` directly to determine available WiFi options (https://github.com/ansible-collections/community.general/pull/3141).
- open_iscsi - minor refactoring (https://github.com/ansible-collections/community.general/pull/3286).
- openwrt_init - minor refactoring (https://github.com/ansible-collections/community.general/pull/3284).
- pamd - minor refactorings (https://github.com/ansible-collections/community.general/pull/3285).
- redfish_info - include ``Status`` property for Thermal objects when querying Thermal properties via ``GetChassisThermals`` command (https://github.com/ansible-collections/community.general/issues/3232).
- slack - minor refactoring (https://github.com/ansible-collections/community.general/pull/3205).
- snap - improved module error handling, especially for the case when snap server is down (https://github.com/ansible-collections/community.general/issues/2970).
- tss lookup plugin - added new parameter for domain authorization (https://github.com/ansible-collections/community.general/pull/3228).
- tss lookup plugin - refactored to decouple the supporting third-party library (``python-tss-sdk``) (https://github.com/ansible-collections/community.general/pull/3252).
- vdo - minor refactoring of the code (https://github.com/ansible-collections/community.general/pull/3191).
- zfs - added diff mode support (https://github.com/ansible-collections/community.general/pull/502).
- zypper - prefix zypper commands with ``/sbin/transactional-update --continue --drop-if-no-change --quiet run`` if transactional updates are detected (https://github.com/ansible-collections/community.general/issues/3159).
Bugfixes
--------
- apache2_module - fix ``a2enmod``/``a2dismod`` detection, and error message when not found (https://github.com/ansible-collections/community.general/issues/3253).
- django_manage - argument ``command`` is being splitted again as it should (https://github.com/ansible-collections/community.general/issues/3215).
- keycloak_realm - element type for ``events_listeners`` parameter should be ``string`` instead of ``dict`` (https://github.com/ansible-collections/community.general/pull/3231).
- launchd - use private attribute to fix sanity errors (https://github.com/ansible-collections/community.general/pull/3194).
- open_iscsi - calling ``run_command`` with arguments as ``list`` instead of ``str`` (https://github.com/ansible-collections/community.general/pull/3286).
- openwrt_init - calling ``run_command`` with arguments as ``list`` instead of ``str`` (https://github.com/ansible-collections/community.general/pull/3284).
- packet_device - use generator to fix sanity errors (https://github.com/ansible-collections/community.general/pull/3194).
- packet_sshkey - use generator to fix sanity errors (https://github.com/ansible-collections/community.general/pull/3194).
- pamd - code for ``state=updated`` when dealing with the pam module arguments, made no distinction between ``None`` and an empty list (https://github.com/ansible-collections/community.general/issues/3260).
- proxmox_kvm - clone operation should return the VMID of the target VM and not that of the source VM. This was failing when the target VM with the chosen name already existed (https://github.com/ansible-collections/community.general/pull/3266).
- saltstack connection plugin - fix function signature (https://github.com/ansible-collections/community.general/pull/3194).
- tss lookup plugin - fixed backwards compatibility issue with ``python-tss-sdk`` version <=0.0.5 (https://github.com/ansible-collections/community.general/issues/3192, https://github.com/ansible-collections/community.general/pull/3199).
- udm_dns_record - fixed managing of PTR records, which can never have worked before (https://github.com/ansible-collections/community.general/pull/3256).
- ufw - use generator to fix sanity errors (https://github.com/ansible-collections/community.general/pull/3194).
- vbox inventory script - change function argument name to fix sanity errors (https://github.com/ansible-collections/community.general/pull/3195).
- vdo - boolean arguments now compared with proper ``true`` and ``false`` values instead of string representations like ``"yes"`` or ``"no"`` (https://github.com/ansible-collections/community.general/pull/3191).
- zfs - treated received properties as local (https://github.com/ansible-collections/community.general/pull/502).
New Modules
-----------
Identity
~~~~~~~~
keycloak
^^^^^^^^
- keycloak_identity_provider - Allows administration of Keycloak identity providers via Keycloak API
v3.5.0
======
Release Summary
---------------
Regular bugfix and feature release.
Minor Changes
-------------
- apache2_module - minor refactoring improving code quality, readability and speed (https://github.com/ansible-collections/community.general/pull/3106).
- dnsimple - module rewrite to include support for python-dnsimple>=2.0.0; also add ``sandbox`` parameter (https://github.com/ansible-collections/community.general/pull/2946).
- github_repo - add new option ``api_url`` to allow working with on premises installations (https://github.com/ansible-collections/community.general/pull/3038).
- gunicorn - search for ``gunicorn`` binary in more paths (https://github.com/ansible-collections/community.general/pull/3092).
- hana_query - added the abillity to use hdbuserstore (https://github.com/ansible-collections/community.general/pull/3125).
- hpilo_info - added ``host_power_status`` return value to report power state of machine with ``OFF``, ``ON`` or ``UNKNOWN`` (https://github.com/ansible-collections/community.general/pull/3079).
- nmcli - add ``dummy`` interface support (https://github.com/ansible-collections/community.general/issues/724).
- nmcli - add ``wifi-sec`` option change detection to support managing secure Wi-Fi connections (https://github.com/ansible-collections/community.general/pull/3136).
- nmcli - add ``wifi`` option to support managing Wi-Fi settings such as ``hidden`` or ``mode`` (https://github.com/ansible-collections/community.general/pull/3081).
- pkgin - in case of ``pkgin`` tool failue, display returned standard output ``stdout`` and standard error ``stderr`` to ease debugging (https://github.com/ansible-collections/community.general/issues/3146).
- redfish_command - add ``boot_override_mode`` argument to BootSourceOverride commands (https://github.com/ansible-collections/community.general/issues/3134).
- supervisorctl - using standard Ansible mechanism to validate ``signalled`` state required parameter (https://github.com/ansible-collections/community.general/pull/3068).
Security Fixes
--------------
- nmcli - do not pass WiFi secrets on the ``nmcli`` command line. Use ``nmcli con edit`` instead and pass secrets as ``stdin`` (https://github.com/ansible-collections/community.general/issues/3145).
Bugfixes
--------
- ali_instance_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- archive - fixing archive root determination when longest common root is ``/`` (https://github.com/ansible-collections/community.general/pull/3036).
- deploy_helper - improved parameter checking by using standard Ansible construct (https://github.com/ansible-collections/community.general/pull/3104).
- django_manage - refactor to call ``run_command()`` passing command as a list instead of string (https://github.com/ansible-collections/community.general/pull/3098).
- ejabberd_user - replaced in-code check with ``required_if``, using ``get_bin_path()`` for the command, passing args to ``run_command()`` as list instead of string (https://github.com/ansible-collections/community.general/pull/3093).
- gitlab_group_members - fixes issue when gitlab group has more then 20 members, pagination problem (https://github.com/ansible-collections/community.general/issues/3041).
- gitlab_project_members - fixes issue when gitlab group has more then 20 members, pagination problem (https://github.com/ansible-collections/community.general/issues/3041).
- idrac_redfish_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- ini_file - fix inconsistency between empty value and no value (https://github.com/ansible-collections/community.general/issues/3031).
- java_cert - import private key as well as public certificate from PKCS#12 (https://github.com/ansible-collections/community.general/issues/2460).
- memset_memstore_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- memset_server_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_datacenter_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_enclosure_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_ethernet_network_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_fc_network_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_fcoe_network_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_logical_interconnect_group_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_network_set_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- oneview_san_manager_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- openbsd_pkg - fix regexp matching crash. This bug could trigger on package names with special characters, for example ``g++`` (https://github.com/ansible-collections/community.general/pull/3161).
- pids - avoid crashes for older ``psutil`` versions, like on RHEL6 and RHEL7 (https://github.com/ansible-collections/community.general/pull/2808).
- proxmox inventory plugin - fixed plugin failure when a ``qemu`` guest has no ``template`` key (https://github.com/ansible-collections/community.general/pull/3052).
- proxmox_kvm - fix result of clone, now returns ``newid`` instead of ``vmid`` (https://github.com/ansible-collections/community.general/pull/3034).
- rax_facts - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- redfish_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- smartos_image_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- snmp_facts - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- supervisorctl - state ``signalled`` was not working (https://github.com/ansible-collections/community.general/pull/3068).
- taiga - some constructs in the module fixed to work also in Python 3 (https://github.com/ansible-collections/community.general/pull/3067).
- tss lookup plugin - fixed incompatibility with ``python-tss-sdk`` version 1.0.0 (https://github.com/ansible-collections/community.general/issues/3057, https://github.com/ansible-collections/community.general/pull/3139).
- utm_aaa_group_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- utm_ca_host_key_cert_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- utm_network_interface_address_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- utm_proxy_frontend_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- utm_proxy_location_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- xenserver_facts - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
- xfconf_info - added support to check mode (https://github.com/ansible-collections/community.general/pull/3084).
New Modules
-----------
Identity
~~~~~~~~
keycloak
^^^^^^^^
- keycloak_client_rolemapping - Allows administration of Keycloak client_rolemapping with the Keycloak API
Packaging
~~~~~~~~~
language
^^^^^^^^
- ansible_galaxy_install - Install Ansible roles or collections using ansible-galaxy
System
~~~~~~
- sap_task_list_execute - Perform SAP Task list execution
- xfconf_info - Retrieve XFCE4 configurations
v3.4.0
======
Release Summary
---------------
Regular bugfix and feature release.
Minor Changes
-------------
- archive - added ``dest_state`` return value to describe final state of ``dest`` after successful task execution (https://github.com/ansible-collections/community.general/pull/2913).
- archive - refactoring prior to fix for idempotency checks. The fix will be a breaking change and only appear in community.general 4.0.0 (https://github.com/ansible-collections/community.general/pull/2987).
- datadog_monitor - allow creation of composite datadog monitors (https://github.com/ansible-collections/community.general/issues/2956).
- filesystem - extend support for FreeBSD. Avoid potential data loss by checking existence of a filesystem with ``fstyp`` (native command) if ``blkid`` (foreign command) doesn't find one. Add support for character devices and ``ufs`` filesystem type (https://github.com/ansible-collections/community.general/pull/2902).
- jenkins_job_info - the ``password`` and ``token`` parameters can also be omitted to retrieve only public information (https://github.com/ansible-collections/community.general/pull/2948).
- keycloak_authentication - enhanced diff mode to also return before and after state when the authentication flow is updated (https://github.com/ansible-collections/community.general/pull/2963).
- module_helper module utils - added feature flag parameters to ``CmdMixin`` to control whether ``rc``, ``out`` and ``err`` are automatically added to the module output (https://github.com/ansible-collections/community.general/pull/2922).
- nmcli - add ``runner`` and ``runner_hwaddr_policy`` options (https://github.com/ansible-collections/community.general/issues/2901).
- rax_mon_notification_plan - fixed validation checks by specifying type ``str`` as the ``elements`` of parameters ``ok_state``, ``warning_state`` and ``critical_state`` (https://github.com/ansible-collections/community.general/pull/2955).
Bugfixes
--------
- launchd - fixed sanity check in the module's code (https://github.com/ansible-collections/community.general/pull/2960).
- pamd - fixed problem with files containing only one or two lines (https://github.com/ansible-collections/community.general/issues/2925).
- proxmox inventory plugin - fixed parsing failures when some cluster nodes are offline (https://github.com/ansible-collections/community.general/issues/2931).
- redfish_command - fix extraneous error caused by missing ``bootdevice`` argument when using the ``DisableBootOverride`` sub-command (https://github.com/ansible-collections/community.general/issues/3005).
- snap - fix formatting of ``--channel`` argument when the ``channel`` option is used (https://github.com/ansible-collections/community.general/pull/3028).
New Modules
-----------
Identity
~~~~~~~~
keycloak
^^^^^^^^
- keycloak_clientscope - Allows administration of Keycloak client_scopes via Keycloak API
- keycloak_role - Allows administration of Keycloak roles via Keycloak API
Source Control
~~~~~~~~~~~~~~
gitlab
^^^^^^
- gitlab_protected_branch - (un)Marking existing branches for protection
v3.3.2
======
Release Summary
---------------
Extraordinary bugfix release to fix some annoying bugs.
Bugfixes
--------
- archive - fixed task failure when using the ``remove`` option with a ``path`` containing nested files for ``format``s other than ``zip`` (https://github.com/ansible-collections/community.general/issues/2919).
- lvol - honor ``check_mode`` on thinpool (https://github.com/ansible-collections/community.general/issues/2934).
- module_helper module utils - fixed change-tracking for dictionaries and lists (https://github.com/ansible-collections/community.general/pull/2951).
- npm - correctly handle cases where a dependency does not have a ``version`` property because it is either missing or invalid (https://github.com/ansible-collections/community.general/issues/2917).
- pacman - fix changed status when ignorepkg has been defined (https://github.com/ansible-collections/community.general/issues/1758).
- snap - fixed the order of the ``--classic`` parameter in the command line invocation (https://github.com/ansible-collections/community.general/issues/2916).
v3.3.1
======
Release Summary
---------------
Extraordinary bugfix release to fix a fatal bug in ``snap``.
Bugfixes
--------
- keycloak_authentication - fix bug when two identical executions are in the same authentication flow (https://github.com/ansible-collections/community.general/pull/2904).
- module_helper module utils - avoid failing when non-zero ``rc`` is present on regular exit (https://github.com/ansible-collections/community.general/pull/2912).
- snap - fix various bugs which prevented the module from working at all, and which resulted in ``state=absent`` fail on absent snaps (https://github.com/ansible-collections/community.general/issues/2835, https://github.com/ansible-collections/community.general/issues/2906, https://github.com/ansible-collections/community.general/pull/2912).
v3.3.0
======
@@ -466,7 +1080,7 @@ Deprecated Features
- puppet - deprecated undocumented parameter ``show_diff``, will be removed in 7.0.0. (https://github.com/ansible-collections/community.general/pull/1927).
- runit - unused parameter ``dist`` marked for deprecation (https://github.com/ansible-collections/community.general/pull/1830).
- slackpkg - deprecated invalid parameter alias ``update-cache``, will be removed in 5.0.0 (https://github.com/ansible-collections/community.general/pull/1927).
- urmpi - deprecated invalid parameter aliases ``update-cache`` and ``no-recommends``, will be removed in 5.0.0 (https://github.com/ansible-collections/community.general/pull/1927).
- urpmi - deprecated invalid parameter aliases ``update-cache`` and ``no-recommends``, will be removed in 5.0.0 (https://github.com/ansible-collections/community.general/pull/1927).
- xbps - deprecated invalid parameter alias ``update-cache``, will be removed in 5.0.0 (https://github.com/ansible-collections/community.general/pull/1927).
- xfconf - returning output as facts is deprecated, this will be removed in community.general 4.0.0. Please register the task output in a variable and use it instead. You can already switch to the new behavior now by using the new ``disable_facts`` option (https://github.com/ansible-collections/community.general/pull/1747).
@@ -23,9 +23,10 @@ Note that reviewing does not only mean code review, but also offering comments o
Also, consider taking up a valuable, reviewed, but abandoned pull request which you could politely ask the original authors to complete yourself.
* Try committing your changes with an informative but short commit message.
*All commits of a pull request branch will be squashed into one commit at last. That does not mean you must have only one commit on your pull request, though!
*Please try not to force-push if it is not needed, so reviewers and other users looking at your pull request later can see the pullrequest commit history.
*Do not add merge commits to your PR. The bot will complain and you will have to rebase ([instructions for rebasing](https://docs.ansible.com/ansible/latest/dev_guide/developing_rebasing.html)) to remove them before your PR can be merged. To avoid that git automatically does merges during pulls, you can configure it to do rebases instead by running `git config pull.rebase true` inside the respository checkout.
*Do not squash your commits and force-push to your branch if not needed. Reviews of your pull request are much easier with individual commits to comprehend the pull request history. All commits of your pull request branch will be squashed into one commit by GitHub upon merge.
*Do not add merge commits to your PR. The bot will complain and you will have to rebase ([instructions for rebasing](https://docs.ansible.com/ansible/latest/dev_guide/developing_rebasing.html)) to remove them before your PR can be merged. To avoid that git automatically does merges during pulls, you can configure it to do rebases instead by running `git config pull.rebase true` inside the repository checkout.
*Make sure your PR includes a [changelog fragment](https://docs.ansible.com/ansible/devel/community/development_process.html#changelogs-how-to). (You must not include a fragment for new modules or new plugins, except for test and filter plugins. Also you shouldn't include one for docs-only changes. If you're not sure, simply don't include one, we'll tell you whether one is needed or not :) )
* Avoid reformatting unrelated parts of the codebase in your PR. These types of changes will likely be requested for reversion, create additional work for reviewers, and may cause approval to be delayed.
You can also read [our Quick-start development guide](https://github.com/ansible/community-docs/blob/main/create_pr_quick_start_guide.rst).
@@ -34,3 +35,87 @@ You can also read [our Quick-start development guide](https://github.com/ansible
If you want to test a PR locally, refer to [our testing guide](https://github.com/ansible/community-docs/blob/main/test_pr_locally_guide.rst) for instructions on how do it quickly.
If you find any inconsistencies or places in this document which can be improved, feel free to raise an issue or pull request to fix it.
## Run sanity, unit or integration tests locally
You have to check out the repository into a specific path structure to be able to run `ansible-test`. The path to the git checkout must end with `.../ansible_collections/community/general`. Please see [our testing guide](https://github.com/ansible/community-docs/blob/main/test_pr_locally_guide.rst) for instructions on how to check out the repository into a correct path structure. The short version of these instructions is:
Then you can run `ansible-test` (which is a part of [ansible-core](https://pypi.org/project/ansible-core/)) inside the checkout. The following example commands expect that you have installed Docker or Podman. Note that Podman has only been supported by more recent ansible-core releases. If you are using Docker, the following will work with Ansible 2.9+.
The following commands show how to run sanity tests:
```.bash
# Run sanity tests for all files in the collection:
ansible-test sanity --docker -v
# Run sanity tests for the given files and directories:
# Run integration tests for the flattened lookup **without any isolation**:
ansible-test integration -v lookup_flattened
```
If you are unsure about the integration test target name for a module or plugin, you can take a look in `tests/integration/targets/`. Tests for plugins have the plugin type prepended.
## Creating new modules or plugins
Creating new modules and plugins requires a bit more work than other Pull Requests.
1. Please make sure that your new module or plugin is of interest to a larger audience. Very specialized modules or plugins that
can only be used by very few people should better be added to more specialized collections.
2. Please do not add more than one plugin/module in one PR, especially if it is the first plugin/module you are contributing.
That makes it easier for reviewers, and increases the chance that your PR will get merged. If you plan to contribute a group
of plugins/modules (say, more than a module and a corresponding ``_info`` module), please mention that in the first PR. In
such cases, you also have to think whether it is better to publish the group of plugins/modules in a new collection.
3. When creating a new module or plugin, please make sure that you follow various guidelines:
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -17,7 +17,7 @@ If you encounter abusive behavior violating the [Ansible Code of Conduct](https:
## Tested with Ansible
Tested with the current Ansible 2.9, ansible-base 2.10 and ansible-core 2.11 releases and the current development version of ansible-core. Ansible versions before 2.9.10 are not supported.
Tested with the current Ansible 2.9, ansible-base 2.10, ansible-core 2.11, ansible-core 2.12 and ansible-core 2.13 releases. Ansible versions before 2.9.10 are not supported.
## External requirements
@@ -58,7 +58,9 @@ See [Ansible Using collections](https://docs.ansible.com/ansible/latest/user_gui
## Contributing to this collection
The content of this collection is made by good people like you, a community of individuals collaborating on making the world better through developing automation software.
The content of this collection is made by good people just like you, a community of individuals collaborating on making the world better through developing automation software.
We are actively accepting new contributors.
All types of contributions are very welcome.
@@ -74,7 +76,21 @@ Also for some notes specific to this collection see [our CONTRIBUTING documentat
See [here](https://docs.ansible.com/ansible/devel/dev_guide/developing_collections.html#testing-collections).
### Communication
## Collection maintenance
To learn how to maintain / become a maintainer of this collection, refer to:
It is necessary for maintainers of this collection to be subscribed to:
* The collection itself (the `Watch` button → `All Activity` in the upper right corner of the repository's homepage).
* The "Changes Impacting Collection Contributors and Maintainers" [issue](https://github.com/ansible-collections/overview/issues/45).
They also should be subscribed to Ansible's [The Bullhorn newsletter](https://docs.ansible.com/ansible/devel/community/communication.html#the-bullhorn).
## Communication
We announce important development changes and releases through Ansible's [The Bullhorn newsletter](https://eepurl.com/gZmiEP). If you are a collection developer, be sure you are subscribed.
@@ -84,16 +100,11 @@ We take part in the global quarterly [Ansible Contributor Summit](https://github
For more information about communities, meetings and agendas see [Community Wiki](https://github.com/ansible/community/wiki/Community).
For more information about communication, refer to the [Ansible communication guide](https://docs.ansible.com/ansible/devel/community/communication.html).
For more information about communication, refer to Ansible's the [Communication guide](https://docs.ansible.com/ansible/devel/community/communication.html).
### Publishing New Version
## Publishing New Version
Basic instructions without release branches:
1. Create `changelogs/fragments/<version>.yml` with `release_summary:` section (which must be a string, not a list).
2. Run `antsibull-changelog release --collection-flatmap yes`
3. Make sure `CHANGELOG.rst` and `changelogs/changelog.yaml` are added to git, and the deleted fragments have been removed.
4. Tag the commit with `<version>`. Push changes and tag to the main repository.
See the [Releasing guidelines](https://github.com/ansible/community-docs/blob/main/releasing_collections.rst) to learn how to release this collection.
## Release notes
@@ -101,10 +112,10 @@ See the [changelog](https://github.com/ansible-collections/community.general/blo
## Roadmap
See [this issue](https://github.com/ansible-collections/community.general/issues/582) for information on releasing, versioning and deprecation.
In general, we plan to release a major version every six months, and minor versions every two months. Major versions can contain breaking changes, while minor versions only contain new features and bugfixes.
See [this issue](https://github.com/ansible-collections/community.general/issues/582) for information on releasing, versioning, and deprecation.
..note:: while using ``starts_with`` and ``contains``, you have to use `` to_json | from_json `` filter for correct parsing of data structure.
Working with Unicode
---------------------
`Unicode <https://unicode.org/main.html>`_ makes it possible to produce two strings which may be visually equivalent, but are comprised of distinctly different characters/character sequences. To address this ``Unicode`` defines `normalization forms <https://unicode.org/reports/tr15/>`_ which avoid these distinctions by choosing a unique character sequence for a given visual representation.
You can use the ``community.general.unicode_normalize`` filter to normalize ``Unicode`` strings within your playbooks.
The ``community.general.unicode_normalize`` filter accepts a keyword argument to select the ``Unicode`` form used to normalize the input string.
:form:One of ``'NFC'`` (default), ``'NFD'``, ``'NFKC'``, or ``'NFKD'``. See the `Unicode reference <https://unicode.org/reports/tr15/>`_ for more information.
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.