![require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages](https://cdn.sanity.io/images/cgdhsj6q/production/be8ab80c8efa5907bc341c6fefe9aa20d239d890-1600x1097.png?w=400&fit=max&auto=format)
Security News
require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
sftp-deployer
Advanced tools
A command-line tool for lightning-fast SFTP deployments.
You need Node.JS to use sftp-deployer
.
npm install -g sftp-deployer
The following command uploads the contents of the ./build
directory to a remote SSH host, to /var/www/build
:
sftp-deployer --host example.com \
--user bob \
--key private_key.pem \
--local ./build \
--target /var/www/build
Available options:
-V, --version output the version number
-c, --config <config file> configuration file to use (default: ".sftp.json")
-h, --host <host> hostname to connect to
-p, --port <port> SSH port to use (defaults to 22)
-u, --user <username> the ssh username
-k, --key <key_or_file> path to private key file, or private key itself
--password <password> the password to the private key
-l, --local <path> directory to upload
-t, --target <target_dir> target directory on remote host
-s, --staging <staging_dir> staging directory on remote host
(defaults to the target directory + .staging)
-u, --upload <upload_dir> upload directory on remote host
(default: "/var/tmp")
--help display help for command
Each of the options listed above may also be specified in a configuration file called .sftp.json
.
You may override this filename by using the -c
option (see above).
For example:
{
"host": "example.com",
"port": 1234, /* Optional, defaults to 22 */
"user": "bob"
"key": "private_key.pem"
"password": "super_secure", /* Optional, only needed if the key is encrypted */
"local": "./build",
"target": "/var/www/build",
"staging": "/var/www/incoming/uploads", /* Optional, defaults to target directory + .staging */
"upload": "/my/upload/dir" /* Optional, defaults to /var/tmp */
}
You may then simply invoke sftp-deployer
and it will take its input from the .sftp.json
file in the current working directory.
When a directory is uploaded but a target directory already exists, the following steps are taken to minimize downtime:
This makes sure that the target directory is only down for a couple of milliseconds.
FAQs
A command-line tool for lightning-fast SFTP deployments
The npm package sftp-deployer receives a total of 1 weekly downloads. As such, sftp-deployer popularity was classified as not popular.
We found that sftp-deployer demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
Security News
PyPI now supports iOS and Android wheels, making it easier for Python developers to distribute mobile packages.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.