Ansible 3 Porting Guide
Ansible 3 is based on Ansible-Base 2.10, which is the same major release as Ansible 2.10. Therefore, there is no section on ansible-base in this porting guide. If you are upgrading from Ansible 2.9, please first consult the Ansible 2.10 porting guide before continuing with the Ansible 3 porting guide.
We suggest you read this page along with the Ansible Changelog for 3.0 to understand what updates you may need to make.
Note
Due to a scheduling conflict, the latest version of Ansible 2.10 (2.10.7) has a few collections which are newer than Ansible 3.0.0. Ansible 3.1.0 will contain updated versions of those collections.
Porting Guide for v3.0.0
Breaking Changes
Ansible-base
- ansible-galaxy login command has been removed (see https://github.com/ansible/ansible/issues/71560)
ansible.utils
- If added custom sub plugins in your collection move from old location
plugins/<sub-plugin-name>
to the new locationplugins/sub_plugins/<sub-plugin-name>
and update the imports as required - Move sub plugins cli_parsers, fact_diff and validate to
plugins/sub_plugins
folder - The
cli_parsers
sub plugins folder name is changed tocli_parse
to have consistent naming convention, that is all the cli_parse subplugins will now be inplugins/sub_plugins/cli_parse
folder
cloudscale_ch.cloud
- floating_ip -
name
is required for assigning a new floating IP.
community.general
-
If you use Ansible 2.9 and the Google cloud plugins or modules from this collection, community.general 2.0.0 results in errors when trying to use the Google cloud content by FQCN, like
community.general.gce_img
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (community.google.gce_img
for the previous example) and to make sure that you havecommunity.google
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.general manually, you need to make sure to also install the
community.google
orgoogle.cloud
collections if you are using any of the Google cloud plugins or modules. While ansible-base 2.10 or newer can use the redirects that community.general 2.0.0 adds, the collection they point to (such as community.google) must be installed for them to work. -
If you use Ansible 2.9 and the Kubevirt plugins or modules from this collection, community.general 2.0.0 results in errors when trying to use the Kubevirt content by FQCN, like
community.general.kubevirt_vm
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (community.kubevirt.kubevirt_vm
for the previous example) and to make sure that you havecommunity.kubevirt
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.general manually, you need to make sure to also install the
community.kubevirt
collection if you are using any of the Kubevirt plugins or modules. While ansible-base 2.10 or newer can use the redirects that community.general 2.0.0 adds, the collection they point to (such as community.google) must be installed for them to work. -
If you use Ansible 2.9 and the
docker
plugins or modules from this collections, community.general 2.0.0 results in errors when trying to use the docker content by FQCN, likecommunity.general.docker_container
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (community.docker.docker_container
for the previous example) and to make sure that you havecommunity.docker
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.general manually, you need to make sure to also install
community.docker
if you are using any of thedocker
plugins or modules. While ansible-base 2.10 or newer can use the redirects that community.general 2.0.0 adds, the collection they point to (community.docker) must be installed for them to work. -
If you use Ansible 2.9 and the
hashi_vault
lookup plugin from this collections, community.general 2.0.0 results in errors when trying to use the Hashi Vault content by FQCN, likecommunity.general.hashi_vault
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your inventories, variable files, playbooks and roles manually to use the new FQCN (community.hashi_vault.hashi_vault
) and to make sure that you havecommunity.hashi_vault
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.general manually, you need to make sure to also install
community.hashi_vault
if you are using thehashi_vault
plugin. While ansible-base 2.10 or newer can use the redirects that community.general 2.0.0 adds, the collection they point to (community.hashi_vault) must be installed for them to work. -
If you use Ansible 2.9 and the
hetzner
modules from this collections, community.general 2.0.0 results in errors when trying to use the hetzner content by FQCN, likecommunity.general.hetzner_firewall
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (community.hrobot.firewall
for the previous example) and to make sure that you havecommunity.hrobot
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.general manually, you need to make sure to also install
community.hrobot
if you are using any of thehetzner
modules. While ansible-base 2.10 or newer can use the redirects that community.general 2.0.0 adds, the collection they point to (community.hrobot) must be installed for them to work. -
If you use Ansible 2.9 and the
oc
connection plugin from this collections, community.general 2.0.0 results in errors when trying to use the oc content by FQCN, likecommunity.general.oc
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your inventories, variable files, playbooks and roles manually to use the new FQCN (community.okd.oc
) and to make sure that you havecommunity.okd
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.general manually, you need to make sure to also install
community.okd
if you are using theoc
plugin. While ansible-base 2.10 or newer can use the redirects that community.general 2.0.0 adds, the collection they point to (community.okd) must be installed for them to work. -
If you use Ansible 2.9 and the
postgresql
modules from this collections, community.general 2.0.0 results in errors when trying to use the postgresql content by FQCN, likecommunity.general.postgresql_info
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (community.postgresql.postgresql_info
for the previous example) and to make sure that you havecommunity.postgresql
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.general manually, you need to make sure to also install
community.postgresql
if you are using any of thepostgresql
modules. While ansible-base 2.10 or newer can use the redirects that community.general 2.0.0 adds, the collection they point to (community.postgresql) must be installed for them to work. - The Google cloud inventory script
gce.py
has been migrated to thecommunity.google
collection. Install thecommunity.google
collection in order to continue using it. - archive - remove path folder itself when
remove
paramater is true (https://github.com/ansible-collections/community.general/issues/1041). - log_plays callback - add missing information to the logs generated by the callback plugin. This changes the log message format (https://github.com/ansible-collections/community.general/pull/442).
- passwordstore lookup plugin - now parsing a password store entry as YAML if possible, skipping the first line (which by convention only contains the password and nothing else). If it cannot be parsed as YAML, the old
key: value
parser will be used to process the entry. Can break backwards compatibility if YAML formatted code was parsed in a non-YAML interpreted way, e.g.foo: [bar, baz]
will become a list with two elements in the new version, but a string'[bar, baz]'
in the old (https://github.com/ansible-collections/community.general/issues/1673). - pkgng - passing
name: *
withstate: absent
will no longer remove every installed package from the system. It is now a noop. (https://github.com/ansible-collections/community.general/pull/569). - pkgng - passing
name: *
withstate: latest
orstate: present
will no longer install every package from the configured package repositories. Instead,name: *, state: latest
will upgrade all already-installed packages, andname: *, state: present
is a noop. (https://github.com/ansible-collections/community.general/pull/569). - proxmox_kvm - recognize
force=yes
in conjunction withstate=absent
to forcibly remove a running VM (https://github.com/ansible-collections/community.general/pull/849). - utm_proxy_auth_profile - the
frontend_cookie_secret
return value now contains a placeholder string instead of the module’sfrontend_cookie_secret
parameter (https://github.com/ansible-collections/community.general/pull/1736).
community.hashi_vault
- hashi_vault - the
VAULT_ADDR
environment variable is now checked last for theurl
parameter. For details on which use cases are impacted, see (https://github.com/ansible-collections/community.hashi_vault/issues/8).
community.hrobot
- firewall - now requires the ipaddress library (https://github.com/ansible-collections/community.hrobot/pull/2).
community.network
-
If you use Ansible 2.9 and the FortiOS modules from this collection, community.network 2.0.0 results in errors when trying to use the FortiOS content by FQCN, like
community.network.fmgr_device
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (community.fortios.fmgr_device
for the previous example) and to make sure that you havecommunity.fortios
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.network manually, you need to make sure to also install
community.fortios
if you are using any of the FortiOS modules. While ansible-base 2.10 or newer can use the redirects that community.network 2.0.0 adds, the collection they point to (community.fortios) must be installed for them to work. - If you use Ansible 2.9 and the
cp_publish
module from this collection, community.network 2.0.0 results in errors when trying to use the module by FQCN, i.e.community.network.cp_publish
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (check_point.mgmt.cp_mgmt_publish
) and to make sure that you havecheck_point.mgmt
installed. If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.network manually, you need to make sure to also installcheck_point.mgmt
if you are using thecp_publish
module. While ansible-base 2.10 or newer can use the redirects that community.network 2.0.0 adds, the collection they point to (check_point.mgmt) must be installed for them to work. -
If you use Ansible 2.9 and the
fortimanager
httpapi plugin from this collection, community.network 2.0.0 results in errors when trying to use it by FQCN (community.network.fortimanager
). Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNfortinet.fortimanager.fortimanager
and to make sure that you havefortinet.fortimanager
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.network manually, you need to make sure to also install
fortinet.fortimanager
if you are using thefortimanager
httpapi plugin. While ansible-base 2.10 or newer can use the redirect that community.network 2.0.0 adds, the collection they point to (fortinet.fortimanager) must be installed for it to work. -
If you use Ansible 2.9 and the
nso
modules from this collection, community.network 2.0.0 results in errors when trying to use the nso content by FQCN, likecommunity.network.nso_config
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (cisco.nso.nso_config
for the previous example) and to make sure that you havecisco.nso
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.network manually, you need to make sure to also install
cisco.nso
if you are using any of thenso
modules. While ansible-base 2.10 or newer can use the redirects that community.network 2.0.0 adds, the collection they point to (cisco.nso) must be installed for them to work. -
If you use Ansible 2.9 and the
routeros
plugins or modules from this collections, community.network 2.0.0 results in errors when trying to use the routeros content by FQCN, likecommunity.network.routeros_command
. Since Ansible 2.9 is not able to use redirections, you will have to adjust your playbooks and roles manually to use the new FQCNs (community.routeros.command
for the previous example) and to make sure that you havecommunity.routeros
installed.If you use ansible-base 2.10 or newer and did not install Ansible 3.0.0, but installed (and/or upgraded) community.network manually, you need to make sure to also install
community.routeros
if you are using any of therouteros
plugins or modules. While ansible-base 2.10 or newer can use the redirects that community.network 2.0.0 adds, the collection they point to (community.routeros) must be installed for them to work. - cnos_static_route - move ipaddress import from ansible.netcommon to builtin or package before ipaddress is removed from ansible.netcommon. You need to make sure to have the ipaddress package installed if you are using this module on Python 2.7 (https://github.com/ansible-collections/community.network/pull/129).
dellemc.os10
- os10_bgp - Changed “subnet” key as list format instead of dictionary format under “listen” key to support multiple neighbor prefix for listen command
- os10_bgp - Changed “vrf” key as list format instead of dictionary format to supprot multiple VRF in router BGP and changed the “vrf” key name to “vrfs”
ngine_io.cloudstack
- Authentication option using INI files e.g.
cloudstack.ini
has been removed. The only supported option to authenticate is by using the module params with fallback to the ENV variables. - default zone deprecation - The
zone
param default value, across multiple modules, has been deprecated due to unreliable API (https://github.com/ngine-io/ansible-collection-cloudstack/pull/62).
Major Changes
cisco.aci
- Change certificate_name to name in aci_aaa_user_certificate module for query operation
community.general
-
For community.general 3.0.0, the
ome_device_info
,idrac_firmware
andidrac_server_config_profile
modules will be moved to the dellemc.openmanage collection. A redirection will be inserted so that users using ansible-base 2.10 or newer do not have to change anything.If you use Ansible 2.9 and explicitly use the DellEMC modules mentioned above from this collection, you will need to adjust your playbooks and roles to use FQCNs starting with
dellemc.openmanage.
instead ofcommunity.general.
, for example replacecommunity.general.ome_device_info
in a task bydellemc.openmanage.ome_device_info
.If you use ansible-base and installed
community.general
manually and rely on the DellEMC modules mentioned above, you have to make sure to install thedellemc.openmanage
collection as well. If you are using FQCNs, for examplecommunity.general.ome_device_info
instead ofome_device_info
, it will continue working, but we still recommend to adjust the FQCNs as well. - The community.general collection no longer depends on the ansible.netcommon collection (https://github.com/ansible-collections/community.general/pull/1561).
- The community.general collection no longer depends on the ansible.posix collection (https://github.com/ansible-collections/community.general/pull/1157).
community.kubernetes
- k8s - Add support for template parameter (https://github.com/ansible-collections/community.kubernetes/pull/230).
- k8s_* - Add support for vaulted kubeconfig and src (https://github.com/ansible-collections/community.kubernetes/pull/193).
community.okd
- Add custom k8s module, integrate better Molecule tests (https://github.com/ansible-collections/community.okd/pull/7).
- Add downstream build scripts to build redhat.openshift (https://github.com/ansible-collections/community.okd/pull/20).
- Add openshift connection plugin, update inventory plugin to use it (https://github.com/ansible-collections/community.okd/pull/18).
- Add openshift_process module for template rendering and optional application of rendered resources (https://github.com/ansible-collections/community.okd/pull/44).
- Add openshift_route module for creating routes from services (https://github.com/ansible-collections/community.okd/pull/40).
- Initial content migration from community.kubernetes (https://github.com/ansible-collections/community.okd/pull/3).
- openshift_auth - new module (migrated from k8s_auth in community.kubernetes) (https://github.com/ansible-collections/community.okd/pull/33).
dellemc.os10
- os10_bgp - Enhanced router bgp keyword support for non-default vrf which are supported for default vrf and additional keyword to support both default and non-default vrf
- os10_snmp role - Added support for snmp V3 features in community, group, host, engineID
f5networks.f5_modules
- Add phone home Teem integration into all modules, functionality can be disabled by setting up F5_TEEM environment variable or no_f5_teem provider parameter
- Added async_timeout parameter to bigip_ucs_fetch module to allow customization of module wait for async interface
- Changed bigip_ucs_fetch module to use asynchronous interface when generating UCS files
kubernetes.core
- Add changelog and fragments and document changelog process (https://github.com/ansible-collections/kubernetes.core/pull/131).
- helm - New module for managing Helm charts (https://github.com/ansible-collections/kubernetes.core/pull/61).
- helm_info - New module for retrieving Helm chart information (https://github.com/ansible-collections/kubernetes.core/pull/61).
- helm_plugin - new module to manage Helm plugins (https://github.com/ansible-collections/kubernetes.core/pull/154).
- helm_plugin_info - new modules to gather information about Helm plugins (https://github.com/ansible-collections/kubernetes.core/pull/154).
- helm_repository - New module for managing Helm repositories (https://github.com/ansible-collections/kubernetes.core/pull/61).
- k8s - Add support for template parameter (https://github.com/ansible-collections/kubernetes.core/pull/230).
- k8s - Inventory source migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Lookup plugin migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_* - Add support for vaulted kubeconfig and src (https://github.com/ansible-collections/kubernetes.core/pull/193).
- k8s_auth - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_config_resource_name - Filter plugin migrated from Ansible 2.9 to Kubernetes collection.
- k8s_exec - New module for executing commands on pods via Kubernetes API (https://github.com/ansible-collections/kubernetes.core/pull/14).
- k8s_exec - Return rc for the command executed (https://github.com/ansible-collections/kubernetes.core/pull/158).
- k8s_info - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_log - New module for retrieving pod logs (https://github.com/ansible-collections/kubernetes.core/pull/16).
- k8s_scale - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_service - Module migrated from Ansible 2.9 to Kubernetes collection.
- kubectl - Connection plugin migrated from Ansible 2.9 to Kubernetes collection.
- openshift - Inventory source migrated from Ansible 2.9 to Kubernetes collection.
netbox.netbox
- nb_inventory - Add
dns_name
option that addsdns_name
to the host whenTrue
and device has a primary IP address. (#394) - nb_inventory - Add
status
as agroup_by
option. (398) - nb_inventory - Move around
extracted_primary_ip
to allow forconfig_context
orcustom_field
to overwite. (#377) - nb_inventory - Services are now a list of integers due to NetBox 2.10 changes. (#396)
- nb_lookup - Allow ID to be passed in and use
.get
instead of.filter
. (#376) - nb_lookup - Allow
api_endpoint
andtoken
to be found via env. (#391)
ovirt.ovirt
- cluster_upgrade - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/94).
- disaster_recovery - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/134).
- engine_setup - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/69).
- hosted_engine_setup - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/106).
- image_template - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/95).
- infra - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/92).
- manageiq - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/97).
- ovirt_system_option_info - Add new module (https://github.com/oVirt/ovirt-ansible-collection/pull/206).
- repositories - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/96).
- shutdown_env - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/112).
- vm_infra - Migrate role (https://github.com/oVirt/ovirt-ansible-collection/pull/93).
servicenow.servicenow
- add new tests (find with no result, search many)
- add related tests
- add support for ServiceNOW table api display_value exclude_reference_link and suppress_pagination_header
- use new API for pysnow >=0.6.0
Removed Features
community.docker
- docker_container - no longer returns
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1). - docker_container - the default of
networks_cli_compatible
changed totrue
(https://github.com/ansible-collections/community.docker/pull/1). - docker_container - the unused option
trust_image_content
has been removed (https://github.com/ansible-collections/community.docker/pull/1). - docker_image -
state=build
has been removed. Usepresent
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_image - the
container_limits
,dockerfile
,http_timeout
,nocache
,rm
,path
,buildargs
,pull
have been removed. Use the corresponding suboptions ofbuild
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_image - the
force
option has been removed. Use the more specificforce_*
options instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_image - the
source
option is now mandatory (https://github.com/ansible-collections/community.docker/pull/1). - docker_image - the
use_tls
option has been removed. Usetls
andvalidate_certs
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_image - the default of the
build.pull
option changed tofalse
(https://github.com/ansible-collections/community.docker/pull/1). - docker_image_facts - this alias is on longer availabe, use
docker_image_info
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_network - no longer returns
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1). - docker_network - the
ipam_options
option has been removed. Useipam_config
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_service - no longer returns
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1). - docker_swarm -
state=inspect
has been removed. Usedocker_swarm_info
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_swarm_service - the
constraints
option has been removed. Useplacement.constraints
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_swarm_service - the
limit_cpu
andlimit_memory
options has been removed. Use the corresponding suboptions inlimits
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_swarm_service - the
log_driver
andlog_driver_options
options has been removed. Use the corresponding suboptions inlogging
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_swarm_service - the
reserve_cpu
andreserve_memory
options has been removed. Use the corresponding suboptions inreservations
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_swarm_service - the
restart_policy
,restart_policy_attempts
,restart_policy_delay
andrestart_policy_window
options has been removed. Use the corresponding suboptions inrestart_config
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_swarm_service - the
update_delay
,update_parallelism
,update_failure_action
,update_monitor
,update_max_failure_ratio
andupdate_order
options has been removed. Use the corresponding suboptions inupdate_config
instead (https://github.com/ansible-collections/community.docker/pull/1). - docker_volume - no longer returns
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1). - docker_volume - the
force
option has been removed. Userecreate
instead (https://github.com/ansible-collections/community.docker/pull/1).
community.general
-
All Google cloud modules and plugins have now been migrated away from this collection. They can be found in either the community.google or google.cloud collections. If you use ansible-base 2.10 or newer, redirections have been provided.
If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.general.gce_img
→community.google.gce_img
) and make sure to install the community.google or google.cloud collections as appropriate. -
All Kubevirt modules and plugins have now been migrated from community.general to the community.kubevirt Ansible collection. If you use ansible-base 2.10 or newer, redirections have been provided.
If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.general.kubevirt_vm
→community.kubevirt.kubevirt_vm
) and make sure to install the community.kubevirt collection. -
All
docker
modules and plugins have been removed from this collection. They have been migrated to the community.docker collection. If you use ansible-base 2.10 or newer, redirections have been provided.If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.general.docker_container
→community.docker.docker_container
) and make sure to install the community.docker collection. -
All
hetzner
modules have been removed from this collection. They have been migrated to the community.hrobot collection. If you use ansible-base 2.10 or newer, redirections have been provided.If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.general.hetzner_firewall
→community.hrobot.firewall
) and make sure to install the community.hrobot collection. -
All
postgresql
modules have been removed from this collection. They have been migrated to the community.postgresql collection.If you use ansible-base 2.10 or newer, redirections have been provided. If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.general.postgresql_info
→community.postgresql.postgresql_info
) and make sure to install the community.postgresql collection. - The Google cloud inventory script
gce.py
has been migrated to thecommunity.google
collection. Install thecommunity.google
collection in order to continue using it. -
The
hashi_vault
lookup plugin has been removed from this collection. It has been migrated to the community.hashi_vault collection. If you use ansible-base 2.10 or newer, redirections have been provided.If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.general.hashi_vault
→community.hashi_vault.hashi_vault
) and make sure to install the community.hashi_vault collection. -
The
oc
connection plugin has been removed from this collection. It has been migrated to the community.okd collection. If you use ansible-base 2.10 or newer, redirections have been provided.If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.general.oc
→community.okd.oc
) and make sure to install the community.okd collection. - The deprecated
actionable
callback plugin has been removed. Use theansible.builtin.default
callback plugin withdisplay_skipped_hosts = no
anddisplay_ok_hosts = no
options instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
foreman
module has been removed. Use the modules from the theforeman.foreman collection instead (https://github.com/ansible-collections/community.general/pull/1347) (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
full_skip
callback plugin has been removed. Use theansible.builtin.default
callback plugin withdisplay_skipped_hosts = no
option instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
gcdns_record
module has been removed. Usegoogle.cloud.gcp_dns_resource_record_set
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gcdns_zone
module has been removed. Usegoogle.cloud.gcp_dns_managed_zone
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gce
module has been removed. Usegoogle.cloud.gcp_compute_instance
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gcp_backend_service
module has been removed. Usegoogle.cloud.gcp_compute_backend_service
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gcp_forwarding_rule
module has been removed. Usegoogle.cloud.gcp_compute_forwarding_rule
orgoogle.cloud.gcp_compute_global_forwarding_rule
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gcp_healthcheck
module has been removed. Usegoogle.cloud.gcp_compute_health_check
,google.cloud.gcp_compute_http_health_check
orgoogle.cloud.gcp_compute_https_health_check
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gcp_target_proxy
module has been removed. Usegoogle.cloud.gcp_compute_target_http_proxy
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gcp_url_map
module has been removed. Usegoogle.cloud.gcp_compute_url_map
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
gcspanner
module has been removed. Usegoogle.cloud.gcp_spanner_database
and/orgoogle.cloud.gcp_spanner_instance
instead (https://github.com/ansible-collections/community.general/pull/1370). - The deprecated
github_hooks
module has been removed. Usecommunity.general.github_webhook
andcommunity.general.github_webhook_info
instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
katello
module has been removed. Use the modules from the theforeman.foreman collection instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_aggregate
module has been removed. Use netapp.ontap.na_ontap_aggregate instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_license
module has been removed. Use netapp.ontap.na_ontap_license instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_lun
module has been removed. Use netapp.ontap.na_ontap_lun instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_qtree
module has been removed. Use netapp.ontap.na_ontap_qtree instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_svm
module has been removed. Use netapp.ontap.na_ontap_svm instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_user_role
module has been removed. Use netapp.ontap.na_ontap_user_role instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_user
module has been removed. Use netapp.ontap.na_ontap_user instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
na_cdot_volume
module has been removed. Use netapp.ontap.na_ontap_volume instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
sf_account_manager
module has been removed. Use netapp.elementsw.na_elementsw_account instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
sf_check_connections
module has been removed. Use netapp.elementsw.na_elementsw_check_connections instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
sf_snapshot_schedule_manager
module has been removed. Use netapp.elementsw.na_elementsw_snapshot_schedule instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
sf_volume_access_group_manager
module has been removed. Use netapp.elementsw.na_elementsw_access_group instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
sf_volume_manager
module has been removed. Use netapp.elementsw.na_elementsw_volume instead (https://github.com/ansible-collections/community.general/pull/1347). - The deprecated
stderr
callback plugin has been removed. Use theansible.builtin.default
callback plugin withdisplay_failed_stderr = yes
option instead (https://github.com/ansible-collections/community.general/pull/1347). - The redirect of the
conjur_variable
lookup plugin tocyberark.conjur.conjur_variable
collection was removed (https://github.com/ansible-collections/community.general/pull/1346). - The redirect of the
firewalld
module and thefirewalld
module_utils to theansible.posix
collection was removed (https://github.com/ansible-collections/community.general/pull/1346). - The redirect to the
community.digitalocean
collection was removed for: thedigital_ocean
doc fragment, thedigital_ocean
module_utils, and the following modules:digital_ocean
,digital_ocean_account_facts
,digital_ocean_account_info
,digital_ocean_block_storage
,digital_ocean_certificate
,digital_ocean_certificate_facts
,digital_ocean_certificate_info
,digital_ocean_domain
,digital_ocean_domain_facts
,digital_ocean_domain_info
,digital_ocean_droplet
,digital_ocean_firewall_facts
,digital_ocean_firewall_info
,digital_ocean_floating_ip
,digital_ocean_floating_ip_facts
,digital_ocean_floating_ip_info
,digital_ocean_image_facts
,digital_ocean_image_info
,digital_ocean_load_balancer_facts
,digital_ocean_load_balancer_info
,digital_ocean_region_facts
,digital_ocean_region_info
,digital_ocean_size_facts
,digital_ocean_size_info
,digital_ocean_snapshot_facts
,digital_ocean_snapshot_info
,digital_ocean_sshkey
,digital_ocean_sshkey_facts
,digital_ocean_sshkey_info
,digital_ocean_tag
,digital_ocean_tag_facts
,digital_ocean_tag_info
,digital_ocean_volume_facts
,digital_ocean_volume_info
(https://github.com/ansible-collections/community.general/pull/1346). - The redirect to the
community.mysql
collection was removed for: themysql
doc fragment, themysql
module_utils, and the following modules:mysql_db
,mysql_info
,mysql_query
,mysql_replication
,mysql_user
,mysql_variables
(https://github.com/ansible-collections/community.general/pull/1346). - The redirect to the
community.proxysql
collection was removed for: theproxysql
doc fragment, and the following modules:proxysql_backend_servers
,proxysql_global_variables
,proxysql_manage_config
,proxysql_mysql_users
,proxysql_query_rules
,proxysql_replication_hostgroups
,proxysql_scheduler
(https://github.com/ansible-collections/community.general/pull/1346). - The redirect to the
infinidat.infinibox
collection was removed for: theinfinibox
doc fragment, theinfinibox
module_utils, and the following modules:infini_export
,infini_export_client
,infini_fs
,infini_host
,infini_pool
,infini_vol
(https://github.com/ansible-collections/community.general/pull/1346). - conjur_variable lookup - has been moved to the
cyberark.conjur
collection. A redirection is active, which will be removed in version 2.0.0 (https://github.com/ansible-collections/community.general/pull/570). - digital_ocean_* - all DigitalOcean modules have been moved to the
community.digitalocean
collection. A redirection is active, which will be removed in version 2.0.0 (https://github.com/ansible-collections/community.general/pull/622). - infini_* - all infinidat modules have been moved to the
infinidat.infinibox
collection. A redirection is active, which will be removed in version 2.0.0 (https://github.com/ansible-collections/community.general/pull/607). - iptables_state - the
ANSIBLE_ASYNC_DIR
environment is no longer supported, use theasync_dir
shell option instead (https://github.com/ansible-collections/community.general/pull/1371). - logicmonitor - the module has been removed in 1.0.0 since it is unmaintained and the API used by the module has been turned off in 2017 (https://github.com/ansible-collections/community.general/issues/539, https://github.com/ansible-collections/community.general/pull/541).
- logicmonitor_facts - the module has been removed in 1.0.0 since it is unmaintained and the API used by the module has been turned off in 2017 (https://github.com/ansible-collections/community.general/issues/539, https://github.com/ansible-collections/community.general/pull/541).
- memcached cache plugin - do not import
CacheModule``s directly. Use ``ansible.plugins.loader.cache_loader
instead (https://github.com/ansible-collections/community.general/pull/1371). - mysql_* - all MySQL modules have been moved to the
community.mysql
collection. A redirection is active, which will be removed in version 2.0.0 (https://github.com/ansible-collections/community.general/pull/633). - proxysql_* - all ProxySQL modules have been moved to the
community.proxysql
collection. A redirection is active, which will be removed in version 2.0.0 (https://github.com/ansible-collections/community.general/pull/624). - redis cache plugin - do not import
CacheModule``s directly. Use ``ansible.plugins.loader.cache_loader
instead (https://github.com/ansible-collections/community.general/pull/1371). - xml - when
content=attribute
, theattribute
option is ignored (https://github.com/ansible-collections/community.general/pull/1371).
community.network
-
All FortiOS modules and plugins have been removed from this collection. They have been migrated to the community.fortios collection. If you use ansible-base 2.10 or newer, redirections have been provided.
If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.network.fmgr_device
→community.fortios.fmgr_device
) and make sure to install thecommunity.fortios
collection. -
All
nso
modules have been removed from this collection. They have been migrated to the cisco.nso collection. If you use ansible-base 2.10 or newer, redirections have been provided.If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.network.nso_config
→cisco.nso.nso_config
) and make sure to install thecisco.nso
collection. -
All
routeros
modules and plugins have been removed from this collection. They have been migrated to the community.routeros collection. If you use ansible-base 2.10 or newer, redirections have been provided.If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.network.routeros_command
→community.routeros.command
) and make sure to install the community.routeros collection. - The
cp_publish
module has been removed from this collection. It was a duplicate ofcheck_point.mgmt.cp_mgmt_publish
in the check_point.mgmt collection. If you use ansible-base 2.10 or newer, redirections have been provided. If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (community.network.cp_publish
→check_point.mgmt.cp_mgmt_publish
) and make sure to install the check_point.mgmt collection. -
The
fortimanager
httpapi plugin has been removed from this collection. It was a duplicate of the one in the fortinet.fortimanager collection. If you use ansible-base 2.10 or newer, a redirection has been provided.If you use Ansible 2.9 and installed this collection, you need to adjust the FQCNs (
community.network.fortimanager
→fortinet.fortimanager.fortimanager
) and make sure to install thefortinet.fortimanager
collection. - The dependency on the
check_point.mgmt
collection has been removed. If you depend on that installingcommunity.network
also installscheck_point.mgmt
, you have to make sure to installcheck_point.mgmt
explicitly. - The deprecated Pluribus Networks modules
pn_cluster
,pn_ospf
,pn_ospfarea
,pn_show
,pn_trunk
,pn_vlag
,pn_vlan
,pn_vrouter
,pn_vrouterbgp
,pn_vrouterif
,pn_vrouterlbif
have been removed (https://github.com/ansible-collections/community.network/pull/176). - The deprecated modules
panos_admin
,panos_admpwd
,panos_cert_gen_ssh
,panos_check
,panos_commit
,panos_dag
,panos_dag_tags
,panos_import
,panos_interface
,panos_lic
,panos_loadcfg
,panos_match_rule
,panos_mgtconfig
,panos_nat_rule
,panos_object
,panos_op
,panos_pg
,panos_query_rules
,panos_restart
,panos_sag
,panos_security_rule
,panos_set
have been removed. Use modules from the paloaltonetworks.panos collection instead (https://github.com/ansible-collections/community.network/pull/176). - The redirect to the
mellanox.onyx
collection was removed for: theonyx
cliconf plugin, terminal plugin, module_utils, action plugin, doc fragment, and the following modules:onyx_aaa
,onyx_bfd
,onyx_bgp
,onyx_buffer_pool
,onyx_command
,onyx_config
,onyx_facts
,onyx_igmp
,onyx_igmp_interface
,onyx_igmp_vlan
,onyx_interface
,onyx_l2_interface
,onyx_l3_interface
,onyx_linkagg
,onyx_lldp
,onyx_lldp_interface
,onyx_magp
,onyx_mlag_ipl
,onyx_mlag_vip
,onyx_ntp
,onyx_ntp_servers_peers
,onyx_ospf
,onyx_pfc_interface
,onyx_protocol
,onyx_ptp_global
,onyx_ptp_interface
,onyx_qos
,onyx_snmp
,onyx_snmp_hosts
,onyx_snmp_users
,onyx_syslog_files
,onyx_syslog_remote
,onyx_traffic_class
,onyx_username
,onyx_vlan
,onyx_vxlan
,onyx_wjh
(https://github.com/ansible-collections/community.network/pull/175). - onyx - all onyx modules and plugins have been moved to the mellanox.onyx collection. Redirects have been added that will be removed in community.network 2.0.0 (https://github.com/ansible-collections/community.network/pull/83).
f5networks.f5_modules
- Removed arp_state parameter from the bigip_virtual_address module
Deprecated Features
cisco.nxos
- Deprecated
nxos_bgp
andnxos_bgp_neighbor
modules in favor ofnxos_bgp_global
resource module. - Deprecated
nxos_interface_ospf
in favor ofnxos_ospf_interfaces
Resource Module. - Deprecated
nxos_smu
in favour ofnxos_rpm
module. - The
nxos_ospf_vrf
module is deprecated bynxos_ospfv2
andnxos_ospfv3
Resource Modules.
community.aws
- ec2_vpc_igw_info - After 2022-06-22 the
convert_tags
parameter default value will change fromFalse
toTrue
to match the collection standard behavior (https://github.com/ansible-collections/community.aws/pull/318).
community.docker
- docker_container - currently
published_ports
can contain port mappings next to the special valueall
, in which case the port mappings are ignored. This behavior is deprecated for community.docker 2.0.0, at which point it will either be forbidden, or this behavior will be properly implemented similar to how the Docker CLI tool handles this (https://github.com/ansible-collections/community.docker/issues/8, https://github.com/ansible-collections/community.docker/pull/60).
community.general
- The
gluster_heal_info
,gluster_peer
andgluster_volume
modules have migrated to the gluster.gluster collection. Ansible-base 2.10.1 adjusted the routing target to point to the modules in that collection, so we will remove these modules in community.general 3.0.0. If you use Ansible 2.9, or use FQCNscommunity.general.gluster_*
in your playbooks and/or roles, please update them to use the modules fromgluster.gluster
instead. - The ldap_attr module has been deprecated and will be removed in a later release; use ldap_attrs instead.
- django_manage - the parameter
liveserver
relates to a no longer maintained third-party module for django. It is now deprecated, and will be remove in community.general 3.0.0 (https://github.com/ansible-collections/community.general/pull/1154). - proxmox - the default of the new
proxmox_default_behavior
option will change fromcompatibility
tono_defaults
in community.general 4.0.0. Set the option to an explicit value to avoid a deprecation warning (https://github.com/ansible-collections/community.general/pull/850). - proxmox_kvm - the default of the new
proxmox_default_behavior
option will change fromcompatibility
tono_defaults
in community.general 4.0.0. Set the option to an explicit value to avoid a deprecation warning (https://github.com/ansible-collections/community.general/pull/850). - syspatch - deprecate the redundant
apply
argument (https://github.com/ansible-collections/community.general/pull/360). - xbps - the
force
option never had any effect. It is now deprecated, and will be removed in 3.0.0 (https://github.com/ansible-collections/community.general/pull/568).
community.hashi_vault
- hashi_vault -
VAULT_ADDR
environment variable for optionurl
will have its precedence lowered in 1.0.0; useANSIBLE_HASHI_VAULT_ADDR
to intentionally override a config value (https://github.com/ansible-collections/community.hashi_vault/issues/8). - hashi_vault -
VAULT_AUTH_METHOD
environment variable for optionauth_method
will be removed in 2.0.0, useANSIBLE_HASHI_VAULT_AUTH_METHOD
instead (https://github.com/ansible-collections/community.hashi_vault/issues/17). - hashi_vault -
VAULT_ROLE_ID
environment variable for optionrole_id
will be removed in 2.0.0, useANSIBLE_HASHI_VAULT_ROLE_ID
instead (https://github.com/ansible-collections/community.hashi_vault/issues/20). - hashi_vault -
VAULT_SECRET_ID
environment variable for optionsecret_id
will be removed in 2.0.0, useANSIBLE_HASHI_VAULT_SECRET_ID
instead (https://github.com/ansible-collections/community.hashi_vault/issues/20). - hashi_vault -
VAULT_TOKEN_FILE
environment variable for optiontoken_file
will be removed in 2.0.0, useANSIBLE_HASHI_VAULT_TOKEN_FILE
instead (https://github.com/ansible-collections/community.hashi_vault/issues/15). - hashi_vault -
VAULT_TOKEN_PATH
environment variable for optiontoken_path
will be removed in 2.0.0, useANSIBLE_HASHI_VAULT_TOKEN_PATH
instead (https://github.com/ansible-collections/community.hashi_vault/issues/15).
community.network
- Deprecate connection=local support for network platforms using persistent framework (https://github.com/ansible-collections/community.network/pull/120).
community.vmware
- vmware_host_firewall_manager - the creation of new rule with no
allowed_ip
entry in theallowed_hosts
dictionary won’t be allowed after 2.0.0 release.
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/porting_guides/porting_guide_3.html