diff options
author | Yujun Zhang <zhang.yujunz@zte.com.cn> | 2017-04-15 09:07:30 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2017-04-15 09:07:30 +0000 |
commit | 550a975949328619139631e363c3bc1b48411402 (patch) | |
tree | 2f9d75d34ca678d5b979265f093740f086be9c4d /qtip | |
parent | dd5e0ce2bd1c6be943bbb9eff3698d92c0c812ad (diff) | |
parent | 9c274969f1d8cee2012ec16a21ad85d20d585c84 (diff) |
Merge "Dump collected facts"
Diffstat (limited to 'qtip')
-rw-r--r-- | qtip/ansible_library/plugins/action/collect.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/qtip/ansible_library/plugins/action/collect.py b/qtip/ansible_library/plugins/action/collect.py index 88ad0e35..26e813b8 100644 --- a/qtip/ansible_library/plugins/action/collect.py +++ b/qtip/ansible_library/plugins/action/collect.py @@ -10,6 +10,7 @@ ############################################################################## from collections import defaultdict +import os import re from ansible.plugins.action import ActionBase @@ -26,6 +27,10 @@ class ActionModule(ActionBase): string = self._task.args.get('string') patterns = self._task.args.get('patterns') + dump = self._task.args.get('dump') + if dump is not None: + dump_facts(task_vars['inventory_hostname'], [{'name': 'inxi.log', 'content': string}]) + return collect(patterns, string) @@ -43,3 +48,11 @@ def collect(patterns, string): captured[key].append(value) return captured + + +def dump_facts(hostname, facts): + dump_root = os.path.join('dump', hostname) + if not os.path.exists(dump_root): + os.mkdir(dump_root) + return [{'name': fact['name'], 'result': open(os.path.join(dump_root, fact['name']), 'w+').write(fact['content'])} + for fact in facts] |