diff options
Diffstat (limited to 'roles/ws/flatpak/filter_plugins/flatpak.py')
-rw-r--r-- | roles/ws/flatpak/filter_plugins/flatpak.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/roles/ws/flatpak/filter_plugins/flatpak.py b/roles/ws/flatpak/filter_plugins/flatpak.py new file mode 100644 index 00000000..0ed372ee --- /dev/null +++ b/roles/ws/flatpak/filter_plugins/flatpak.py @@ -0,0 +1,28 @@ +from __future__ import (absolute_import, division, print_function) +__metaclass__ = type + +from ansible import errors + + +def flatpak_app_shortcuts(apps): + try: + shortcuts = [] + for app in apps: + if 'shortcuts' not in app: + continue + for shortcut in app['shortcuts']: + shortcut['app'] = app['name'] + shortcuts.append(shortcut) + return shortcuts + except Exception as e: + raise errors.AnsibleFilterError("flatpak_app_shortcuts(): %s" % str(e)) + + +class FilterModule(object): + + filter_map = { + 'flatpak_app_shortcuts': flatpak_app_shortcuts, + } + + def filters(self): + return self.filter_map |