def restore(cls, zip_archive, **kwargs):
fd, path = tempfile.mkstemp()
try:
uid = pwd.getpwnam("postgres").pw_uid
os.fchown(fd, uid, -1)
with os.fdopen(fd, 'w') as tmp:
shutil.copyfileobj(zip_archive.open('postgresql.backup'), tmp)
tmp.seek(0)
pg_restore(path)
finally:
os.remove(path)
return path
评论列表
文章目录