feat: Timeout für Remote-Testbefehle reduziert und Versionsnummer auf 1.0.39 erhöht
This commit is contained in:
22
app.py
22
app.py
@@ -913,27 +913,19 @@ def delete_remote(tid):
|
||||
|
||||
|
||||
def test_remote(tid):
|
||||
import tempfile, os as _os
|
||||
remote = _remote_name(tid)
|
||||
# 1. Verbindung prüfen
|
||||
r = _rclone('lsd', f'{remote}:', timeout=20)
|
||||
r = _rclone('lsd', f'{remote}:', timeout=15)
|
||||
if r.returncode != 0:
|
||||
err = r.stderr.strip().splitlines()[-1] if r.stderr.strip() else 'Verbindung fehlgeschlagen'
|
||||
return False, f'Verbindung: {err}'
|
||||
# 2. Schreibzugriff prüfen: temporäres Verzeichnis + Datei, dann wieder löschen
|
||||
# 2. Schreibzugriff prüfen: Testverzeichnis anlegen + sofort löschen
|
||||
test_dir = f'{remote}:.picopy_writetest'
|
||||
with tempfile.NamedTemporaryFile(mode='w', suffix='.tmp', delete=False) as tf:
|
||||
tf.write('PiCopy write test')
|
||||
tmp_path = tf.name
|
||||
try:
|
||||
rw = _rclone('copy', tmp_path, test_dir, timeout=20)
|
||||
if rw.returncode != 0:
|
||||
err = rw.stderr.strip().splitlines()[-1] if rw.stderr.strip() else 'Schreiben fehlgeschlagen'
|
||||
return False, f'Kein Schreibzugriff: {err}'
|
||||
_rclone('purge', test_dir, timeout=10)
|
||||
finally:
|
||||
try: _os.unlink(tmp_path)
|
||||
except Exception: pass
|
||||
rw = _rclone('mkdir', test_dir, timeout=15)
|
||||
if rw.returncode != 0:
|
||||
err = rw.stderr.strip().splitlines()[-1] if rw.stderr.strip() else 'Schreiben fehlgeschlagen'
|
||||
return False, f'Kein Schreibzugriff: {err}'
|
||||
_rclone('rmdir', test_dir, timeout=10)
|
||||
return True, ''
|
||||
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
1.0.38
|
||||
1.0.39
|
||||
Reference in New Issue
Block a user