mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Add fileglob Jinja2 filter. Fixes #3563
This commit is contained in:
parent
ef28d62846
commit
535ce97067
2 changed files with 14 additions and 0 deletions
|
@ -21,6 +21,7 @@ import os.path
|
|||
import yaml
|
||||
import types
|
||||
import pipes
|
||||
import glob
|
||||
from ansible import errors
|
||||
from ansible.utils import md5s
|
||||
|
||||
|
@ -74,6 +75,10 @@ def quote(a):
|
|||
''' return its argument quoted for shell usage '''
|
||||
return pipes.quote(a)
|
||||
|
||||
def fileglob(pathname):
|
||||
''' return list of matched files for glob '''
|
||||
return glob.glob(pathname)
|
||||
|
||||
class FilterModule(object):
|
||||
''' Ansible core jinja2 filters '''
|
||||
|
||||
|
@ -115,5 +120,8 @@ class FilterModule(object):
|
|||
|
||||
# md5 hex digest of string
|
||||
'md5': md5s,
|
||||
|
||||
# file glob
|
||||
'fileglob': fileglob,
|
||||
}
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
Test bundled filters
|
||||
'''
|
||||
|
||||
import os.path
|
||||
import unittest, tempfile, shutil
|
||||
from ansible import playbook, inventory, callbacks
|
||||
import ansible.runner.filter_plugins.core
|
||||
|
@ -83,6 +84,11 @@ class TestFilters(unittest.TestCase):
|
|||
a = ansible.runner.filter_plugins.core.quote('ls | wc -l')
|
||||
assert a == "'ls | wc -l'"
|
||||
|
||||
def test_fileglob(self):
|
||||
pathname = os.path.join(os.path.dirname(__file__), '*')
|
||||
a = ansible.runner.filter_plugins.core.fileglob(pathname)
|
||||
assert __file__ in a
|
||||
|
||||
#def test_filters(self):
|
||||
|
||||
# this test is pretty low level using a playbook, hence I am disabling it for now -- MPD.
|
||||
|
|
Loading…
Reference in a new issue