From 21e421ce531fa471eef352cf9049695514da81ff Mon Sep 17 00:00:00 2001 From: James Cammarata Date: Mon, 24 Aug 2015 11:44:28 -0400 Subject: [PATCH] Validate required list items are not None or empty strings Fixes #12011 --- lib/ansible/playbook/base.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/ansible/playbook/base.py b/lib/ansible/playbook/base.py index 56c42fc0ee6..711857c1947 100644 --- a/lib/ansible/playbook/base.py +++ b/lib/ansible/playbook/base.py @@ -298,6 +298,9 @@ class Base: for item in value: if not isinstance(item, attribute.listof): raise AnsibleParserError("the field '%s' should be a list of %s, but the item '%s' is a %s" % (name, attribute.listof, item, type(item)), obj=self.get_ds()) + elif attribute.required and attribute.listof == string_types: + if item is None or item.strip() == "": + raise AnsibleParserError("the field '%s' is required, and cannot have empty values" % (name,), obj=self.get_ds()) elif attribute.isa == 'set': if not isinstance(value, (list, set)): value = [ value ]