# ------------------------------------------------------------------------------ import os, os.path, zipfile, sys from appy.shared import appyPath from appy.bin.clean import Cleaner # ------------------------------------------------------------------------------ class Zipper: def __init__(self): self.zipFileName = '%s/Desktop/appy.zip' % os.environ['HOME'] def createZipFile(self): print 'Creating %s...' % self.zipFileName zipFile = zipfile.ZipFile(self.zipFileName, 'w', zipfile.ZIP_DEFLATED) for dir, dirnames, filenames in os.walk(appyPath): for f in filenames: fileName = os.path.join(dir, f) arcName = fileName[fileName.find('appy/'):] print 'Adding %s' % fileName zipFile.write(fileName, arcName) zipFile.close() def run(self): # Where to put the zip file ? print "Where do you want to put appy.zip ? [Default is %s] " % \ os.path.dirname(self.zipFileName), response = sys.stdin.readline().strip() if response: if os.path.exists(response) and os.path.isdir(response): self.zipFileName = '%s/appy.zip' % response else: print '%s is not a folder.' % response sys.exit(1) if os.path.exists(self.zipFileName): print 'Removing existing %s...' % self.zipFileName os.remove(self.zipFileName) Cleaner().run(verbose=False) self.createZipFile() # Main program ----------------------------------------------------------------- if __name__ == '__main__': Zipper().run() # ------------------------------------------------------------------------------