def prepare_game(self, name, time='now', extras=True): fullpath = self._get_fullpath(name) if os.path.exists(fullpath): _checkifdir(fullpath) else: makepaths(fullpath) zfilename = self.archivehelper.determine_install_zipfilename(name=name) if not os.path.exists(zfilename): raise ExistsError, "%s for %s doesn't exist." % (zfilename, name) zfile = MyZipFile(zfilename, 'r') zfile.extract(path=fullpath, report=self._report_extract_from_installed_archive) if extras: self.restore_extra_files(name, time=time)
def archive_fresh_install(self, gamedata, path): name = gamedata['name'] fullpath = path _checkifdir(fullpath) here = os.getcwd() os.chdir(path) installed_files = generate_md5sums() zfilename = self.archivehelper.determine_install_zipfilename(name=name) if os.path.exists(zfilename): raise ExistsError, 'Installed zipfile for %s already exists.' % name zfile = MyZipFile(zfilename, 'w') zfile.archive_path(path='.', report=self._report_add_to_installed_archive) zfile.close() os.chdir(here) return installed_files