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))