Using the Solsta CLI
4 min
min

Using the Solsta CLI

What You Can Do

  • Discover - List available products, environments, and local installs
  • Install - Install environments to any location on disk
  • Update - Update all or specific installed environments
  • Launch - Run a launch entry from any installed environment
  • Repair - Restore an environment to its expected state
  • Uninstall - Remove environments from disk
  • Orchestrate - Queue and schedule downloads as part of a shared network

Help Output

Every command supports help as a subcommand. Append --out=json,minify to any session for machine-parsable output.

Discover

List products:

solsta_cli product read

List environments within a named product:

solsta_cli env read --product_name=LlamaCraft

List local installs:

solsta_cli local read

Note: Object names are case-sensitive.

Install

The --location argument is required to specify the directory where the environment will be installed.

Basic Install:

solsta_cli local install --product=<product_name> --environment=<environment_name> --location=<path>

Install a Specific Release Version:

solsta_cli local install --product_name=<product> --env_name=<environment> --repository_name=<repository> --release_version=<version> --location=<path>

Install Using Snapshot

A snapshot consists of previous deployments within the environment. See Install Environment for more details.

You can use a snapshot as a base, plus a specific release version.

solsta_cli local install --product_name="LlamaCraft" --env_name=dev-daily --history_id=b55b42a6-481d-4c92-b3d6-ad1cb1fc68f8 --location=c:/solsta/cli/installs/llamacraft/dev-daily/

Install Optional Repositories

Optional repositories require both the name of the repository and a release version. The release_version argument supports a "latest" value.

solsta_cli local install --product_name="Plugin Product" --env_name=jenkins-win-auto --repository_name=dev-tools --release_id=latest --location=c:/ssn/solsta/cli/installs/plugin/jenkins-wa/

Installation Notes:

  • An environment can be installed to multiple unique locations
  • Two distinct environments can be installed to the same location, however, to prevent file collisions and issues during updates, the repositories within those environments:
    • Must not manage the same set of files
    • Must not share the same name (e.g. gameclient)
  • Windows: elevation is required when installing to protected directories like C:\Program Files\, otherwise the process errors with exit code 3
  • Each install session is independent. Optional repositories not named will be excluded. Required repositories not named will update to the latest version.
  • Once an optional repository is added to an installation location, updating that location in subsequent sessions results in both required and optional repositories being updated.

Update

Update all environments at once or target by name or location.

Update All:

solsta_cli local update --all

Update by Name:

solsta_cli local update --product_name=<product> --env_name=<environment>

Update by Location:

solsta_cli local update --location=<location>

Launch

Run a launch entry from an installed environment. Use local read to see available launch entry names.

Launch by Location:

solsta_cli local launch --launch_name="<launch_entry>" --location="<location>"

Launch by Location and Object Names:

solsta_cli local launch --launch_name="Launch Debug Tool" --location=c:/gamebuilds/LlamaCraft/dev-daily/ --product_name=LlamaCraft --env_name=dev-daily

Notes:

  • When there is only one environment installed on a specific location, you can launch by using location only
  • If there are multiple environments installed in one location, you will need to specify the product and environment names as well

Rollback

The local update command only goes forward to the latest version. To roll back, use local install along with --history_id and/or --release_version. Note that any optional repositories not named in the install argument string will be uninstalled.

Roll back a single repository

solsta_cli local install --product_name=<product> --env_name=<environment> --repository_name=<repository> --release_version=<version> --location=<location>

Roll back using specified versions of multiple repositories:

solsta_cli local install --product_name=LlamaCraft --env_name=dev-nightly --repository_name=dev-debug --release_version=6.1.0 --repository_name=gameclient --release_version=13.2.33 --location=c:/ssn/solsta/cli/install/llamacraft/dev-nightly/

Roll back using a snapshot:

solsta_cli local install --product_name="LlamaCraft" --env_name=dev-daily --history_id=b55b42a6-481d-4c92-b3d6-ad1cb1fc68f8 --location=c:/ssn/solsta/cli/installs/llamacraft/dev-daily/ 

Snapshot history IDs are in the Solsta GUI under the History tab for any environment.

Repair

Verify and restore any environment to its expected state without a full reinstall. As with update, you can repair all, by name or by location.

Repair All Environments:

solsta_cli local repair --all

Repair by Name:

solsta_cli local repair --product_name=LlamaCraft --env_name=dev-nightly

Repair by Location: 

solsta_cli local repair --location=c:/gamebuilds/LlamaCraft/dev-daily/

Uninstall

Remove files from disk. As with update, you can uninstall all, by name or by location.

Uninstall All Environments:

solsta_cli local uninstall --all

Uninstall by Name:

solsta_cli local uninstall --product_name=LlamaCraft --env_name=dev-nightly

Uninstall by Location: 

solsta_cli local uninstall --location=c:/gamebuilds/LlamaCraft/dev-daily/
Installing to protected directories like C:\Program Files\ requires running the CLI as administrator. A non-elevated process exits with code 3.