From 61e18572bbee2431b71bcfdb8e5f74dacda98325 Mon Sep 17 00:00:00 2001 From: Sloane Hertel <19572925+s-hertel@users.noreply.github.com> Date: Thu, 4 Apr 2024 19:07:25 -0400 Subject: [PATCH] Play - remove deprecated ROLE_CACHE in favor of role_cache (#82979) --- .../fragments/remove-deprecated-role-cache.yml | 2 ++ lib/ansible/playbook/play.py | 18 +----------------- test/sanity/ignore.txt | 1 - 3 files changed, 3 insertions(+), 18 deletions(-) create mode 100644 changelogs/fragments/remove-deprecated-role-cache.yml diff --git a/changelogs/fragments/remove-deprecated-role-cache.yml b/changelogs/fragments/remove-deprecated-role-cache.yml new file mode 100644 index 00000000000..ff8e14fc19a --- /dev/null +++ b/changelogs/fragments/remove-deprecated-role-cache.yml @@ -0,0 +1,2 @@ +removed_features: + - Play - removed deprecated ``ROLE_CACHE`` property in favor of ``role_cache``. diff --git a/lib/ansible/playbook/play.py b/lib/ansible/playbook/play.py index 290e5d24de3..7dc256e22dc 100644 --- a/lib/ansible/playbook/play.py +++ b/lib/ansible/playbook/play.py @@ -28,7 +28,7 @@ from ansible.playbook.base import Base from ansible.playbook.block import Block from ansible.playbook.collectionsearch import CollectionSearch from ansible.playbook.helpers import load_list_of_blocks, load_list_of_roles -from ansible.playbook.role import Role, hash_params +from ansible.playbook.role import Role from ansible.playbook.task import Task from ansible.playbook.taggable import Taggable from ansible.vars.manager import preprocess_vars @@ -100,22 +100,6 @@ class Play(Base, Taggable, CollectionSearch): def __repr__(self): return self.get_name() - @property - def ROLE_CACHE(self): - """Backwards compat for custom strategies using ``play.ROLE_CACHE`` - """ - display.deprecated( - 'Play.ROLE_CACHE is deprecated in favor of Play.role_cache, or StrategyBase._get_cached_role', - version='2.18', - ) - cache = {} - for path, roles in self.role_cache.items(): - for role in roles: - name = role.get_name() - hashed_params = hash_params(role._get_hash_dict()) - cache.setdefault(name, {})[hashed_params] = role - return cache - def _validate_hosts(self, attribute, name, value): # Only validate 'hosts' if a value was passed in to original data set. if 'hosts' in self._ds: diff --git a/test/sanity/ignore.txt b/test/sanity/ignore.txt index 3f4ceb1b71d..926e702c00c 100644 --- a/test/sanity/ignore.txt +++ b/test/sanity/ignore.txt @@ -196,7 +196,6 @@ test/units/cli/test_data/role_skeleton/README.md pymarkdown:line-length test/integration/targets/find/files/hello_world.gbk no-smart-quotes test/integration/targets/find/files/hello_world.gbk no-unwanted-characters lib/ansible/galaxy/collection/__init__.py pylint:ansible-deprecated-version-comment # 2.18 deprecation -lib/ansible/playbook/play.py pylint:ansible-deprecated-version # 2.18 deprecation lib/ansible/playbook/play_context.py pylint:ansible-deprecated-version # 2.18 deprecation lib/ansible/plugins/action/__init__.py pylint:ansible-deprecated-version # 2.18 deprecation lib/ansible/template/__init__.py pylint:ansible-deprecated-version # 2.18 deprecation