summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToshio Kuratomi <toshio@fedoraproject.org>2015-09-03 00:05:16 -0700
committerToshio Kuratomi <toshio@fedoraproject.org>2015-09-03 00:06:34 -0700
commit364313c01f9cb94cdabffe694ca05d6cde16a9ed (patch)
tree06b81731cc4ff59391d1f0944ca4a10c5cf685e2
parent1ae28f606b189b858796ddf9dda4865daad775d6 (diff)
downloadansible-364313c01f9cb94cdabffe694ca05d6cde16a9ed.tar.gz
Simplify and speed up _split_role_params() by moving an invariant outside of a loop.
-rw-r--r--lib/ansible/playbook/role/definition.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/ansible/playbook/role/definition.py b/lib/ansible/playbook/role/definition.py
index 4f23766cd1..2d46cb7ddd 100644
--- a/lib/ansible/playbook/role/definition.py
+++ b/lib/ansible/playbook/role/definition.py
@@ -178,10 +178,11 @@ class RoleDefinition(Base, Become, Conditional, Taggable):
role_def = dict()
role_params = dict()
+ base_attribute_names = frozenset(self._get_base_attributes().keys())
for (key, value) in iteritems(ds):
# use the list of FieldAttribute values to determine what is and is not
# an extra parameter for this role (or sub-class of this role)
- if key not in [attr_name for (attr_name, attr_value) in iteritems(self._get_base_attributes())]:
+ if key not in base_attribute_names:
# this key does not match a field attribute, so it must be a role param
role_params[key] = value
else: