When value does not exist, return default value instead of stopping ansible with an exception.

This commit is contained in:
Yannig Perré 2015-08-05 10:49:41 +02:00
parent c2968d6d84
commit 733d40a77c
2 changed files with 6 additions and 3 deletions

View file

@ -43,9 +43,11 @@ class LookupModule(object):
# Retrieve all values from a section using a regexp
if is_regexp:
return [v for k, v in self.cp.items(section) if re.match(key, k)]
value = None
# Retrieve a single value
value = self.cp.get(section, key)
if value == None:
try:
value = self.cp.get(section, key)
except ConfigParser.NoOptionError, e:
return dflt
return value

View file

@ -26,4 +26,5 @@
with_items: [ 'value_section', 'other_section' ]
- name: "Reading unknown value"
set_fact:
value2_section2: "{{lookup('ini', 'value2 section=section1 file=lookup.ini')}}"
unknown: "{{lookup('ini', 'value2 default=unknown section=section1 file=lookup.ini')}}"
- debug: var=unknown