1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import argparse
- import json
- import sys
- def parse_arguments(*unparsed_arguments):
- parser = argparse.ArgumentParser(add_help=False)
- parser.add_argument('--report-format', required=True)
- parser.add_argument('--options', required=True)
- parser.add_argument('--select', required=True)
- return parser.parse_args(unparsed_arguments)
- def load_snapshots():
- try:
- return json.load(open('/tmp/fake_lvm.json'))
- except FileNotFoundError:
- return []
- def print_snapshots_json(arguments, snapshots):
- assert arguments.report_format == 'json'
- assert arguments.options == 'lv_name,lv_path'
- assert arguments.select == 'lv_attr =~ ^s'
- print(
- json.dumps(
- {
- 'report': [
- {
- 'lv': snapshots,
- }
- ],
- 'log': [],
- }
- )
- )
- def main():
- arguments = parse_arguments(*sys.argv[1:])
- snapshots = load_snapshots()
- print_snapshots_json(arguments, snapshots)
- if __name__ == '__main__':
- main()
|