Aether CLI
The Aether Engine SDK includes the aetherCLI for Windows, this has commands used to create, develop and deploy Simulate simulations.
The general format for using the aether CLI is
aether [command] [options...]
For each command further help options can be found by adding the --help argument after the command name as shown below for the aether run command:
aether run --help
The following parameters are also available on all CLI commands. Note that --version should be used without passing through a command.
Parameter
Description
--cli-debug
(Default: false) Enable debug logging
--version
Display version information.
--help -h -?
Display help pages

Available commands

Command
Description
run
Runs a simulation, must be in the simulation directory
status
Query for the status of the simulation
new
Create a new Simulate project
stop
Stop a running simulation
log
Retrieve information about logs
login
Log the CLI into your Hadean account
List the processes that are paused and can be debugged
Continue any paused processes that don't have a debugger attached
clean
Cleans up project related files
metric
Retrieves metrics from a running Aether Engine simulation
help
Display more information on a specific command
version
Display version information
cluster
Show details about available clusters

aether run

Runs a simulation, must be in the simulation directory

Parameters

Parameter
Description
-d, --directory
The directory containing the simulation source code
-c, --user-config-directory
Directory that contains the user.cfg config file
--project-name
Passing in a project-name allows for multiple projects to be stored on the same cluster. This can improve upload times when switching between projects as the previous project will not be overwritten meaning the required binaries will already be present on the cluster on next run. The project name also appears when running the aether status command, which can be useful to help identify what is currently running on a cluster
--detached
(Default: false) Start the simulation and immediately detach from it
-f, --force
(Default: false) Do not ask for user confirmation before starting the simulation
--debug
(Default: false) Start the simulation with debugger enabled
--clean
(Default: false) Do clean builds
--log-size-limit
Bound the space taken by logs to the specified size
--cluster
(Default: local) The cluster key or name to use for running the simulation.
LOCAL DEVELOPMENT FEATURES
Note that the following features are unsupported they are for development purposes only, if you run into problems please run your simulation without these flags set
--unsupported-persist-flag
When running locally using WSL, adding this flag to the run command will cause the WSL container to remain available after the simulation has stopped running
--unsupported-use <wsl-image>
It is possible to reattach to a previously created WSL container if the persist flag was used. From a windows command prompt run wsl -l -v To find a list of containers, aether will have used a timestamp in the name to help identify your target e.g. aether-sdk-wsl-20220413-101021

aether status

Query for the status of the simulation

Parameters

Parameter
Description
-p, --project-name
The project to get the status for
-q, --quiet
(Default: false) Do not print any output
--cluster
(Default: local) The cluster key or name to use for running the simulation.

aether new

Create a new Aether Engine project

Parameters

Parameter
Description
PROJECT_NAME
(Default: aether-project) The name of the project, this will be used for the name of the directory

aether stop

Stop a running simulation

Parameters

Parameter
Description
--cli-debug
(Default: false) Enable debug logging
--cluster
(Default: local) The cluster key or name to use for running the simulation.

aether log

Retrieve information about logs

Parameters

Parameter
Description
--filename
Save logs to a file with the given name
--follow
Stream the logs of a simulation
--from-start
Stream the logs from start of a simulation
--cluster
(Default: local) The cluster key or name to use for running the simulation.

aether login

Log the CLI into your Hadean account, this will attempt to open a web browser and redirect you to the Hadean portal login page

aether list-paused-processes

List the processes that are paused and can be debugged. It is possible to attach to paused processes by using Visual Studio with the Aether VS Plugin

aether continue-all

Continue any paused processes that don't have a debugger attached

aether clean

Cleans up project related files

Parameters

Parameter
Description
--logs
(Default: false) Removes any generated logs from the virtual machine
--projects
(Default: false) Removes all projects
--cluster
(Default: local) The cluster key or name to use for running the simulation.
If you provide neither --logs nor --projects to aether clean, then this command will do nothing.

aether metric

Retrieves metrics from a running Aether Engine simulation

Parameters

Parameter
Description
--list
(Group: commands) (Default: false) Lists all available metrics, as HTTP endpoints
--get
(Group: commands) Retrieves the metrics for a specified HTTP path. The metric must be in the form as shown in the list of the output of the metrics --list command
--serve
(Group: commands) (Default: false) Proxies the HadeanOS Metrics Gateway to localhost
-p, --port
(Default: 12336) Port to bind the local HTTP server to
--ip
(Default: 0.0.0.0) IP to bind the local HTTP server to
--prometheus-template
(Group: commands) (Default: false) Populates a Prometheus server configuration file template on the local filesystem. The resulting filename is a file called 'prometheus.yml'
--serve-port
(Default: 12336) Port for accessing the metrics service started using aether metric --serve --port PORT
--serve-host
(Default: 127.0.0.1) IP for accessing the machine running aether metric --serve
--file-path
(Default: prometheus.yml) The path of the file to write the prometheus server template to
--cluster
(Default: local) The cluster key or name to use for running the simulation.

aether help

Display more information on a specific command.

aether --version

Display version information for the currently installed Aether.

aether cluster

Parameter
Description
--list
Display list of clusters available for the currently logged-in user
--cluster
The cluster key, name, or partial name to find
--state
The state of the cluster to find Configuring
ConfiguringFailed
Provisioning
ProvisioningFailed
Ready
--company
The company requested clusters belong to. This will only be valid for users registered to multiple companies
--quiet
Do not print any output