import sys import os from subprocess import call db_name = 'odoo13' data_dir = '/home/sugiana/.local/share/Odoo' filestore_dir = os.path.join('filestore', db_name) pg_file = db_name + '.pg' pg_fullpath = os.path.join(data_dir, pg_file) current_dir = os.path.realpath('.') backup_file = os.path.join(current_dir, db_name + '.tgz') rc = call(['pg_dump', '-Fc', '-v', db_name, '-f', pg_fullpath]) if rc != 0: sys.exit() os.chdir(data_dir) rc = call(['tar', 'cfzv', backup_file, pg_file, filestore_dir]) if rc != 0: sys.exit() os.remove(pg_file) print('{} tersimpan'.format(backup_file))