| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- #!/usr/bin/python
- import sys
- import os
- import json
- import re
- import base64
- import argparse
- import subprocess
- b64id = base64.b64encode(os.urandom(9))
- parser = argparse.ArgumentParser()
- parser.add_argument('src', nargs=1)
- parser.add_argument('dst', nargs=1)
- parser.add_argument('-programs', dest='programspath')
- parser.add_argument('-receivers', dest='receivers', type=int)
- parser.add_argument('-api-secret', dest='api_secret')
- parser.add_argument('-box-id', dest='box_id')
- arg = parser.parse_args()
- theid = arg.box_id
- infile = arg.src
- outfile = arg.dst
- with open(infile[0], 'rb') as fpin:
- data = json.loads(fpin.read())
- data['device_id'] = theid
- data['installDir'] = arg.programspath
- data['receivers_count'] = arg.receivers
- data['apiSecret'] = arg.api_secret
- with open(outfile[0], 'w') as fpout:
- fpout.write(json.dumps(data, indent=4))
- print(theid)
- fourier_path = '/var/fourier'
- box_path = os.path.join(fourier_path, theid)
- db_path = os.path.join(box_path, 'files.db')
- if os.path.isdir(fourier_path):
- if not os.path.isdir(box_path):
- print('** Creating Box ID folder')
- os.mkdir(box_path)
- if not os.path.isfile(db_path):
- print('** Preparing local database')
- subprocess.call(['fourier', 'db', 'setup'])
- print('** Applying migrations')
- subprocess.call(['fourier', 'db', 'migrate'])
- print('** Creating database')
|