Make sure role parsing can handle a few more types in includes/defs

This commit is contained in:
James Cammarata 2015-06-23 10:19:50 -04:00
commit 24d2202591
2 changed files with 8 additions and 2 deletions

View file

@ -24,6 +24,7 @@ from six import iteritems, string_types
import os
from ansible.errors import AnsibleError, AnsibleParserError
from ansible.parsing.yaml.objects import AnsibleBaseYAMLObject
from ansible.playbook.attribute import Attribute, FieldAttribute
from ansible.playbook.role.definition import RoleDefinition
@ -42,7 +43,8 @@ class RoleInclude(RoleDefinition):
@staticmethod
def load(data, current_role_path=None, parent_role=None, variable_manager=None, loader=None):
assert isinstance(data, string_types) or isinstance(data, dict)
assert isinstance(data, string_types) or isinstance(data, dict) or isinstance(data, AnsibleBaseYAMLObject)
ri = RoleInclude(role_basedir=current_role_path)
return ri.load_data(data, variable_manager=variable_manager, loader=loader)