feat: Fehlerbehandlung für Uploads verbessert und Versionsnummer auf 1.0.41 erhöht
This commit is contained in:
18
app.py
18
app.py
@@ -953,14 +953,24 @@ def run_uploads(local_dir: Path, cfg: dict):
|
||||
dest_root = t.get('dest_path', 'PiCopy').strip('/')
|
||||
dest = f'{_remote_name(t["id"])}:{dest_root}'
|
||||
|
||||
_rclone('mkdir', dest, timeout=30) # Zielordner anlegen falls nicht vorhanden
|
||||
# Zielordner anlegen falls nicht vorhanden
|
||||
mk = _rclone('mkdir', dest, timeout=30)
|
||||
if mk.returncode != 0:
|
||||
err = mk.stderr.strip().splitlines()[-1] if mk.stderr.strip() else 'Ordner konnte nicht angelegt werden'
|
||||
add_log(f'Upload {name}: ✗ {err}')
|
||||
with upload_lock:
|
||||
upload_state['results'].append({'name': name, 'ok': False, 'msg': err})
|
||||
continue
|
||||
|
||||
r = _rclone('copy', str(local_dir), dest,
|
||||
'--create-empty-src-dirs',
|
||||
'--retries', '3',
|
||||
'--retries', '2',
|
||||
timeout=7200)
|
||||
ok = r.returncode == 0
|
||||
err = (r.stderr.strip().splitlines()[-1]
|
||||
if r.stderr.strip() else '') if not ok else ''
|
||||
err = ''
|
||||
if not ok:
|
||||
lines = [l for l in r.stderr.strip().splitlines() if l.strip()]
|
||||
err = lines[-1] if lines else 'Unbekannter Fehler'
|
||||
|
||||
with upload_lock:
|
||||
upload_state['results'].append({'name': name, 'ok': ok, 'msg': err})
|
||||
|
||||
Reference in New Issue
Block a user