🚀 Major Changes
- Complete Rewrite: The action has been rewritten in Python (previously Node.js) to improve performance and maintainability.
- Smart Skip Strategy: Now uses content hash (MD5) to track file changes instead of relying solely on file size or timestamps.
- A metadata file
.sftp_upload_action_hashesis maintained on the server. - This ensures only truly changed files are uploaded, significantly reducing deployment time for CI/CD pipelines where timestamps change on every build.
- A metadata file
✨ New Features
- Concurrency Control: Added
concurrencyinput (default: 4) to support parallel file uploads, speeding up the transfer process. - Expanded SSH Key Support: Now supports RSA, Ed25519, and ECDSA private keys.
🐛 Bug Fixes & Improvements
- Remove Extra Files: Fixed logic for
removeExtraFilesOnServerto accurately clean up remote files that no longer exist locally. - Performance: Improved overall upload speed and reliability.
⚠️ Migration Notes
- No configuration changes are required for most users.
- A hidden file
.sftp_upload_action_hasheswill be created in yourremoteDir. Do not delete this file if you want to preserve the smart skip functionality.
Full Changelog: v3...v3.0.0
Full Changelog: v3...v3.0.0