mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-06-20 07:10:23 -07:00
Prevent duplicate role insertion into roles: (#50552)
* Corner case in which import_role would add another instance of a role with the same signature into roles: when it already existed there. roles: - name: a tasks: - import_role: name=a would execute role 'a' 3 times instead of the intended 2 (x2 in roles: phase +1 in tasks:) * added tests
This commit is contained in:
parent
e89fb35843
commit
eca7c3c8c7
11 changed files with 64 additions and 0 deletions
|
@ -149,6 +149,9 @@ class Role(Base, Become, Conditional, Taggable):
|
|||
params['from_files'] = from_files
|
||||
if role_include.vars:
|
||||
params['vars'] = role_include.vars
|
||||
|
||||
params['from_include'] = from_include
|
||||
|
||||
hashed_params = hash_params(params)
|
||||
if role_include.role in play.ROLE_CACHE:
|
||||
for (entry, role_obj) in iteritems(play.ROLE_CACHE[role_include.role]):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue