PageRenderTime 23ms CodeModel.GetById 16ms app.highlight 3ms RepoModel.GetById 1ms app.codeStats 0ms

/lib/ansible/runner/lookup_plugins/env.py

https://github.com/ajanthanm/ansible
Python | 41 lines | 18 code | 7 blank | 16 comment | 3 complexity | 19f65a59856baefd9b5fff5dec0ad70e MD5 | raw file
 1# (c) 2012, Jan-Piet Mens <jpmens(at)gmail.com>
 2#
 3# This file is part of Ansible
 4#
 5# Ansible is free software: you can redistribute it and/or modify
 6# it under the terms of the GNU General Public License as published by
 7# the Free Software Foundation, either version 3 of the License, or
 8# (at your option) any later version.
 9#
10# Ansible is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13# GNU General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with Ansible.  If not, see <http://www.gnu.org/licenses/>.
17
18from ansible import utils, errors
19from ansible.utils import template
20import os
21
22class LookupModule(object):
23
24    def __init__(self, basedir=None, **kwargs):
25        self.basedir = basedir
26
27    def run(self, terms, inject=None, **kwargs):
28
29        try:
30            terms = template.template(self.basedir, terms, inject)
31        except Exception, e:
32            pass
33
34        if isinstance(terms, basestring):
35            terms = [ terms ]
36
37        ret = []
38        for term in terms:
39            var = term.split()[0]
40            ret.append(os.getenv(var, ''))
41        return ret