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