implemented 'inventory_file' variable. Closes GH-3789.

pull/3813/head
René Moser 11 years ago
parent ceff3b6ba3
commit e8272e365d
No known key found for this signature in database
GPG Key ID: 1D7BBF44E53168C7

@ -397,6 +397,12 @@ class Inventory(object):
return cwd
return dname
def src(self):
""" if inventory came from a file, what's the directory and file name? """
if not self.is_file():
return None
return self.host_list
def playbook_basedir(self):
""" returns the directory of the current playbook """
return self._playbook_basedir

@ -140,6 +140,10 @@ class PlayBook(object):
vars = extra_vars.copy()
if self.inventory.basedir() is not None:
vars['inventory_dir'] = self.inventory.basedir()
if self.inventory.src() is not None:
vars['inventory_file'] = self.inventory.src()
self.filename = playbook
(self.playbook, self.play_basedirs) = self._load_playbook_from_file(playbook, vars)
ansible.callbacks.load_callback_plugins()

@ -410,6 +410,9 @@ class Runner(object):
if self.inventory.basedir() is not None:
inject['inventory_dir'] = self.inventory.basedir()
if self.inventory.src() is not None:
inject['inventory_file'] = self.inventory.src()
# late processing of parameterized sudo_user
if self.sudo_user is not None:
self.sudo_user = template.template(self.basedir, self.sudo_user, inject)

Loading…
Cancel
Save