servyx-cli
v0.1.13
Published
Servyx CLI — Upload local projects and deploy via the Servyx platform
Readme
servyx-cli
Deploy local projects to Servyx by rsyncing files over SSH, then triggering the existing Servyx deployment queue and pipeline.
Prerequisites
- Node.js 18+
rsyncandsshavailable on your PATH- Your SSH public key added to the app's system user in the Servyx dashboard
- Network access to the target server on port 22
Install
npm install -g servyx-cliThis installs the latest published version (no version pin needed). To upgrade an existing install:
npm update -g servyx-cli
# or explicitly:
npm install -g servyx-cli@latestCheck your installed version:
servyx --versionFrom source:
cd servyx-cli && npm install && npm linkQuick start
# 1. Authenticate
servyx login
# 2. Link your project directory to an app
cd my-app
servyx link
# 3. Deploy (server .env and .htaccess are preserved by default)
servyx deploy
# 3b. React/Vite frontends: upload local .env files too
servyx deploy --with-env
# 4. Check recent deployments
servyx statusConfiguration
- Global config:
~/.servyx/config.json(mode 600) - Project config:
servyx.jsonin your project root - Optional excludes:
.servyxignore(rsync patterns). By default, hidden files (.env,.htaccess, etc.) are not uploaded and existing server copies are preserved. Useservyx deploy --with-envto upload local.env/.env.*files (useful for React/Vite builds).
How it works
servyx deployfetches the deploy target (SSH user, host, staging path) from cli-service- Files are rsynced to
<app_root>/.cli-stagingon the server (local hidden files are skipped unless--with-env) - Live dotfiles from
publicare copied into staging so they are not removed on deploy (.envis skipped when using--with-env) - cli-service calls server-service to queue a CLI deployment (
with_envtells the agent to sync uploaded env files) - The agent syncs staging → public, preserving
.htaccessand (by default).envon the server - The CLI polls until the deployment succeeds or fails
