feat: Verbindungstest für Uploads hinzugefügt und Versionsnummer auf 1.0.42 erhöht
This commit is contained in:
22
app.py
22
app.py
@@ -950,18 +950,26 @@ def run_uploads(local_dir: Path, cfg: dict):
|
|||||||
upload_state['current'] = name
|
upload_state['current'] = name
|
||||||
|
|
||||||
add_log(f'Upload >> {name}...')
|
add_log(f'Upload >> {name}...')
|
||||||
|
remote = _remote_name(t['id'])
|
||||||
dest_root = t.get('dest_path', 'PiCopy').strip('/')
|
dest_root = t.get('dest_path', 'PiCopy').strip('/')
|
||||||
dest = f'{_remote_name(t["id"])}:{dest_root}'
|
dest = f'{remote}:{dest_root}'
|
||||||
|
|
||||||
# Zielordner anlegen falls nicht vorhanden
|
# 1. Verbindung prüfen
|
||||||
mk = _rclone('mkdir', dest, timeout=30)
|
conn = _rclone('lsd', f'{remote}:', timeout=15)
|
||||||
if mk.returncode != 0:
|
if conn.returncode != 0:
|
||||||
err = mk.stderr.strip().splitlines()[-1] if mk.stderr.strip() else 'Ordner konnte nicht angelegt werden'
|
lines = [l for l in conn.stderr.strip().splitlines() if l.strip()]
|
||||||
add_log(f'Upload {name}: ✗ {err}')
|
err = lines[-1] if lines else 'NAS nicht erreichbar'
|
||||||
|
add_log(f'Upload {name}: ✗ NAS nicht erreichbar - {err}')
|
||||||
|
add_log(f'Upload {name}: Hinweis: Prüfe ob VPN aktiv ist und den NAS blockiert')
|
||||||
with upload_lock:
|
with upload_lock:
|
||||||
upload_state['results'].append({'name': name, 'ok': False, 'msg': err})
|
upload_state['results'].append({'name': name, 'ok': False,
|
||||||
|
'msg': f'NAS nicht erreichbar (VPN aktiv?): {err}'})
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
# 2. Zielordner anlegen
|
||||||
|
_rclone('mkdir', dest, timeout=30)
|
||||||
|
|
||||||
|
# 3. Kopieren
|
||||||
r = _rclone('copy', str(local_dir), dest,
|
r = _rclone('copy', str(local_dir), dest,
|
||||||
'--create-empty-src-dirs',
|
'--create-empty-src-dirs',
|
||||||
'--retries', '2',
|
'--retries', '2',
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
1.0.41
|
1.0.42
|
||||||
Reference in New Issue
Block a user