# HG changeset patch # User Stefano Rivera # Date 1359217387 -7200 # Node ID 98cdb74582256501c360a6a1d7cb9929da927003 # Parent d86bb634346a4f6670862ed54c6d54142f5e1e4c create-upload, why do you exist? diff -r d86bb634346a -r 98cdb7458225 create-upload.py --- a/create-upload.py Sat Jan 26 18:17:59 2013 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,67 +0,0 @@ -#! /usr/bin/env python -'''Helper script for bundling up a game in a ZIP file. - -This script will bundle all game files into a ZIP file which is named as -per the argument given on the command-line. The ZIP file will unpack into a -directory of the same name. - -The script ignores: - -- CVS or SVN subdirectories -- any dotfiles (files starting with ".") -- .pyc and .pyo files - -''' - -import sys -import os -import zipfile - -if len(sys.argv) != 2: - print '''Usage: python %s - -eg. python %s my_cool_game-1.0''' % (sys.argv[0], sys.argv[0]) - sys.exit() - -base = sys.argv[1] -zipname = base + '.zip' - -try: - package = zipfile.ZipFile(zipname, 'w', zipfile.ZIP_DEFLATED) -except RuntimeError: - package = zipfile.ZipFile(zipname, 'w') - -# core files -for name in 'README.txt run_game.py'.split(): - package.write(name, os.path.join(base, name)) -package.write('run_game.py', os.path.join(base, 'run_game.pyw')) - - -# utility for adding subdirectories -def add_files(generator): - for dirpath, dirnames, filenames in generator: - for name in list(dirnames): - if name == 'CVS' or name.startswith('.'): - dirnames.remove(name) - - for name in filenames: - if name.startswith('.'): - continue - suffix = os.path.splitext(name)[1] - if suffix in ('.pyc', '.pyo'): - continue - if name[0] == '.': - continue - filename = os.path.join(dirpath, name) - package.write(filename, os.path.join(base, filename)) - -# add the lib and data directories -add_files(os.walk('gamelib')) -add_files(os.walk('data')) - -# calculate MD5 -import hashlib -d = hashlib.md5() -d.update(file(zipname, 'rb').read()) -print 'Created', zipname -print 'MD5 hash:', d.hexdigest()