A GitHub Action that automatically deploys project files to an FTP/FTPS server.
FTP Deploy Action is a GitHub Action that automatically syncs files from a GitHub repository to an FTP or FTPS server. It solves the problem of manually uploading website updates by integrating deployment directly into GitHub's CI/CD workflows, supporting incremental uploads and secure connections.
Developers and teams hosting websites or applications on traditional FTP-based web hosting who want to automate deployments using GitHub Actions.
It provides a free, reliable, and configurable alternative to manual FTP uploads or paid deployment services, with features like dry-run simulations, secure FTPS support, and efficient file synchronization.
Deploys a GitHub project to a FTP server using GitHub actions
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses a state file to upload only changed files, reducing deployment time and bandwidth, as highlighted in the Automated Sync feature.
Supports FTPS with explicit and implicit modes, plus configurable SSL/TLS validation, providing secure connections for various hosting setups.
Includes a dry-run mode to simulate deployments without making changes, ideal for debugging configuration issues before going live.
Allows custom glob patterns to exclude files, with sensible defaults for .git and node_modules, keeping deployments clean and focused.
Relies on FTP/FTPS, which are slower, less reliable, and less secure than modern protocols like SSH or SCP, as the README admits by recommending SSH alternatives.
Overwriting the exclude option requires manually re-adding default patterns, which is error-prone and can lead to accidental file uploads.
Lacks built-in support for building projects; users must add separate actions for tasks like npm run build, increasing workflow complexity.
Exclusive to GitHub Actions, making it unusable with other CI/CD platforms like GitLab CI or Jenkins, limiting flexibility for mixed environments.