@soln/cli
v0.1.15
Published
Command-line interface for Soln member authentication.
Readme
Soln CLI
sl is the command-line interface for Soln tenant operations, Runtime installation, and deployment management. Tenant business commands run through the Tenant Runtime command registry. Deployment commands authenticate to the Control Plane. The package also provides the soln executable.
Requirements
- Node.js 22 or newer and npm.
- An authorized Soln tenant member account.
- For Runtime installation: Docker Engine with Compose and Buildx, Cosign, encrypted tenant data storage, sufficient CPU, memory, and disk space, and network access to the Control Plane and required container registries.
- For server deployment: a public HTTPS domain with DNS, a certificate, and a reverse proxy configured for the Runtime.
- Deployment management requires the
tenant.runtime.deployment.managepermission.
Install
npm install -g @soln/cli
sl versionOr run without a global installation:
npx --yes @soln/cli versionLogin
For an installed Runtime, replace the example values with your Runtime URL, tenant subdomain, and member email:
sl login --base-url https://runtime.example.com --tenant example --email [email protected] --method email
sl whoami --json
sl logoutOmit --method email to sign in with a password. The CLI prompts for the password or verification code. --tenant is the tenant subdomain.
Deploy a server Runtime
Run on the server that will host the containers, after preparing encrypted storage and the HTTPS entry:
sl deployment login --base-url https://api.solncn.com --tenant example --email [email protected] --method email
sl deployment status --json
sl deployment register --dir /opt/soln-tenant-runtime --deployment-target server --runtime-origin https://runtime.example.com
sl deployment prepare --dir /opt/soln-tenant-runtimeConfigure .env.example for the server's encrypted data root and required services. Then install and verify:
sl install --dir /opt/soln-tenant-runtime --setup-file /opt/soln-tenant-runtime/.soln-install-setup.json --yes
sl status --dir /opt/soln-tenant-runtime --check --jsonAfter installation succeeds, delete /opt/soln-tenant-runtime/.soln-install-setup.json and run:
sl deployment logoutDeployment login and Runtime login use separate sessions.
Change an installed Runtime's domain
Prepare the new domain's DNS, certificate, and reverse proxy first. The new HTTPS entry must serve the existing Runtime's /health/ready endpoint. With a Control Plane API that supports Origin changes, run:
sl deployment login --base-url https://api.solncn.com --tenant example --email [email protected] --method email
sl deployment origin --dir /opt/soln-tenant-runtime --runtime-origin https://new-runtime.example.com
sl status --dir /opt/soln-tenant-runtime --json
sl deployment logoutThis updates the registered Origin and local configuration, restarts the affected containers, and checks readiness. Runtime identity, Agent credentials, release version, and tenant data are preserved. Expect a brief interruption and sign in again on the new domain. If a step fails, correct the reported issue and rerun the same command. The command supports server deployments without Cloudflare Tunnel.
Command help and JSON output
List available commands:
sl helpUse --json for machine-readable output:
sl whoami --json
sl status --dir /opt/soln-tenant-runtime --json
sl deployment guide --json