diff --git a/lib/ansible/vars/__init__.py b/lib/ansible/vars/__init__.py index b50fb22712..6e918d70e2 100644 --- a/lib/ansible/vars/__init__.py +++ b/lib/ansible/vars/__init__.py @@ -459,6 +459,8 @@ class VariableManager: templar.set_available_variables(vars_copy) delegated_host_name = templar.template(task.delegate_to, fail_on_undefined=False) + if not delegated_host_name: + raise AnsibleError(message="Undefined delegate_to host for task:", obj=task._ds) if delegated_host_name in delegated_host_vars: # no need to repeat ourselves, as the delegate_to value # does not appear to be tied to the loop item variable