feat: add sync files\folders
This commit is contained in:
@@ -109,10 +109,12 @@ commands не пустые для секций, которые присутст
|
||||
|
||||
### Этап 4 — SFTP-синхронизация
|
||||
|
||||
1. src/sync.rs: открытие SFTP-сесси поверх установленной SSH-сессии.
|
||||
2. Одиночный файл: sftp.open/sendfile -> запись в target.
|
||||
3. Рекурсивная папка: walkdir по source; для каждой подпапки удалённый mkdir
|
||||
с игнорированием ошибки "already exists" (аналог mkdir -p); файлы поверх.
|
||||
1. src/sync.rs: открытие SFTP-сессии поверх установленной SSH-сессии
|
||||
(subsystem sfp через russh + крейт russh-sftp, см. ADR-006).
|
||||
2. Одиночный файл: remote create/truncate -> запись -> shutdown; если target —
|
||||
существующий каталог, файл кладётся внутрь с локальным именем.
|
||||
3. Рекурсивная папка: walkdir по source; для каждой подпапки mkdir если её ещё нет
|
||||
(проверка metadata, аналог mkdir -p); файлы поверх.
|
||||
4. Лог: `[SFTP] transferring dist/ -> /var/www/node-app ... Done!`,
|
||||
счётчик файлов/байт.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user