@voxis/cli v0.3.15
CLI
The CLI app for the Voxis platform.
Quick Start
Install the CLI
- Install the CLI globally:
npm install -g @voxis/cli
. - Verify the CLI is installed and linked:
vox --version
.
Register
- Run
vox register
. - You'll be prompted for a few details.
Login
- Login with your email:
vox login <EMAIL>
e.g.vox login user@example.com
. - You'll receive a one-time password via email. Enter the password when prompted.
Authenticate your VCS provider
- Grant Voxis access to your VCS:
vox vcs.login <VCS>
, e.g.vox vcs.login gitlab
. - Complete authorisation on the VCS website.
Create your first app
- CD into your repository, then run
vox create
and follow the prompts. - Check the deployment status with
vox status
.
User Authentication
Commands for user registration and login.
>
vox register \<EMAIL?>
Register a new account and user credentials.
Examples
vox register
vox register user@example.com
>
vox login \<EMAIL?>
Login with existing user credentials.
Examples
vox login
vox login user@example.com
>
vox logout
Logs out the current user from the Voxis API. If there is no current user nothing happens.
Flags
Flag | Behaviour |
---|---|
--force | Also remove the credentials from disk. |
Examples
vox logout
vox logout --force
Contexts
Commands for managing logins to multiple accounts. The currently active account login is known as the "context".
>
vox context.list
Prints all the stored contexts.
Examples
vox context.list
vox context
- Shorthand.
>
vox context.use \
Switch to the given context number. The context number can be obtained from vox context.list
.
Examples
vox context.use 2
- Switch to the numbered context.vox use 2
- Shorthand.
>
vox context.remove \
Remove the given context number from disk. The context number can be obtained from vox context.list
.
Examples
vox context.remove 2
Configuration
Commands for managing the configuration of the CLI.
>
vox config.list
Prints all the stored configuration values.
Examples
vox config.list
vox config
- Shorthand.
>
vox config.get \
Prints the value for the given configuration key.
Examples
vox config.get apiBaseUrl
>
vox config.set \ \
Sets the value for the given configuration key.
Examples
vox config.set apiBaseUrl https://api.voxis.io
>
vox config.reset \<KEY?>
Resets the given configuration value or all values if the --all
flag is passed.
Flags
Flag | Behaviour |
---|---|
--all | Resets all configuration values. |
Examples
vox config.reset apiBaseUrl
vox config.reset --all
Domains
Commands for managing domain names.
>
vox domain.list
Prints all the domains added to the account.
Flags
Flag | Behaviour |
---|---|
--more | Print additional information. |
Examples
vox domain.list
vox domain
- Shorthand.
>
vox domain.add \<FQDN?>
Adds a new domain to the account.
Examples
vox domain.add
vox domain.add voxis.io
>
vox domain.setup \
Prints the DNS record setup information for the given domain name.
Examples
vox domain.setup voxis.io
>
vox domain.status \
Prints the status of the given domain name.
Flags
Flag | Behaviour |
---|---|
--more | Print additional information. |
Examples
vox domain.status voxis.io
vox domain voxis.io
- Shorthand.
Vaults
Commands for managing vaults for secure storage of secrets.
>
vox vault.create
Creates a new secrets vault.
Examples
vox vault.create my-vault
>
vox vault.list
List all the vaults in the account.
Examples
vox vault.list
vox vault
- Shorthand.
>
vox vault.status \
Prints the status of the given vault.
Examples
vox vault.status my-vault
vox vault my-vault
- Shorthand.
>
vox vault.add \<VAULT_KEY> \<SECRET_KEY> \
Adds a new secret to the given vault. Specifying a secret that already exists will add a new version with the given value.
Examples
vox vault.add my-vault my-secret 123
>
vox vault.secrets \<VAULT_KEY>
Prints the secrets and their latest version numbers (but not the secret values!) of all the secrets in the given vault.
Examples
vox vault.secrets <VAULT_KEY>
>
vox vault.grant \<VAULT_KEY> \<APP_KEY>
Grants an application access to the given vault.
Examples
vox vault.grant my-vault my-app
Applications
Commands for managing application deployments.
>
vox app.create
Creates a new application and optionally deploys it.
Flags
Flag | Behaviour |
---|---|
--deploy | Deploys the app immediately after creating it. |
Examples
vox app.create
vox create
- Shorthand.
>
vox app.list
Prints a list of all applications in the account.
Flags
Flag | Behaviour |
---|---|
--more | Print additional information. |
Examples
vox app.list
vox app
- Shorthand.
>
vox app.deploy \<APP_KEY> \<DESCRIPTION?>
Triggers a deployment for the given application, with an optional pipeline description.
Flags
Flag | Behaviour |
---|---|
--branch | Specify a branch to deploy. |
--tag | Specify a tag to deploy. |
--force | Deploys all services even if there are no changes. |
Examples
Inside the application directory (or its subdirectories):
vox app.deploy
vox deploy
- Shorthand.
Globally or outside the application directory:
vox app.deploy my-app
vox deploy my-app
- Shorthand.vox app.deploy my-app "Some description goes here"
- Add a pipeline description.
>
vox app.status \<APP_KEY?> \<SERVICE_KEY?> \<ENV_KEY?>
Prints the status of the given application as a whole, or optionally of the given service.
Flags
Flag | Behaviour |
---|---|
--more | Print additional information. |
Examples
Inside the application directory (or its subdirectories):
vox app.status
- Shorthand.vox status
- Shorthand.
Globally or outside the application directory:
vox app.status my-app
- Prints the status of the app.vox status my-app
- Shorthand.vox app.status my-app some-service prod
- Prints the status of the service in the prod environment.vox status my-app some-service prod
- Shorthand.
Miscellaneous
Various other commands.
>
vox about
Prints information about the CLI.
Examples
vox about
>
vox --version
Prints the version number of the CLI.
Examples
vox --version
Flags
There are a few flags you can pass which change the behaviour of the CLI. You can specify flags in long form --verbose
, short form -v
, and with values --branch=develop
in long form.
Flag | Default | Description |
---|---|---|
--all -a | false | Behaviour depends on command. |
--branch | Pass a branch name to the command. | |
--color --colour | true | Pass --color=false to disable color output. |
--deploy | false | Trigger a deployment (behaviour depends on command). |
--dev -d | false | Connects to an API running locally when developing the CLI itself. |
--force -f | false | Forcefully executes the command (behaviour depends on command). |
--more -m | false | Prints more output than the default (behaviour depends on command). |
--tag | Pass a tag name to the command. | |
--verbose -v | false | Turn on verbose logging. |
--version | false | Print the CLI version and exit. |
--yes -y | false | Provides a "yes" answer to any "yes/no" prompt. |