cli.py 895 B

1234567891011121314151617181920212223242526272829303132
  1. from argparse import ArgumentParser
  2. import sqlite3
  3. import json
  4. import os
  5. def main():
  6. parser = ArgumentParser()
  7. subparsers = parser.add_subparsers(dest='entity')
  8. dbparser = subparsers.add_parser('db')
  9. dbparser.add_argument('action')
  10. args = parser.parse_args()
  11. action = args.action
  12. with open('/etc/fourier-config.json', 'r') as fp:
  13. config = json.loads(fp.read())
  14. device_id = config['device_id']
  15. if action == 'stats':
  16. dbpath = '/var/fourier/{}/files.db'.format(device_id)
  17. conn = sqlite3.connect(dbpath)
  18. cursor = conn.cursor()
  19. cursor.execute("select count(*), count(uploaded) from file")
  20. total, uploaded, = cursor.fetchone()
  21. print("total: {}".format(total))
  22. print("uploaded: {}".format(uploaded))
  23. print("pending: {}".format(total - uploaded))
  24. if __name__ == '__main__':
  25. main()