-
Notifications
You must be signed in to change notification settings - Fork 71
Open
Description
Summary
Add an optional SSH rsync publishing target to Planet, letting users sync the generated site to a remote server via rsync over SSH alongside or instead of IPNS publishing.
Features
- SSH rsync toggle and destination in the Publishing settings tab (
user@host:/pathformat) - SSH key selection — users can select a private key from
~/.ssh/which gets copied into the app's sandbox container, solving sandbox permission issues without requiring Full Disk Access - Parallel publishing — IPNS and SSH rsync publish concurrently via
withTaskGroup - Rsync log window — logs all rsync operations to
tmp/rsync.logwith auto-updating display, error highlighting, and a clear button (accessible via Tools > SSH Rsync Log) - Error detection — shows a yellow warning banner in the log window when SSH key errors are detected, directing users to select a key in Publishing settings
- Validation — destination format validated on save with user-friendly error alerts
Files changed
MyPlanetModel.swift— new properties (sshRsyncEnabled,sshRsyncDestination,sshRsyncKeyPath),publishViaSSHRsyncmethod, parallel publish logicBackupMyPlanetModel.swift— backup support for new fieldsMyPlanetEditView.swift— Publishing tab UI with toggle, address field, SSH key pickerPlanetError.swift—InvalidSSHRsyncDestinationError,SSHRsyncPublishErrorKeyboardShortcutHelper.swift— Tools menu entry- New files:
SSHRsync/SSHRsyncLogger.swift,SSHRsync/SSHRsyncLogView.swift
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels