1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

Port lookup plugins to global display.

This commit is contained in:
Toshio Kuratomi 2015-11-11 08:33:44 -08:00
parent 4c7128da17
commit b05d0b8c9c
4 changed files with 31 additions and 6 deletions

View file

@ -31,10 +31,12 @@ except ImportError:
__all__ = ['LookupBase'] __all__ = ['LookupBase']
class LookupBase(with_metaclass(ABCMeta, object)): class LookupBase(with_metaclass(ABCMeta, object)):
def __init__(self, loader=None, templar=None, **kwargs): def __init__(self, loader=None, templar=None, **kwargs):
self._loader = loader self._loader = loader
self._templar = templar self._templar = templar
# Backwards compat: self._display isn't really needed, just import the global display and use that.
self._display = display self._display = display
def get_basedir(self, variables): def get_basedir(self, variables):

View file

@ -20,6 +20,14 @@ __metaclass__ = type
from ansible.errors import AnsibleError, AnsibleParserError from ansible.errors import AnsibleError, AnsibleParserError
from ansible.plugins.lookup import LookupBase from ansible.plugins.lookup import LookupBase
try:
from __main__ import display
display = display
except ImportError:
from ansible.utils.display import Display
display = Display()
class LookupModule(LookupBase): class LookupModule(LookupBase):
def run(self, terms, variables=None, **kwargs): def run(self, terms, variables=None, **kwargs):
@ -29,7 +37,7 @@ class LookupModule(LookupBase):
basedir = self.get_basedir(variables) basedir = self.get_basedir(variables)
for term in terms: for term in terms:
self._display.debug("File lookup term: %s" % term) display.debug("File lookup term: %s" % term)
# Special handling of the file lookup, used primarily when the # Special handling of the file lookup, used primarily when the
# lookup is done from a role. If the file isn't found in the # lookup is done from a role. If the file isn't found in the
@ -38,7 +46,7 @@ class LookupModule(LookupBase):
# itself (which will be relative to the current working dir) # itself (which will be relative to the current working dir)
lookupfile = self._loader.path_dwim_relative(basedir, 'files', term) lookupfile = self._loader.path_dwim_relative(basedir, 'files', term)
self._display.vvvv("File lookup using %s as file" % lookupfile) display.vvvv("File lookup using %s as file" % lookupfile)
try: try:
if lookupfile: if lookupfile:
contents, show_data = self._loader._get_file_contents(lookupfile) contents, show_data = self._loader._get_file_contents(lookupfile)

View file

@ -23,6 +23,14 @@ from ansible import constants as C
from ansible.errors import AnsibleError from ansible.errors import AnsibleError
from ansible.plugins.lookup import LookupBase from ansible.plugins.lookup import LookupBase
try:
from __main__ import display
display = display
except ImportError:
from ansible.utils.display import Display
display = Display()
class LookupModule(LookupBase): class LookupModule(LookupBase):
def run(self, terms, variables, **kwargs): def run(self, terms, variables, **kwargs):
@ -32,10 +40,10 @@ class LookupModule(LookupBase):
ret = [] ret = []
for term in terms: for term in terms:
self._display.debug("File lookup term: %s" % term) display.debug("File lookup term: %s" % term)
lookupfile = self._loader.path_dwim_relative(basedir, 'templates', term) lookupfile = self._loader.path_dwim_relative(basedir, 'templates', term)
self._display.vvvv("File lookup using %s as file" % lookupfile) display.vvvv("File lookup using %s as file" % lookupfile)
if lookupfile and os.path.exists(lookupfile): if lookupfile and os.path.exists(lookupfile):
with open(lookupfile, 'r') as f: with open(lookupfile, 'r') as f:
template_data = f.read() template_data = f.read()

View file

@ -24,16 +24,23 @@ from ansible.plugins.lookup import LookupBase
from ansible.module_utils.urls import open_url, ConnectionError, SSLValidationError from ansible.module_utils.urls import open_url, ConnectionError, SSLValidationError
from ansible.utils.unicode import to_unicode from ansible.utils.unicode import to_unicode
class LookupModule(LookupBase): try:
from __main__ import display
display = display
except ImportError:
from ansible.utils.display import Display
display = Display()
class LookupModule(LookupBase):
def run(self, terms, variables=None, **kwargs): def run(self, terms, variables=None, **kwargs):
validate_certs = kwargs.get('validate_certs', True) validate_certs = kwargs.get('validate_certs', True)
ret = [] ret = []
for term in terms: for term in terms:
self._display.vvvv("url lookup connecting to %s" % term) display.vvvv("url lookup connecting to %s" % term)
try: try:
response = open_url(term, validate_certs=validate_certs) response = open_url(term, validate_certs=validate_certs)
except urllib2.HTTPError as e: except urllib2.HTTPError as e: