diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 16:04:21 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 16:04:21 +0000 |
commit | 8a754e0858d922e955e71b253c139e071ecec432 (patch) | |
tree | 527d16e74bfd1840c85efd675fdecad056c54107 /docs/docsite/rst/porting_guides/porting_guide_2.6.rst | |
parent | Initial commit. (diff) | |
download | ansible-core-upstream/2.14.3.tar.xz ansible-core-upstream/2.14.3.zip |
Adding upstream version 2.14.3.upstream/2.14.3upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | docs/docsite/rst/porting_guides/porting_guide_2.6.rst | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/docs/docsite/rst/porting_guides/porting_guide_2.6.rst b/docs/docsite/rst/porting_guides/porting_guide_2.6.rst new file mode 100644 index 0000000..d585c00 --- /dev/null +++ b/docs/docsite/rst/porting_guides/porting_guide_2.6.rst @@ -0,0 +1,114 @@ +.. _porting_2.6_guide: + +************************* +Ansible 2.6 Porting Guide +************************* + +This section discusses the behavioral changes between Ansible 2.5 and Ansible 2.6. + +It is intended to assist in updating your playbooks, plugins and other parts of your Ansible infrastructure so they will work with this version of Ansible. + +We suggest you read this page along with `Ansible Changelog for 2.6 <https://github.com/ansible/ansible/blob/stable-2.6/changelogs/CHANGELOG-v2.6.rst>`_ to understand what updates you may need to make. + +This document is part of a collection on porting. The complete list of porting guides can be found at :ref:`porting guides <porting_guides>`. + +.. contents:: Topics + +Playbook +======== + +* The deprecated task option ``always_run`` has been removed, please use ``check_mode: no`` instead. + +Deprecated +========== + +* In the :ref:`nxos_igmp_interface module<nxos_igmp_interface_module>`, ``oif_prefix`` and ``oif_source`` properties are deprecated. Use ``ois_ps`` parameter with a dictionary of prefix and source to values instead. + +Modules +======= + +Major changes in popular modules are detailed here: + + +Modules removed +--------------- + +The following modules no longer exist: + + +Deprecation notices +------------------- + +The following modules will be removed in Ansible 2.10. Please update your playbooks accordingly. + +* ``k8s_raw`` use :ref:`k8s <k8s_module>` instead. +* ``openshift_raw`` use :ref:`k8s <k8s_module>` instead. +* ``openshift_scale`` use :ref:`k8s_scale <k8s_scale_module>` instead. + +Noteworthy module changes +------------------------- + +* The ``upgrade`` module option for ``win_chocolatey`` has been removed; use ``state: latest`` instead. +* The ``reboot`` module option for ``win_feature`` has been removed; use the ``win_reboot`` action plugin instead. +* The ``win_iis_webapppool`` module no longer accepts a string for the ``attributes`` module option; use the free form dictionary value instead. +* The ``name`` module option for ``win_package`` has been removed; this is not used anywhere and should just be removed from your playbooks. +* The ``win_regedit`` module no longer automatically corrects the hive path ``HCCC`` to ``HKCC``; use ``HKCC`` because this is the correct hive path. +* The :ref:`file_module` now emits a deprecation warning when ``src`` is specified with a state + other than ``hard`` or ``link`` as it is only supposed to be useful with those. This could have + an effect on people who were depending on a buggy interaction between src and other state's to + place files into a subdirectory. For instance:: + + $ ansible localhost -m file -a 'path=/var/lib src=/tmp/ state=directory' + + Would create a directory named ``/tmp/lib``. Instead of the above, simply spell out the entire + destination path like this:: + + $ ansible localhost -m file -a 'path=/tmp/lib state=directory' + +* The ``k8s_raw`` and ``openshift_raw`` modules have been aliased to the new ``k8s`` module. +* The ``k8s`` module supports all Kubernetes resources including those from Custom Resource Definitions and aggregated API servers. This includes all OpenShift resources. +* The ``k8s`` module will not accept resources where subkeys have been snake_cased. This was a workaround that was suggested with the ``k8s_raw`` and ``openshift_raw`` modules. +* The ``k8s`` module may not accept resources where the ``api_version`` has been changed to match the shortened version in the Kubernetes Python client. You should now specify the proper full Kubernetes ``api_version`` for a resource. +* The ``k8s`` module can now process multi-document YAML files if they are passed with the ``src`` parameter. It will process each document as a separate resource. Resources provided inline with the ``resource_definition`` parameter must still be a single document. +* The ``k8s`` module will not automatically change ``Project`` creation requests into ``ProjectRequest`` creation requests as the ``openshift_raw`` module did. You must now specify the ``ProjectRequest`` kind explicitly. +* The ``k8s`` module will not automatically remove secrets from the Ansible return values (and by extension the log). In order to prevent secret values in a task from being logged, specify the ``no_log`` parameter on the task block. +* The ``k8s_scale`` module now supports scalable OpenShift objects, such as ``DeploymentConfig``. +* The ``lineinfile`` module was changed to show a warning when using an empty string as a regexp. + Since an empty regexp matches every line in a file, it will replace the last line in a file rather + than inserting. If this is the desired behavior, use ``'^'`` which will match every line and + will not trigger the warning. +* Openstack modules are no longer using ``shade`` library. Instead ``openstacksdk`` is used. Since ``openstacksdk`` should be already present as a dependency to ``shade`` no additional actions are required. + +Plugins +======= + +Deprecation notices +------------------- + +The following modules will be removed in Ansible 2.10. Please update your playbooks accordingly. + +* ``openshift`` use ``k8s`` instead. + + +Noteworthy plugin changes +------------------------- + +* The ``k8s`` lookup plugin now supports all Kubernetes resources including those from Custom Resource Definitions and aggregated API servers. This includes all OpenShift resources. +* The ``k8s`` lookup plugin may not accept resources where the ``api_version`` has been changed to match the shortened version in the Kubernetes Python client. You should now specify the proper full Kubernetes ``api_version`` for a resource. +* The ``k8s`` lookup plugin will no longer remove secrets from the Ansible return values (and by extension the log). In order to prevent secret values in a task from being logged, specify the ``no_log`` parameter on the task block. + + +Porting custom scripts +====================== + +No notable changes. + +Networking +========== + +No notable changes. + +Dynamic inventory scripts +========================= + +* ``contrib/inventory/openstack.py`` has been renamed to ``contrib/inventory/openstack_inventory.py``. If you have used ``openstack.py`` as a name for your OpenStack dynamic inventory file, change it to ``openstack_inventory.py``. Otherwise the file name will conflict with imports from ``openstacksdk``. |