mirror of https://github.com/oxen-io/session-ios
74 lines
2.0 KiB
Python
74 lines
2.0 KiB
Python
#!/usr/bin/env python
|
|
import sys
|
|
import os
|
|
import re
|
|
import commands
|
|
import subprocess
|
|
import argparse
|
|
import inspect
|
|
import urllib2
|
|
import json
|
|
|
|
def fail(message):
|
|
file_name = __file__
|
|
current_line_no = inspect.stack()[1][2]
|
|
current_function_name = inspect.stack()[1][3]
|
|
print 'Failure in:', file_name, current_line_no, current_function_name
|
|
print message
|
|
sys.exit(1)
|
|
|
|
|
|
def execute_command(command):
|
|
try:
|
|
print ' '.join(command)
|
|
output = subprocess.check_output(command)
|
|
if output:
|
|
print output
|
|
except subprocess.CalledProcessError as e:
|
|
print e.output
|
|
sys.exit(1)
|
|
|
|
def add_field(curl_command, form_key, form_value):
|
|
curl_command.append('-F')
|
|
curl_command.append("%s=%s" % (form_key, form_value))
|
|
|
|
if __name__ == '__main__':
|
|
parser = argparse.ArgumentParser(description='Precommit cleanup script.')
|
|
parser.add_argument('--file', required=True, help='used for starting a new version.')
|
|
|
|
args = parser.parse_args()
|
|
|
|
params_response = urllib2.urlopen("https://debuglogs.org/").read()
|
|
|
|
params = json.loads(params_response)
|
|
|
|
upload_url = params['url']
|
|
upload_fields = params['fields']
|
|
|
|
upload_key = upload_fields.pop('key')
|
|
upload_key = upload_key + os.path.splitext(args.file)[1]
|
|
|
|
download_url = 'https://debuglogs.org/' + upload_key
|
|
print 'download_url:', download_url
|
|
|
|
curl_command = ['curl', '-v', '-i', '-X', 'POST']
|
|
|
|
# key must appear before other fields
|
|
add_field(curl_command, 'key', upload_key)
|
|
for field_name in upload_fields:
|
|
add_field(curl_command, field_name, upload_fields[field_name])
|
|
|
|
add_field(curl_command, "content-type", "application/octet-stream")
|
|
|
|
curl_command.append('-F')
|
|
curl_command.append("file=@%s" % (args.file,))
|
|
curl_command.append(upload_url)
|
|
|
|
print ' '.join(curl_command)
|
|
|
|
print 'Running...'
|
|
execute_command(curl_command)
|
|
|
|
print 'download_url:', download_url
|
|
|