aboutsummaryrefslogtreecommitdiffstats
path: root/.travis/after_script
diff options
context:
space:
mode:
Diffstat (limited to '.travis/after_script')
-rwxr-xr-x.travis/after_script49
1 files changed, 49 insertions, 0 deletions
diff --git a/.travis/after_script b/.travis/after_script
new file mode 100755
index 000000000..469796be9
--- /dev/null
+++ b/.travis/after_script
@@ -0,0 +1,49 @@
+#!/usr/bin/env python
+
+import hashlib
+import json
+import os
+import subprocess
+import sys
+import tarfile
+
+sharename = '48rLGpU1'
+
+root = os.path.join(os.path.dirname(__file__), '..')
+with open(os.path.join(root, 'cpanfile.snapshot')) as cpanfile:
+ hash = hashlib.md5(cpanfile.read()).hexdigest()
+wanted_filename = 'fixmystreet-local-%s.tgz' % hash
+
+if os.path.exists(wanted_filename):
+ print "File was downloaded, no need to upload"
+ sys.exit()
+
+print "Creating archive..."
+tfile = tarfile.open(wanted_filename, 'w:gz')
+tfile.add('local')
+tfile.close()
+
+print "Logging in..."
+refreshtoken = os.getenv('TOKEN')
+if not refreshtoken:
+ print " No token available, bailing"
+ sys.exit()
+output = subprocess.check_output([
+ 'curl', '-s', '-X', 'POST', '--data', '{"refreshtoken":"%s"}' % refreshtoken,
+ 'https://open.ge.tt/1/users/login'
+])
+output = json.loads(output)
+accesstoken = output['accesstoken']
+
+print "Creating file..."
+output = subprocess.check_output([
+ 'curl', '-s', '-X', 'POST', '--data', '{"filename":"%s"}' % wanted_filename,
+ 'https://open.ge.tt/1/files/%s/create?accesstoken=%s' % (sharename, accesstoken)
+])
+output = json.loads(output)
+puturl = output['upload']['puturl']
+
+print "Uploading archive to ge.tt..."
+with open('output', 'w') as out:
+ subprocess.call([ 'curl', '-#', '--upload-file', wanted_filename, puturl ], stdout=out)
+print "Completed"