'lets us know if data has a template'

def is_template(self, data):

    if isinstance(data, string_types):
        try:
            new = self.do_template(data, fail_on_undefined=True)
        except (AnsibleUndefinedVariable, UndefinedError):
            return True
        except:
            return False
        return (new != data)
    elif isinstance(data, (list, tuple)):
        for v in data:
            if self.is_template(v):
                return True
    elif isinstance(data, dict):
        for k in data:
            if (self.is_template(k) or self.is_template(data[k])):
                return True
    return False
