ssh_sync
Sync files between local and remote servers via rsync over SSH, with options for deletion, dry-run, compression, and checksum.
Instructions
Synchronizes files or directories between local and remote using rsync over SSH on the named server. Each of source and destination must carry a local: or remote: prefix and one side must be local and the other remote; with no prefix it assumes a push from local to remote. Mutates the destination. Setting delete true removes destination files absent from source, which is destructive; dryRun true previews without changing anything. Compression is on by default. Password authentication requires sshpass installed locally. Blocked on readonly or restricted servers. Timeout defaults to 30000 ms.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| server | Yes | Server name from configuration | |
| source | Yes | Source path (use "local:" or "remote:" prefix) | |
| destination | Yes | Destination path (use "local:" or "remote:" prefix) | |
| exclude | No | Patterns to exclude from sync | |
| dryRun | No | Perform dry run without actual changes | |
| delete | No | Delete files in destination not in source | |
| compress | No | Compress during transfer | |
| verbose | No | Show detailed progress | |
| checksum | No | Use checksum instead of timestamp for comparison | |
| timeout | No | Timeout in milliseconds (default: 30000) |