community.general 13.4.0 Released - What's New and How to Update
Introduction
community.general is the large catch-all Ansible collection maintained by the Ansible community, bundling hundreds of modules, plugins, and lookups that don't have a dedicated home in a more specific collection (Consul, GitLab, GitHub, InfluxDB, zypper, vmadm, and many more). It is one of the most frequently installed collections alongside ansible.posix and ships as part of the ansible community package.
Version 13.4.0 has just been published on Ansible Galaxy. This article covers the changes shipped in this release and how to install or upgrade to it.
What's New
13.4.0 is a regular bugfix and feature release. It does not remove or rename any module, but it adds several new options across existing modules and plugins, and it introduces one deprecation.
Minor Changes
- archive - now uses context managers when reading tar checksums (PR #12569).
- consul modules - add a new
urloption that sets the address of the Consul agent as a whole; the existinghost,port, andschemeoptions each override the matching component of it. This does not apply tocommunity.general.consul(PR #12216). - consul modules - connection options now fall back to the
CONSUL_HTTP_ADDR,CONSUL_HTTP_SSL,CONSUL_HTTP_SSL_VERIFY,CONSUL_HTTP_TOKEN, andCONSUL_CACERTenvironment variables when not explicitly specified. Again, this excludescommunity.general.consul, which does not use the shared connection option handling yet (PR #12216). - github_repo - added a
visibilityoption to set repository visibility topublic,private, orinternal(issue #6219, PR #12557). - gitlab_hook - added a
branch_filter_strategyoption to control howpush_events_branch_filterfilters push events, allowing branches to be filtered by a regular expression (PR #12618). - incus connection plugin - added a
remote_user_id_commandoption to configure the command used to retrieve the UID and GID of the remote user (PR #12646). - influxdb_user - added a
force_password_updateoption to always update the password whenuser_passwordis set, working around InfluxDB installations that do not enforce authentication (issue #3824, PR #12654). - maven_artifact - added a
keep_name_only_when_resolvedoption to opt in to the documented scope ofkeep_name, which is supposed to only control the destination filename whenversionis resolved dynamically (latestorversion_by_spec). Previouslykeep_namealso affected the filename with a fixedversion, contradicting its documentation (PR #12606, issue #4796). - odbc - added an
autocommitoption to support statements that must run outside of a transaction (issue #4173, issue #8577, PR #12595). - passwordstore lookup plugin - added a
keep_trailing_newlineoption to preserve the trailing newline whenreturnall=true(PR #12589, issue #3616). - vmadm - added a
bootromoption to support UEFI boot forbhyveVMs (PR #12601, issue #4282). - zypper - added an
install_recommendsoption to explicitly control installation of recommended packages (issue #3497, PR #12648).
Deprecated Features
- keycloak_realm_users_info - the module is being moved to
middleware_automation.keycloak.keycloak_realm_users_info. It will be replaced by a deprecated redirect to that module incommunity.general14.0.0, and the redirect itself will be removed incommunity.general16.0.0. Anyone currently using the module should consider installing and switching toansible_middleware.keycloaknow.
Affected Modules and Plugins
| Module / plugin | Type of change |
|---|---|
| archive | Internal cleanup (context managers) |
| consul, consul_kv, consul_session, consul_acl, ... | New url option, env var fallback |
| github_repo | New visibility option |
| gitlab_hook | New branch_filter_strategy option |
| incus (connection plugin) | New remote_user_id_command option |
| influxdb_user | New force_password_update option |
| maven_artifact | New keep_name_only_when_resolved option |
| odbc | New autocommit option |
| passwordstore (lookup) | New keep_trailing_newline option |
| vmadm | New bootrom option |
| zypper | New install_recommends option |
| keycloak_realm_users_info | Deprecated, moving to middleware_automation.keycloak |
How to Install / Upgrade
The collection can be installed or updated with ansible-galaxy directly from Galaxy:
# install or upgrade community.general to the latest available version
ansible-galaxy collection install community.general --upgrade
# install this exact version
ansible-galaxy collection install community.general:==13.4.0
# verify the installed version
ansible-galaxy collection list community.general
Expected output for the version check:
# /root/.ansible/collections/ansible_collections
Collection Version
------------------- -------
community.general 13.4.0
If the collection is pinned in a requirements.yml file, update the entry accordingly:
collections:
- name: community.general
version: "13.4.0"
and reinstall with:
ansible-galaxy collection install -r requirements.yml --upgrade
Conclusion
13.4.0 is a routine minor release for community.general: no breaking changes, a handful of new options across Consul, GitHub, GitLab, InfluxDB, Maven, ODBC, the passwordstore lookup, vmadm, and zypper, plus the first step in migrating keycloak_realm_users_info out to the dedicated middleware_automation.keycloak collection. Anyone relying on keycloak_realm_users_info should start planning the migration ahead of the 14.0.0 and 16.0.0 milestones mentioned above.