def compress_gz(options): """Archives a file or a dir into gz/bz2 archive.""" # ./paver gz --name=test -s ./README.md -d ./ #print options src = os.path.abspath(options.src) ext = archive_map[options.archive_type] dest = os.path.join(os.path.abspath(options.dest), backup.gen_file_name(options.name+ext)) import tarfile tar = tarfile.open(dest, 'w:' + options.archive_type) tar.add(src, os.path.basename(src)) tar.close() print dest return dest
def compress_zip(options): """Archives a file or dir into zip archive.""" src = os.path.abspath(options.src) ext = archive_map['zip'] dest = os.path.join(os.path.abspath(options.dest), backup.gen_file_name(options.name+ext)) import zipfile zp = zipfile.ZipFile(dest, 'w', zipfile.ZIP_DEFLATED) if os.path.isfile(src): zp.write(src, os.path.basename(src)) else: os.path.walk(src, add_to_zip, (zp, src)) zp.close() print dest return dest
def mysqldump(options): """Perfoms mysql dump using mysqldump command.""" # ./paver mysqldump --mysql_user=root --db dtztask --db sugar --dest=. result = [] password = '' if options.mysql_password: password = '******' % (options.mysql_password) for database in options.db: mysqldump_command = "mysqldump -u %s %s -h %s -e --opt -c %s" % ( options.mysql_user, password, options.host, database) filename = path(options.dest) / backup.gen_file_name(database + ".sql") mysqldump_command = (mysqldump_command + " > %s") % (filename) sh(mysqldump_command) result.append((database, filename)) print '\n'.join([d + '\n' + dump for d, dump in result]) return result
def mysqldump(options): """Perfoms mysql dump using mysqldump command.""" # ./paver mysqldump --mysql_user=root --db dtztask --db sugar --dest=. result = [] password = "" if options.mysql_password: password = "******" % (options.mysql_password) for database in options.db: mysqldump_command = "mysqldump -u %s %s -h %s -e --opt -c %s" % ( options.mysql_user, password, options.host, database, ) filename = path(options.dest) / backup.gen_file_name(database + ".sql") mysqldump_command = (mysqldump_command + " > %s") % (filename) sh(mysqldump_command) result.append((database, filename)) print "\n".join([d + "\n" + dump for d, dump in result]) return result