Topics
This changelog describes changes after version 5.0.0.
This is a pre-release for the upcoming 6.0.0 major release. The main objective of this pre-release is to make it possible to test the large stuctural changes by flattening the directory structure. See the corresponding entry in the changelog for details.
- The internal structure of the collection was changed for modules and action plugins. These no longer live in a directory hierarchy ordered by topic, but instead are now all in a single (flat) directory. This has no impact on users assuming they did not use internal FQCNs. These will still work, but result in deprecation warnings. They were never officially supported and thus the redirects are kept as a courtsey, and this is not labelled as a breaking change. Note that for example the Ansible VScode plugin started recommending these internal names. If you followed its recommendation, you will now have to change back to the short names to avoid deprecation warnings, and potential errors in the future as these redirects will be removed in community.general 9.0.0 (ansible-collections#5461).
- newrelic_deployment - removed New Relic v1 API, added support for v2 API (ansible-collections#5341).
- Added MIT license as
LICENSES/MIT.txtfor tests/unit/plugins/modules/packaging/language/test_gem.py (ansible-collections#5065). - All software licenses are now in the
LICENSES/directory of the collection root (ansible-collections#5065, ansible-collections#5079, ansible-collections#5080, ansible-collections#5083, ansible-collections#5087, ansible-collections#5095, ansible-collections#5098, ansible-collections#5106). - ModuleHelper module utils - added property
verbosityto base class (ansible-collections#5035). - ModuleHelper module utils - improved
ModuleHelperException, usingto_native()for the exception message (ansible-collections#4755). - The collection repository conforms to the REUSE specification except for the changelog fragments (ansible-collections#5138).
- ali_instance - minor refactor when checking for installed dependency (ansible-collections#5240).
- ali_instance_info - minor refactor when checking for installed dependency (ansible-collections#5240).
- alternatives - add
state=absentto be able to remove an alternative (ansible-collections#4654). - alternatives - add
subcommandsparameter (ansible-collections#4654). - ansible_galaxy_install - minor refactoring using latest
ModuleHelperupdates (ansible-collections#4752). - apk - add
worldparameter for supporting a custom world file (ansible-collections#4976). - bitwarden lookup plugin - add option
searchto search for other attributes than name (ansible-collections#5297). - cartesian lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- cmd_runner module util - added parameters
check_mode_skipandcheck_mode_returntoCmdRunner.context(), so that the command is not executed whencheck_mode=True(ansible-collections#4736). - cmd_runner module utils - add
__call__method to invoke context (ansible-collections#4791). - consul - adds
ttlparameter for session (ansible-collections#4996). - consul - minor refactoring (ansible-collections#5367).
- consul_session - adds
tokenparameter for session (ansible-collections#5193). - cpanm - using
do_raise()to raise exceptions inModuleHelperderived modules (ansible-collections#4674). - credstash lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- dependent lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- dig lookup plugin - add option
fail_on_errorto allow stopping execution on lookup failures (ansible-collections#4973). - dig lookup plugin - start using Ansible's configuration manager to parse options. All documented options can now also be passed as lookup parameters (ansible-collections#5440).
- dnstxt lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- filetree lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- flattened lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- gitlab module util - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_branch - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_deploy_key - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_group - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_group_members - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_group_variable - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_hook - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_hook - minor refactoring (ansible-collections#5271).
- gitlab_project - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_project_members - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_project_variable - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_protected_branch - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_runner - minor refactor when checking for installed dependency (ansible-collections#5259).
- gitlab_user - minor refactor when checking for installed dependency (ansible-collections#5259).
- hiera lookup plugin - start using Ansible's configuration manager to parse options. The Hiera executable and config file can now also be passed as lookup parameters (ansible-collections#5440).
- homebrew, homebrew_tap - added Homebrew on Linux path to defaults (ansible-collections#5241).
- keycloak_* modules - add
http_agentparameter with default valueAnsible(ansible-collections#5023). - keyring lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- lastpass - use config manager for handling plugin options (ansible-collections#5022).
- linode inventory plugin - simplify option handling (ansible-collections#5438).
- listen_ports_facts - add new
include_non_listeningoption which adds-aoption tonetstatandss. This shows both listening and non-listening (for TCP this means established connections) sockets, and returnsstateandforeign_address(ansible-collections#4762, ansible-collections#4953). - lmdb_kv lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- lxc_container - minor refactoring (ansible-collections#5358).
- machinectl become plugin - can now be used with a password from another user than root, if a polkit rule is present (ansible-collections#4849).
- machinectl become plugin - combine the success command when building the become command to be consistent with other become plugins (ansible-collections#5287).
- manifold lookup plugin - start using Ansible's configuration manager to parse options (ansible-collections#5440).
- maven_artifact - add a new
unredirected_headersoption that can be used with ansible-core 2.12 and above. The default value is to not useAuthorizationandCookieheaders on redirects for security reasons. With ansible-core 2.11, all headers are still passed on for redirects (ansible-collections#4812). - mksysb - using
do_raise()to raise exceptions inModuleHelperderived modules (ansible-collections#4674). - nagios - minor refactoring on parameter validation for different actions (ansible-collections#5239).
- netcup_dnsapi - add
timeoutparameter (ansible-collections#5301). - nmcli - add
transport_modeconfiguration for Infiniband devices (ansible-collections#5361). - nmcli - add bond option
xmit_hash_policyto bond options (ansible-collections#5148). - nmcli - adds
vpntype and parameter for supporting VPN with service type L2TP and PPTP (ansible-collections#4746). - nmcli - honor IP options for VPNs (ansible-collections#5228).
- opentelemetry callback plugin - allow configuring opentelementry callback via config file (ansible-collections#4916).
- opentelemetry callback plugin - send logs. This can be disabled by setting
disable_logs=false(ansible-collections#4175). - pacman - added parameters
reasonandreason_forto set/change the install reason of packages (ansible-collections#4956). - passwordstore lookup plugin - allow options to be passed lookup options instead of being part of the term strings (ansible-collections#5444).
- passwordstore lookup plugin - allow using alternative password managers by detecting wrapper scripts, allow explicit configuration of pass and gopass backends (ansible-collections#4766).
- passwordstore lookup plugin - improve error messages to include stderr (ansible-collections#5436)
- pipx - added state
latestto the module (ansible-collections#5105). - pipx - changed implementation to use
cmd_runner(ansible-collections#5085). - pipx - module fails faster when
nameis missing for statesupgradeandreinstall(ansible-collections#5100). - pipx - using
do_raise()to raise exceptions inModuleHelperderived modules (ansible-collections#4674). - pipx module utils - created new module util
pipxproviding acmd_runnerspecific for thepipxmodule (ansible-collections#5085). - portage - add knobs for Portage's
--backtrackand--with-bdepsoptions (ansible-collections#5349). - portage - use Portage's python module instead of calling gentoolkit-provided program in shell (ansible-collections#5349).
- proxmox inventory plugin - added new flag
qemu_extended_statusesand new groups<group_prefix>prelaunch,<group_prefix>paused. They will be populated only whenwant_facts=true,qemu_extended_statuses=trueand only forQEMUmachines (ansible-collections#4723). - proxmox inventory plugin - simplify option handling code (ansible-collections#5437).
- proxmox module utils, the proxmox* modules - add
api_task_okhelper to standardize API task status checks across all proxmox modules (ansible-collections#5274). - proxmox_kvm - allow
agentargument to be a string (ansible-collections#5107). - proxmox_snap - add
unbindparam to support snapshotting containers with configured mountpoints (ansible-collections#5274). - puppet - adds
confdirparameter to configure a custom confir location (ansible-collections#4740). - redfish - added new command GetVirtualMedia, VirtualMediaInsert and VirtualMediaEject to Systems category due to Redfish spec changes the virtualMedia resource location from Manager to System (ansible-collections#5124).
- redfish_config - add
SetSessionServiceto set default session timeout policy (ansible-collections#5008). - redfish_info - add
GetManagerInventoryto report list of Manager inventory information (ansible-collections#4899). - seport - added new argument
local(ansible-collections#5203) - snap - using
do_raise()to raise exceptions inModuleHelperderived modules (ansible-collections#4674). - sudoers - will attempt to validate the proposed sudoers rule using visudo if available, optionally skipped, or required (ansible-collections#4794, ansible-collections#4745).
- terraform - adds capability to handle complex variable structures for
variablesparameter in the module. This must be enabled with the newcomplex_varsparameter (ansible-collections#4797). - terraform - run
terraform initwith-no-colornot to mess up the stdout of the task (ansible-collections#5147). - wdc_redfish_command - add
IndicatorLedOnandIndicatorLedOffcommands forChassiscategory (ansible-collections#5059). - wdc_redfish_command - add
PowerModeLowandPowerModeNormalcommands forChassiscategory (ansible-collections#5145). - xfconf - add
stdout,stderrandcmdto the module results (ansible-collections#5037). - xfconf - changed implementation to use
cmd_runner(ansible-collections#4776). - xfconf - use
do_raise()instead of defining custom exception class (ansible-collections#4975). - xfconf - using
do_raise()to raise exceptions inModuleHelperderived modules (ansible-collections#4674). - xfconf module utils - created new module util
xfconfproviding acmd_runnerspecific forxfconfmodules (ansible-collections#4776). - xfconf_info - changed implementation to use
cmd_runner(ansible-collections#4776). - xfconf_info - use
do_raise()instead of defining custom exception class (ansible-collections#4975). - znode - possibility to use ZooKeeper ACL authentication (ansible-collections#5306).
- newrelic_deployment -
revisionis required for v2 API (ansible-collections#5341).
- ArgFormat module utils - deprecated along
CmdMixin, in favor of thecmd_runner_fmtmodule util (ansible-collections#5370). - CmdMixin module utils - deprecated in favor of the
CmdRunnermodule util (ansible-collections#5370). - CmdModuleHelper module utils - deprecated in favor of the
CmdRunnermodule util (ansible-collections#5370). - CmdStateModuleHelper module utils - deprecated in favor of the
CmdRunnermodule util (ansible-collections#5370). - cmd_runner module utils - deprecated
fmtin favour ofcmd_runner_fmtas the parameter format object (ansible-collections#4777). - django_manage - support for Django releases older than 4.1 has been deprecated and will be removed in community.general 9.0.0 (ansible-collections#5400).
- django_manage - support for the commands
cleanup,syncdbandvalidatethat have been deprecated in Django long time ago will be removed in community.general 9.0.0 (ansible-collections#5400). - django_manage - the behavior of "creating the virtual environment when missing" is being deprecated and will be removed in community.general version 9.0.0 (ansible-collections#5405).
- gconftool2 - deprecates
state=getin favor of using the modulegconftool2_info(ansible-collections#4778). - lxc_container - the module will no longer make any effort to support Python 2 (ansible-collections#5304).
- newrelic_deployment -
appnameandenvironmentare no longer valid options in the v2 API. They will be removed in community.general 7.0.0 (ansible-collections#5341). - proxmox - deprecated the current
unprivilegeddefault value, will be changed totruein community.general 7.0.0 (https://github.com/pull/5224). - xfconf - deprecated parameter
disable_facts, as since version 4.0.0 it only allows valuetrue(ansible-collections#4520).
- bitbucket* modules -
usernameis no longer an alias ofworkspace, but ofuser(ansible-collections#5326). - gem - the default of the
norcoption changed fromfalsetotrue(ansible-collections#5326). - gitlab_group_members -
gitlab_groupmust now always contain the full path, and no longer just the name or path (ansible-collections#5326). - keycloak_authentication - the return value
flowhas been removed. Useend_stateinstead (ansible-collections#5326). - keycloak_group - the return value
grouphas been removed. Useend_stateinstead (ansible-collections#5326). - lxd_container - the default of the
ignore_volatile_optionsoption changed fromtruetofalse(ansible-collections#5326). - mail callback plugin - the
senderoption is now required (ansible-collections#5326). - module_helper module utils - remove the
VarDictattribute fromModuleHelper. ImportVarDictfromansible_collections.community.general.plugins.module_utils.mh.mixins.varsinstead (ansible-collections#5326). - proxmox inventory plugin - the default of the
want_proxmox_nodes_ansible_hostoption changed fromtruetofalse(ansible-collections#5326). - vmadm - the
debugoption has been removed. It was not used anyway (ansible-collections#5326).
- Include
PSF-license.txtfile forplugins/module_utils/_mount.py. - Include
simplified_bsd.txtlicense file for various module utils, thelxca_commondocs fragment, and theutm_utilsunit tests. - alternatives - do not set the priority if the priority was not set by the user (ansible-collections#4810).
- alternatives - only pass subcommands when they are specified as module arguments (ansible-collections#4803, ansible-collections#4804, ansible-collections#4836).
- alternatives - when
subcommandsis specified,linkmust be given for every subcommand. This was already mentioned in the documentation, but not enforced by the code (ansible-collections#4836). - apache2_mod_proxy - avoid crash when reporting inability to parse balancer_member_page HTML caused by using an undefined variable in the error message (ansible-collections#5111).
- archive - avoid crash when
lzmais not present andformatis notxz(ansible-collections#5393). - cmd_runner module utils - fix bug caused by using the
commandvariable instead ofself.commandwhen looking for binary path (ansible-collections#4903). - consul - fixed bug introduced in PR 4590 (ansible-collections#4680).
- credstash lookup plugin - pass plugin options to credstash for all terms, not just for the first (ansible-collections#5440).
- dig lookup plugin - add option to return empty result without empty strings, and return empty list instead of
NXDOMAIN(ansible-collections#5439, ansible-collections#5428). - dig lookup plugin - fix evaluation of falsy values for boolean parameters
fail_on_errorandretry_servfail(ansible-collections#5129). - dnsimple_info - correctly report missing library as
requestsand notanother_library(ansible-collections#5111). - dnstxt lookup plugin - add option to return empty result without empty strings, and return empty list instead of
NXDOMAIN(ansible-collections#5457, ansible-collections#5428). - dsv lookup plugin - do not ignore the
tldparameter (ansible-collections#4911). - filesystem - handle
fatresize --infooutput lines without:(ansible-collections#4700). - filesystem - improve error messages when output cannot be parsed by including newlines in escaped form (ansible-collections#4700).
- funcd connection plugin - fix signature of
exec_command(ansible-collections#5111). - ini_file - minor refactor fixing a python lint error (ansible-collections#5307).
- keycloak_realm - fix default groups and roles (ansible-collections#4241).
- keyring_info - fix the result from the keyring library never getting returned (ansible-collections#4964).
- ldap_attrs - fix ordering issue by ignoring the
{x}prefix on attribute values (ansible-collections#977, ansible-collections#5385). - listen_ports_facts - removed leftover
EnvironmentError. Theelseclause had a wrong indentation. The check is now handled in thesplit_pid_namefunction (ansible-collections#5202). - locale_gen - fix support for Ubuntu (ansible-collections#5281).
- lxc_container - the module has been updated to support Python 3 (ansible-collections#5304).
- lxd connection plugin - fix incorrect
inventory_hostnameinremote_addr. This is needed for compatibility with ansible-core 2.13 (ansible-collections#4886). - manageiq_alert_profiles - avoid crash when reporting unknown profile caused by trying to return an undefined variable (ansible-collections#5111).
- nmcli - avoid changed status for most cases with VPN connections (ansible-collections#5126).
- nmcli - fix error caused by adding undefined module arguments for list options (ansible-collections#4373, ansible-collections#4813).
- nmcli - fix error when setting previously unset MAC address,
gsm.apnorvpn.data: current values were being normalized without checking if they might beNone(ansible-collections#5291). - nmcli - fix int options idempotence (ansible-collections#4998).
- nsupdate - compatibility with NS records (ansible-collections#5112).
- nsupdate - fix silent failures when updating
NSentries from Bind9 managed DNS zones (ansible-collections#4657). - opentelemetry callback plugin - support opentelemetry-api 1.13.0 that removed support for
_time_ns(ansible-collections#5342). - osx_defaults - no longer expand
~invalueto the user's home directory, or expand environment variables (ansible-collections#5234, ansible-collections#5243). - packet_ip_subnet - fix error reporting in case of invalid CIDR prefix lengths (ansible-collections#5111).
- pacman - fixed name resolution of URL packages (ansible-collections#4959).
- passwordstore lookup plugin - fix
returnallfor gopass (ansible-collections#5027). - passwordstore lookup plugin - fix password store path detection for gopass (ansible-collections#4955).
- pfexec become plugin - remove superflous quotes preventing exe wrap from working as expected (ansible-collections#3671, ansible-collections#3889).
- pip_package_info - remove usage of global variable (ansible-collections#5111).
- pkgng - fix case when
pkgfails when trying to upgrade all packages (ansible-collections#5363). - proxmox - fix error handling when getting VM by name when
state=absent(ansible-collections#4945). - proxmox inventory plugin - fix crash when
enabled=1is used in agent config string (ansible-collections#4910). - proxmox inventory plugin - fixed extended status detection for qemu (ansible-collections#4816).
- proxmox_kvm - fix
agentparameter when boolean value is specified (ansible-collections#5198). - proxmox_kvm - fix error handling when getting VM by name when
state=absent(ansible-collections#4945). - proxmox_kvm - fix exception when no
agentargument is specified (ansible-collections#5194). - proxmox_kvm - fix wrong condition (ansible-collections#5108).
- proxmox_kvm - replace new condition with proper condition to allow for using
vmidon update (ansible-collections#5206). - rax_clb_nodes - fix code to be compatible with Python 3 (ansible-collections#4933).
- redfish_command - fix the check if a virtual media is unmounted to just check for
instered= falsecaused by Supermicro hardware that does not clear theImageName(ansible-collections#4839). - redfish_command - the Supermicro Redfish implementation only supports the
image_urlparameter in the underlying API calls toVirtualMediaInsertandVirtualMediaEject. Any values set (or the defaults) forwrite_protectedorinsertedwill be ignored (ansible-collections#4839). - redfish_info - fix to
GetChassisPowerto correctly report power information when multiple chassis exist, but not all chassis report power information (ansible-collections#4901). - redfish_utils module utils - centralize payload checking when performing modification requests to a Redfish service (ansible-collections#5210).
- redhat_subscription - fix unsubscribing on RHEL 9 (ansible-collections#4741).
- redhat_subscription - make module idempotent when
pool_idsare used (ansible-collections#5313). - redis* modules - fix call to
module.fail_jsonwhen failing because of missing Python libraries (ansible-collections#4733). - slack - fix incorrect channel prefix
#caused by incomplete pattern detection by addingG0andGFas channel ID patterns (ansible-collections#5019). - slack - fix message update for channels which start with
CP. Whenmessage-idwas passed it failed for channels which started withCPbecause the#symbol was added before thechannel_id(ansible-collections#5249). - sudoers - ensure sudoers config files are created with the permissions requested by sudoers (0440) (ansible-collections#4814).
- sudoers - fix incorrect handling of
state: absent(ansible-collections#4852). - tss lookup plugin - adding support for updated Delinea library (DelineaXPM/python-tss-sdk#9, ansible-collections#5151).
- virtualbox inventory plugin - skip parsing values with keys that have both a value and nested data. Skip parsing values that are nested more than two keys deep (ansible-collections#5332, ansible-collections#5348).
- xcc_redfish_command - for compatibility due to Redfish spec changes the virtualMedia resource location changed from Manager to System (ansible-collections#4682).
- xenserver_facts - fix broken
AnsibleModulecall that prevented the module from working at all (ansible-collections#5383). - xfconf - fix setting of boolean values (ansible-collections#4999, ansible-collections#5007).
- zfs - fix wrong quoting of properties (ansible-collections#4707, ansible-collections#4726).
- scaleway_function_namespace - Scaleway Function namespace management
- scaleway_function_namespace_info - Retrieve information on Scaleway Function namespace