Skip to content

Commit deb5e15

Browse files
committed
Raise exceptions if inventory options are not valid #140
1 parent 8093254 commit deb5e15

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

plugins/inventory/nb_inventory.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -703,4 +703,15 @@ def parse(self, inventory, loader, path, cache=True):
703703
self.query_filters = self.get_option("query_filters")
704704
self.device_query_filters = self.get_option("device_query_filters")
705705
self.vm_query_filters = self.get_option("vm_query_filters")
706+
707+
# Basic type checking of options
708+
if self.query_filters != None and not isinstance(self.query_filters, Iterable):
709+
raise AnsibleError("query_filters is set, but is not a list of dictionaries", obj=self.query_filters, show_content=True)
710+
711+
if self.device_query_filters != None and not isinstance(self.device_query_filters, Iterable):
712+
raise AnsibleError("device_query_filters is set, but is not a list of dictionaries", obj=self.device_query_filters, show_content=True)
713+
714+
if self.vm_query_filters != None and not isinstance(self.vm_query_filters, Iterable):
715+
raise AnsibleError("vm_query_filters is set, but is not a list of dictionaries", obj=self.vm_query_filters, show_content=True)
716+
706717
self.main()

0 commit comments

Comments
 (0)