import traceback from ansible.plugins.action import ActionBase class ActionModule(ActionBase): def run(self, tmp=None, task_vars=None): try: method = getattr(self, self._task.args['method']) args = tuple(self._task.args.get('args', ())) kwargs = self._task.args.get('kwargs', {}) return { 'changed': False, 'failed': False, 'result': method(*args, **kwargs) } except Exception as e: traceback.print_exc() return { 'changed': False, 'failed': True, 'msg': str(e), 'result': e, }