mirror of
https://github.com/qTox/qTox.git
synced 2024-03-22 14:00:36 +08:00
52 lines
1.4 KiB
Python
52 lines
1.4 KiB
Python
|
#!/usr/bin/python2.7
|
||
|
|
||
|
# This script deploys a qTox update to Amazon S3: It will upload ./qtox/win32/version, ./qtox/win32/flist, and ./qtox/win32/files/*
|
||
|
# Pass the path to the root of the local update server as argument, no spaces allowed
|
||
|
|
||
|
import sys
|
||
|
import os
|
||
|
import boto
|
||
|
from boto.s3.key import Key
|
||
|
|
||
|
# Check our local folders
|
||
|
if (len(sys.argv) < 2):
|
||
|
print("ERROR: Needs the path to the local update server in argument")
|
||
|
sys.exit(1)
|
||
|
|
||
|
localpath = sys.argv[1];
|
||
|
prefix = "/qtox/win32/" # We only support Windows for now
|
||
|
|
||
|
# Connect to S3
|
||
|
conn = boto.connect_s3()
|
||
|
bucket = conn.get_bucket('qtox-updater')
|
||
|
print("Connected to S3")
|
||
|
|
||
|
# Delete the old version, so nobody downloads a half-uploaded update
|
||
|
print("Deleting version ...")
|
||
|
oldversion = Key(bucket)
|
||
|
oldversion.key = prefix+'version'
|
||
|
bucket.delete_key(oldversion)
|
||
|
|
||
|
# Upload files/
|
||
|
filenames = next(os.walk(localpath+prefix+'/files/'))[2]
|
||
|
for filename in filenames:
|
||
|
print("Uploading files/"+filename+'...')
|
||
|
k = Key(bucket)
|
||
|
k.key = prefix+'files/'+filename
|
||
|
k.set_contents_from_filename(localpath+prefix+'/files/'+filename)
|
||
|
k.make_public()
|
||
|
|
||
|
# Upload version and flist
|
||
|
print("Uploading flist...")
|
||
|
flist = Key(bucket)
|
||
|
flist.key = prefix+'flist'
|
||
|
flist.set_contents_from_filename(localpath+prefix+'flist')
|
||
|
flist.make_public()
|
||
|
|
||
|
print("Uploading version...")
|
||
|
version = Key(bucket)
|
||
|
version.key = prefix+'version'
|
||
|
version.set_contents_from_filename(localpath+prefix+'version')
|
||
|
version.make_public()
|
||
|
|