From 709d35df378ab90e69c7f9354ac1568c157ebad0 Mon Sep 17 00:00:00 2001 From: Konstantin Gertsenberger <gertsen@jinr.ru> Date: Tue, 29 Nov 2022 10:44:34 +0300 Subject: [PATCH] change owner of the database to given admin user --- db/base/docker-compose.yml | 1 + readhost.py | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/db/base/docker-compose.yml b/db/base/docker-compose.yml index e6a052e..e916250 100755 --- a/db/base/docker-compose.yml +++ b/db/base/docker-compose.yml @@ -9,6 +9,7 @@ services: restart: always environment: - POSTGRES_DB=${DB_NAME} + - POSTGRES_USER=${DB_USER} - POSTGRES_PASSWORD=${DB_PASSWORD} ports: - 5432:5432 diff --git a/readhost.py b/readhost.py index a368069..ea57be9 100755 --- a/readhost.py +++ b/readhost.py @@ -24,10 +24,10 @@ with open(dbjson_file) as dbjson_data: def backup(data): if len(data['dbBackup']) == 0: return "" - cron_text = ("(crontab -l 2>/dev/null; echo \"00 19 * * * sudo ssh " + data['dbHostUser'] + "@" + data['dbHost'] + - " 'mkdir -p /tmp/" + is_name + "/dumps/; docker exec " + is_name + "_db pg_dump -U " + data['dbHostUser'] + " " + data['dbName'] + + cron_text = ("(crontab -l 2>/dev/null; echo \"00 19 * * * ssh root@" + data['dbHost'] + + " 'mkdir -p /tmp/" + is_name + "/dumps/; docker exec " + is_name + "_db pg_dump -U " + dbdata['administrator']['login'] + " " + data['dbName'] + " > /tmp/" + is_name + "/dumps/dump_" + data['expName'] + "_" + is_name + "_\"'$'\"(date +\%Y-\%m-\%d).sql # " + is_name + " platform' \") | crontab -" + - "; \n(crontab -l 2>/dev/null; echo \"15 19 * * * mkdir -p /tmp/" + is_name + "/dumps/; scp " + data['dbHostUser'] + "@" + data['dbHost'] + + "; \n(crontab -l 2>/dev/null; echo \"15 19 * * * mkdir -p /tmp/" + is_name + "/dumps/; scp root@" + data['dbHost'] + ":/tmp/" + is_name + "/dumps/dump_" + data['expName'] + "_" + is_name + "_\"'$'\"(date +\%Y-\%m-\%d).sql /tmp/" + is_name + "/dumps/ # " + is_name + " platform \") | crontab -") backup_dirs = str(data['dbBackup'].encode('utf-8')) backup_dirs = backup_dirs.split(";") @@ -88,6 +88,7 @@ with open (cur_dir+'web/deploy.sh', 'w') as f: with open (cur_dir+'db/base/.env', 'r') as f: old_data = f.read() new_data = old_data.replace('database_name', data['dbName']) +new_data = new_data.replace('admin_user', dbdata['administrator']['login']) new_data = new_data.replace('admin_pass', dbdata['administrator']['password']) with open (cur_dir+'db/.env', 'w') as f: f.write(new_data) -- GitLab