From 018bf02b66e94f0535b553ca4d78ce613703ab44 Mon Sep 17 00:00:00 2001 From: jaydee Date: Fri, 29 Nov 2024 12:37:30 +0100 Subject: [PATCH] bitwarden --- omv_backups_v3.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/omv_backups_v3.py b/omv_backups_v3.py index 8504864..d2993d5 100644 --- a/omv_backups_v3.py +++ b/omv_backups_v3.py @@ -43,6 +43,7 @@ output = None # QJ : getopts _MODE = "manual" _FIRST = _TEST = False +_EXECUTE = False for o, a in opts: if o == "-a": _MODE = "auto" @@ -52,6 +53,8 @@ for o, a in opts: _FIRST = True elif o in ("-t", "--test"): _TEST = True + elif o in ("-d", "--dry"): + _EXECUTE = True client = mqtt_client.Client() client.username_pw_set(mqtt_username, mqtt_password) client.connect(broker,1883,60) @@ -159,8 +162,8 @@ for b in backups[host]: cmnd = "ssh root@omv.home.lan 'mkdir -p " + NEW_BACKUP_DIR + "'" - - status, output = subprocess.getstatusoutput(cmnd) + if _EXECUTE: + status, output = subprocess.getstatusoutput(cmnd) print("Create backup dir") print(cmnd) @@ -184,13 +187,16 @@ for b in backups[host]: # input("????") + status, output = subprocess.getstatusoutput(cmnd) - cmnd = f"ssh root@omv.home.lan 'rm -rf {FULL_BACKUP_LATEST}'" + + cmnd = f"ssh root@omv.home.lan 'rm -rf {FULL_BACKUP_LATEST}'" #print(cmnd) print("Removing latest link") # input("????") - status, output = subprocess.getstatusoutput(cmnd) + if _EXECUTE: + status, output = subprocess.getstatusoutput(cmnd) if _FIRST: cmnd = f"ssh root@omv.home.lan 'cd {NEW_BACKUP_DIR}; ln -s initial latest'" else: @@ -198,7 +204,8 @@ for b in backups[host]: print("Creating new latest link") #print(cmnd) # input("????") - status, output = subprocess.getstatusoutput(cmnd) + if _EXECUTE: + status, output = subprocess.getstatusoutput(cmnd) #Remove old @@ -208,7 +215,8 @@ for b in backups[host]: cmnd = f"cd {NEW_BACKUP_DIR} find ./ -maxdepth 1 -type d -mmin +30 -exec rm -rf {{}} \\;" #print(cmnd) # input("????") - #status, output = subprocess.getstatusoutput(cmnd) + if _EXECUTE: + status, output = subprocess.getstatusoutput(cmnd) now = datetime.datetime.now() ENDTIME = now.strftime("%Y-%m-%d_%H:%M:%S") msg = {"status":"finished","bak_name":b,"start_time":DATETIME,"end_time":ENDTIME,"progress":0}