SimDB CLI commands¶
Usage: simdb [OPTIONS] COMMAND [ARGS]...
Options:
--version Show the version and exit.
-d, --debug Run in debug mode.
-v, --verbose Run with verbose output.
-c, --config-file FILENAME Config file to load.
--help Show this message and exit.
Commands:
alias Query remote and local aliases.
config Query/update application configuration.
database Manage local simulation database.
manifest Create/check manifest file.
provenance Create the PROVENANCE_FILE from the current system.
remote Interact with the remote SimDB service.
sim Alias for simulation.
simulation Manage ingested simulations.
Alias¶
Usage: simdb alias [OPTIONS] [REMOTE] COMMAND [ARGS]...
Query remote and local aliases.
Options:
--username TEXT Username used to authenticate with the remote.
--password TEXT Password used to authenticate with the remote.
--help Show this message and exit.
Commands:
list List aliases from the local database and the REMOTE (if...
make-unique Make the given alias unique, checking locally stored...
search Search the REMOTE for all aliases that contain the given...
Usage: simdb alias [REMOTE] list [OPTIONS]
List aliases from the local database and the REMOTE (if specified).
Options:
--local Only list the local aliases.
--help Show this message and exit.
Usage: simdb alias [REMOTE] make-unique [OPTIONS] ALIAS
Make the given alias unique, checking locally stored simulations and the
remote.
Options:
--help Show this message and exit.
Usage: simdb alias [REMOTE] search [OPTIONS] ALIAS
Search the REMOTE for all aliases that contain the given VALUE.
Options:
--help Show this message and exit.
Config¶
Usage: simdb config [OPTIONS] COMMAND [ARGS]...
Query/update application configuration.
Options:
--help Show this message and exit.
Commands:
delete Delete the OPTION.
get Get the OPTION.
list List all configurations OPTIONS set.
path Print the location of the user configuration file.
set Set the OPTION to the given VALUE.
Usage: simdb config delete [OPTIONS] OPTION
Delete the OPTION.
Options:
--help Show this message and exit.
Usage: simdb config get [OPTIONS] OPTION
Get the OPTION.
Options:
--help Show this message and exit.
Usage: simdb config list [OPTIONS]
List all configurations OPTIONS set.
Options:
--help Show this message and exit.
Usage: simdb config path [OPTIONS]
Print the location of the user configuration file.
Options:
--help Show this message and exit.
Usage: simdb config set [OPTIONS] OPTION VALUE
Set the OPTION to the given VALUE.
Options:
--help Show this message and exit.
Database¶
Usage: simdb database [OPTIONS] COMMAND [ARGS]...
Manage local simulation database.
Options:
--help Show this message and exit.
Commands:
clear Clear the database.
Usage: simdb database clear [OPTIONS]
Clear the database.
Options:
--help Show this message and exit.
Manifest¶
Usage: simdb manifest [OPTIONS] COMMAND [ARGS]...
Create/check manifest file.
Options:
--help Show this message and exit.
Commands:
check Check manifest FILE_NAME.
create Create a new MANIFEST_FILE.
Usage: simdb manifest check [OPTIONS] FILE_NAME
Check manifest FILE_NAME.
Options:
--help Show this message and exit.
Usage: simdb manifest create [OPTIONS] MANIFEST_FILE
Create a new MANIFEST_FILE.
Options:
--help Show this message and exit.
Provenance¶
Usage: simdb provenance [OPTIONS] PROVENANCE_FILE
Create the PROVENANCE_FILE from the current system.
Options:
--help Show this message and exit.
Remote¶
Usage: simdb remote [OPTIONS] [NAME] COMMAND [ARGS]...
Interact with the remote SimDB service.
If NAME is provided this determines which remote server to communicate with,
otherwise the server in the config file with default=True is used.
Options:
--username TEXT Username used to authenticate with the remote.
--password TEXT Password used to authenticate with the remote.
--help Show this message and exit.
Commands:
admin Run admin commands on REMOTE SimDB server (requires admin...
config Configure the available remotes.
directory Print the storage directory of the remote.
info Print information about simulation with given SIM_ID (UUID...
list List simulations available on remote.
query Perform a metadata query to find matching remote simulations.
schema Show validation schemas for the given remote.
test Test that the remote is valid.
token Manage user authentication tokens.
trace Print provenance trace of simulation with given SIM_ID (UUID...
version Show the SimDB version of the remote.
watcher Manage simulation watchers on REMOTE SimDB server.
Usage: simdb remote [NAME] admin [OPTIONS] COMMAND [ARGS]...
Run admin commands on REMOTE SimDB server (requires admin privileges).
Requires user to have admin privileges on remote.
Options:
--help Show this message and exit.
Commands:
del-meta Remove a metadata value for the given simulation.
delete Delete a simulation.
set-meta Add or update a metadata value for the given simulation.
set-status Update the status metadata value for the given simulation.
Usage: simdb remote [NAME] admin del-meta [OPTIONS] SIM_ID KEY
Remove a metadata value for the given simulation.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] admin delete [OPTIONS] SIM_ID
Delete a simulation.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] admin set-meta [OPTIONS] SIM_ID KEY VALUE
Add or update a metadata value for the given simulation.
Options:
-t, --type [string|UUID|int|float]
--help Show this message and exit.
Usage: simdb remote [NAME] admin set-status [OPTIONS] SIM_ID {NOT_VALIDATED|AC
CEPTED|FAILED|PASSED|DEPRECATED|DE
LETED}
Update the status metadata value for the given simulation.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] config [OPTIONS] COMMAND [ARGS]...
Configure the available remotes.
Options:
--help Show this message and exit.
Commands:
default Print the default remote.
delete Delete a remote.
get-default Get the name of the default remote.
list List available remotes.
new Add a new remote.
set-default Set a remote as default.
set-option Set a configuration option for a given remote.
Usage: simdb remote [NAME] config default [OPTIONS]
Print the default remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] config delete [OPTIONS] NAME
Delete a remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] config get-default [OPTIONS]
Get the name of the default remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] config list [OPTIONS]
List available remotes.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] config new [OPTIONS] NAME URL
Add a new remote.
Options:
--firewall [F5] Specify the remote is behind a login firewall and what type
it is.
--username TEXT Username to use for remote.
--default Set the new remote as the default.
--help Show this message and exit.
Usage: simdb remote [NAME] config set-default [OPTIONS] NAME
Set a remote as default.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] config set-option [OPTIONS] NAME OPTION VALUE
Set a configuration option for a given remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] directory [OPTIONS]
Print the storage directory of the remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] info [OPTIONS] SIM_ID
Print information about simulation with given SIM_ID (UUID or alias) from
remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] list [OPTIONS]
List simulations available on remote.
Options:
-m, --meta-data NAME Additional meta-data field to print.
-l, --limit INTEGER Limit number of returned entries (use 0 for no limit).
[default: 100]
--uuid Include UUID in the output.
--help Show this message and exit.
Usage: simdb remote [NAME] query [OPTIONS] [CONSTRAINTS]...
Perform a metadata query to find matching remote simulations.
Each constraint must be in the form:
NAME=[mod]VALUE
Where `[mod]` is an optional query modifier. Available query modifiers are:
eq: - This checks for equality (this is the same behaviour as not providing any modifier).
in: - This searches inside the value instead of looking for exact matches.
gt: - This checks for values greater than the given quantity.
agt: - This checks for any array elements are greater than the given quantity.
ge: - This checks for values greater than or equal to the given quantity.
age: - This checks for any array elements are greater than or equal to the given quantity.
lt: - This checks for values less than the given quantity.
alt: - This checks for any array elements are less than the given quantity.
le: - This checks for values less than or equal to the given quantity.
ale: - This checks for any array elements are less than or equal to the given quantity.
Modifier examples:
alias=eq:foo performs exact match
summary.code.name=in:foo matches all names containing foo
summary.heating_current_drive.power_additional.value=agt:0 matches all simulations where any array element
of summary.heating_current_drive.power_additional.value is greater than 0
Any string comparisons are done in a case-insensitive manner. If multiple constraints are provided then simulations
are returned that match all given constraints.
Examples:
sim remote query workflow.name=in:test finds all simulations where workflow.name contains test
(case-insensitive)
sim remote query pulse=gt:1000 run=0 finds all simulations where pulse is > 1000 and run = 0
Options:
-m, --meta-data TEXT Additional meta-data field to print.
-l, --limit INTEGER Limit number of returned entries (use 0 for no limit).
[default: 100]
--uuid Include UUID in the output.
--help Show this message and exit.
Usage: simdb remote [NAME] schema [OPTIONS]
Show validation schemas for the given remote.
Options:
-d, --depth INTEGER Limit the depth of elements of the schema printed to
the console. [default: 2]
--help Show this message and exit.
Usage: simdb remote [NAME] test [OPTIONS]
Test that the remote is valid.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] token [OPTIONS] COMMAND [ARGS]...
Manage user authentication tokens.
Options:
--help Show this message and exit.
Commands:
delete Delete the existing token for the given remote.
new Create a new token for the given remote.
Usage: simdb remote [NAME] token delete [OPTIONS]
Delete the existing token for the given remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] token new [OPTIONS]
Create a new token for the given remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] trace [OPTIONS] SIM_ID
Print provenance trace of simulation with given SIM_ID (UUID or alias) from
remote.
This shows a history of simulations that this simulation has replaced or
been replaced by and what those simulations replaced or where replaced by
and so on.
If the outputs of this simulation are used as inputs of other simulations or
if the inputs are generated by other simulations then these dependencies are
also reported.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] version [OPTIONS]
Show the SimDB version of the remote.
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] watcher [OPTIONS] COMMAND [ARGS]...
Manage simulation watchers on REMOTE SimDB server.
Options:
--help Show this message and exit.
Commands:
add Register a user as a watcher for a simulation with given SIM_ID...
list List watchers for simulation with given SIM_ID (UUID or alias).
remove Remove a user from list of watchers on a simulation with given...
Usage: simdb remote [NAME] watcher add [OPTIONS] SIM_ID
Register a user as a watcher for a simulation with given SIM_ID (UUID or
alias).
Options:
-u, --user TEXT Name of the user to add as a watcher.
-e, --email TEXT Email of the user to add as a watcher.
-n, --notification [VALIDATION|REVISION|OBSOLESCENCE|ALL]
[default: ALL]
--help Show this message and exit.
Usage: simdb remote [NAME] watcher list [OPTIONS] SIM_ID
List watchers for simulation with given SIM_ID (UUID or alias).
Options:
--help Show this message and exit.
Usage: simdb remote [NAME] watcher remove [OPTIONS] SIM_ID
Remove a user from list of watchers on a simulation with given SIM_ID (UUID
or alias).
Options:
-u, --user TEXT Name of the user to remove as a watcher.
--help Show this message and exit.
Simulation¶
Usage: simdb simulation [OPTIONS] COMMAND [ARGS]...
Manage ingested simulations.
Options:
--help Show this message and exit.
Commands:
delete Delete the ingested simulation with given SIM_ID (UUID or...
info Print information on the simulation with given SIM_ID (UUID...
ingest Ingest a MANIFEST_FILE.
list List ingested simulations.
modify Modify the ingested simulation.
pull Pull the simulation with the given SIM_ID (UUID or alias)...
push Push the simulation with the given SIM_ID (UUID or alias) to...
query Perform a metadata query to find matching local simulations.
validate Validate the ingested simulation with given SIM_ID (UUID or...
Usage: simdb simulation delete [OPTIONS] SIM_ID
Delete the ingested simulation with given SIM_ID (UUID or alias).
Options:
--help Show this message and exit.
Usage: simdb simulation info [OPTIONS] SIM_ID
Print information on the simulation with given SIM_ID (UUID or alias).
Options:
--help Show this message and exit.
Usage: simdb simulation ingest [OPTIONS] MANIFEST_FILE
Ingest a MANIFEST_FILE.
Options:
-a, --alias TEXT Alias to give to simulation (overwrites any set in
manifest).
--help Show this message and exit.
Usage: simdb simulation list [OPTIONS]
List ingested simulations.
Options:
-m, --meta-data TEXT Additional meta-data field to print.
-l, --limit INTEGER Limit number of returned entries (use 0 for no limit).
[default: 100]
--uuid Include UUID in the output.
--help Show this message and exit.
Usage: simdb simulation modify [OPTIONS] SIM_ID
Modify the ingested simulation.
Options:
-a, --alias ALIAS New alias.
--set-meta NAME=VALUE Add new meta or update existing.
--del-meta NAME Delete metadata entry.
--help Show this message and exit.
Usage: simdb simulation pull [OPTIONS] [REMOTE] SIM_ID DIRECTORY
Pull the simulation with the given SIM_ID (UUID or alias) from the REMOTE.
Options:
--username TEXT Username used to authenticate with the remote.
--password TEXT Password used to authenticate with the remote.
--help Show this message and exit.
Usage: simdb simulation push [OPTIONS] [REMOTE] SIM_ID
Push the simulation with the given SIM_ID (UUID or alias) to the REMOTE.
Options:
--username TEXT Username used to authenticate with the remote.
--password TEXT Password used to authenticate with the remote.
--replaces TEXT SIM_ID of simulation to deprecate and replace.
--add-watcher Add the current user as a watcher of the simulation.
--help Show this message and exit.
Usage: simdb simulation query [OPTIONS] [CONSTRAINTS]...
Perform a metadata query to find matching local simulations.
Each constraint must be in the form:
NAME=[mod]VALUE
Where `[mod]` is an optional query modifier. Available query modifiers are:
eq: - This checks for equality (this is the same behaviour as not providing any modifier).
ne: - This checks for value that do not equal.
in: - This searches inside the value instead of looking for exact matches.
ni: - This searches inside the value for elements that do not match.
gt: - This checks for values greater than the given quantity.
ge: - This checks for values greater than or equal to the given quantity.
lt: - This checks for values less than the given quantity.
le: - This checks for values less than or equal to the given quantity.
For the following modifiers, VALUE should not be provided. exist: - This
returns simulations where metadata with NAME exists, regardless of the
value.
Modifier examples:
responsible_name=foo performs exact match
responsible_name=in:foo matches all names containing foo
pulse=gt:1000 matches all pulses > 1000
sequence=exist: matches all simulations that have "sequence" metadata values
Any string comparisons are done in a case-insensitive manner. If multiple constraints are provided then simulations
are returned that match all given constraints.
Examples:
sim simulation query workflow.name=in:test finds all simulations where workflow.name contains test
(case-insensitive)
sim simulation query pulse=gt:1000 run=0 finds all simulations where pulse is > 1000 and run = 0
Options:
-m, --meta-data TEXT Additional meta-data field to print.
--uuid Include UUID in the output.
--help Show this message and exit.
Usage: simdb simulation validate [OPTIONS] [REMOTE] SIM_ID
Validate the ingested simulation with given SIM_ID (UUID or alias) using
validation schema from REMOTE.
Options:
--username TEXT Username used to authenticate with the remote.
--password TEXT Password used to authenticate with the remote.
--help Show this message and exit.