Command Reference
This is a reference for all commands in the Ramble command line interface. The same information is available through ramble help.
Category |
Commands |
|---|---|
Application dev |
|
Query applications |
|
Cleanup |
|
Configuration |
|
Data |
|
Developer |
|
More help |
|
Results |
|
Workspaces |
ramble
A flexible benchmark experiment manager.
ramble [-hHdNASPklLmpvV] [--color {always,never,auto}] [-c CONFIG_VARS] [-C DIR] [--disable-passthrough] [--timestamp]
[--pdb] [-w WRKSPC | -D DIR | -W] [--use-workspace-repo] [--resolve-variables-in-subprocesses]
[--overwrite-inventories] [--mock-applications] [--mock-modifiers] [--mock-package-managers]
[--mock-workflow-managers] [--mock-systems] [--mock-platforms] [--mock-base-classes] [--mock-base-applications]
[--mock-base-modifiers] [--mock-base-package-managers] [--mock-base-workflow-managers] [--mock-base-systems]
[--mock-base-platforms] [--sorted-profile STAT] [--lines LINES] [--profile-restrictions PROFILE_RESTRICTIONS]
[--stacktrace]
COMMAND ...
Optional arguments
-h, --helpshow this help message and exit
-H, --all-helpshow help for all commands (same as ramble help –all)
--color {always,never,auto}when to colorize output (default: auto)
-c CONFIG_VARS, --config CONFIG_VARSadd one or more custom, one off config settings.
-C DIR, --config-scope DIRadd a custom configuration scope
-d, --debugwrite out debug messages (more d’s for more verbosity: -d, -dd, -ddd, etc.)
--disable-passthroughdisable passthrough of expansion variables for debugging
-N, --disable-loggerdisable the ramble logger. All output will be printed to stdout.
-A, --aggregate-warningsaggregate warnings from the ramble logger to the end of execution. May lose context information
-S, --suppress-warningssuppress warnings from the ramble logger.
-P, --disable-progress-bardisable the progress bars while setting up experiments.
--timestampAdd a timestamp to tty output
--pdbrun ramble under the pdb debugger
-w WRKSPC, --workspace WRKSPCrun with a specific workspace (see ramble workspace)
-D DIR, --workspace-dir DIRrun with a workspace directory (ignore named workspaces)
-W, --no-workspacerun without any workspaces activated (see ramble workspace)
--use-workspace-repowhen running in a workspace, use its application repository
--resolve-variables-in-subprocessesAllow resolution of environment variables when launching subprocesses
-k, --insecuredo not check ssl certificates when downloading
-l, --enable-locksuse filesystem locking (default)
-L, --disable-locksdo not use filesystem locking (unsafe)
-m, --mockuse the builtin.mock repository instead of builtin
--overwrite-inventoriesenables all workspace actions to overwrite experiment inventories
--mock-applicationsuse mock applications instead of real ones
--mock-modifiersuse mock modifiers instead of real ones
--mock-package-managersuse mock package managers instead of real ones
--mock-workflow-managersuse mock workflow managers instead of real ones
--mock-systemsuse mock systems instead of real ones
--mock-platformsuse mock platforms instead of real ones
--mock-base-classesuse mock base classes instead of real ones
--mock-base-applicationsuse mock base applications instead of real ones
--mock-base-modifiersuse mock base modifiers instead of real ones
--mock-base-package-managersuse mock base package managers instead of real ones
--mock-base-workflow-managersuse mock base workflow managers instead of real ones
--mock-base-systemsuse mock base systems instead of real ones
--mock-base-platformsuse mock base platforms instead of real ones
-p, --profileprofile execution using cProfile
--sorted-profile STATprofile and sort by one or more of: [calls, ncalls, cumtime, cumulative, filename, line, module]
--lines LINESlines of profile output or ‘all’ (default: 20)
--profile-restrictions PROFILE_RESTRICTIONSComma-separated restrictions applied to the cProfiler. When specified, it takes precedence over –lines. Example: –profile-restrictions ‘logger,5’ limits the list to functions with ‘logger’ in the path, and then shows the first 5 of them. See https://docs.python.org/3/library/profile.html#pstats.Stats.print_stats for more details.
-v, --verboseprint additional output during builds
--stacktraceadd stacktraces to all printed statements
-V, --versionshow version number and exit
Subcommands
ramble attributes
get information about object attributes
ramble attributes [-ha] [--defined | --undefined] [--by-attribute]
[--applications | --modifiers | --package_managers | --workflow_managers | --systems | --platforms | --base_classes | --base_applications | --base_modifiers | --base_package_managers | --base_workflow_managers | --base_systems | --base_platforms]
[--maintainers | --tags]
...
Positional arguments
- object_or_attr
names of objects or attributes to get info for
Optional arguments
-h, --helpshow this help message and exit
--definedshow names of objects with attributes
--undefinedshow names of objects without attributes
-a, --allshow attributes for all objects
--by-attributeshow objects for attributes instead of attributes for objects
--applicationsshow attributes for applications (default)
--modifiersshow attributes for modifiers
--package_managersshow attributes for package_managers
--workflow_managersshow attributes for workflow_managers
--systemsshow attributes for systems
--platformsshow attributes for platforms
--base_classesshow attributes for base_classes
--base_applicationsshow attributes for base_applications
--base_modifiersshow attributes for base_modifiers
--base_package_managersshow attributes for base_package_managers
--base_workflow_managersshow attributes for base_workflow_managers
--base_systemsshow attributes for base_systems
--base_platformsshow attributes for base_platforms
--maintainersuse maintainers as the attribute. (default)
--tagsuse tags as the attribute.
ramble clean
remove temporary files and/or downloaded archives
ramble clean [-hdmpra]
Optional arguments
-h, --helpshow this help message and exit
-d, --downloadsremove cached downloads (default)
-m, --misc-cacheremove long-lived caches
-p, --python-cacheremove .pyc, .pyo files and __pycache__ folders
-r, --reportsremove pdf and image files generated by ramble reports
-a, --allequivalent to -dmp
ramble commands
list available ramble commands
ramble commands [-ha] [--update-completion] [--format {subcommands,rst,names,bash}] [--header FILE] [--update FILE]
...
Positional arguments
- rst_files
list of rst files to search for _cmd-ramble-<cmd> cross-refs
Optional arguments
-h, --helpshow this help message and exit
--update-completionregenerate ramble’s tab completion scripts
-a, --aliasesinclude command aliases
--format {subcommands,rst,names,bash}format to be used to print the output (default: names)
--header FILEprepend contents of FILE to the output (useful for rst format)
--update FILEwrite output to the specified file, if any command is newer
ramble config
get and set configuration options
ramble config [-h] [--scope {defaults,system,site,user}] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
--scope {defaults,system,site,user}configuration scope to read/modify
Subcommands
ramble config get
ramble config get [-h] [section]
Positional arguments
- section
configuration section to print. options: formatted_executables, config, env_vars, internals, licenses, mirrors, modifiers, software, success_criteria, tables, applications, variables, variants, zips, repos, modifier_repos, package_manager_repos, system_repos, platform_repos, workflow_manager_repos, base_application_repos, base_class_repos, base_modifier_repos, base_package_manager_repos, base_workflow_manager_repos, base_system_repos, base_platform_repos
Optional arguments
-h, --helpshow this help message and exit
ramble config blame
ramble config blame [-h] section
Positional arguments
- section
configuration section to print. options: formatted_executables, config, env_vars, internals, licenses, mirrors, modifiers, software, success_criteria, tables, applications, variables, variants, zips, repos, modifier_repos, package_manager_repos, system_repos, platform_repos, workflow_manager_repos, base_application_repos, base_class_repos, base_modifier_repos, base_package_manager_repos, base_workflow_manager_repos, base_system_repos, base_platform_repos
Optional arguments
-h, --helpshow this help message and exit
ramble config edit
ramble config edit [-h] [--print-file] [section]
Positional arguments
- section
configuration section to edit. options: formatted_executables, config, env_vars, internals, licenses, mirrors, modifiers, software, success_criteria, tables, applications, variables, variants, zips, repos, modifier_repos, package_manager_repos, system_repos, platform_repos, workflow_manager_repos, base_application_repos, base_class_repos, base_modifier_repos, base_package_manager_repos, base_workflow_manager_repos, base_system_repos, base_platform_repos
Optional arguments
-h, --helpshow this help message and exit
--print-fileprint the file name that would be edited
ramble config list
ramble config list [-h]
Optional arguments
-h, --helpshow this help message and exit
ramble config add
ramble config add [-h] [-f FILE] [path]
Positional arguments
- path
colon-separated path to config that should be added, e.g. ‘config:default:true’
Optional arguments
-h, --helpshow this help message and exit
-f FILE, --file FILEfile from which to set all config values
ramble config remove
ramble config remove [-h] path
Positional arguments
- path
colon-separated path to config that should be removed, e.g. ‘config:default:true’
Optional arguments
-h, --helpshow this help message and exit
ramble config update
ramble config update [-hy] section
Positional arguments
- section
section to update
Optional arguments
-h, --helpshow this help message and exit
-y, --yes-to-allassume “yes” is the answer to every confirmation request
ramble config revert
ramble config revert [-hy] section
Positional arguments
- section
section to update
Optional arguments
-h, --helpshow this help message and exit
-y, --yes-to-allassume “yes” is the answer to every confirmation request
ramble data
manage data and databases
ramble data [-h] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
Subcommands
ramble data create-db
create the database
ramble data create-db [-h]
Optional arguments
-h, --helpshow this help message and exit
ramble debug
debugging commands for troubleshooting Ramble
ramble debug [-h] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
Subcommands
ramble debug report
ramble debug report [-h]
Optional arguments
-h, --helpshow this help message and exit
ramble deployment
manage workspace deployments
ramble deployment [-h] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
Subcommands
ramble deployment push
Push a workspace deployment
ramble deployment push [-h] [--tar-archive] [--deployment-name DEPLOYMENT_NAME] [--upload-url UPLOAD_URL]
[--phases PHASES [PHASES ...]] [--include-phase-dependencies] [--where WHERE [WHERE ...]]
[--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--filter-tags FILTER_TAGS [FILTER_TAGS ...]]
Optional arguments
-h, --helpshow this help message and exit
--tar-archive, -tcreate a tar.gz of the deployment directory.
--deployment-name DEPLOYMENT_NAME, -d DEPLOYMENT_NAMEName for deployment. Uses workspace name if not set.
--upload-url UPLOAD_URL, -u UPLOAD_URLURL to upload deployment into. Upload tar if -t is specified..
--phases PHASES [PHASES ...]select phases to execute when performing setup. Phase names support globbing
--include-phase-dependenciesif set, phase dependencies are automatically added to the list of executed phases
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--filter-tags FILTER_TAGS [FILTER_TAGS ...]filter experiments to only those that include the provided tags
ramble deployment pull
Pull a workspace deployment into current workspace
ramble deployment pull [-h] --deployment-path DEPLOYMENT_PATH
Optional arguments
-h, --helpshow this help message and exit
--deployment-path DEPLOYMENT_PATH, -p DEPLOYMENT_PATH, -u DEPLOYMENT_PATHPath to deployment that should be pulled
ramble docs
open Ramble documentation in a web browser
ramble docs [-h]
Optional arguments
-h, --helpshow this help message and exit
ramble edit
open application files in $EDITOR
ramble edit [-h] [--type TYPE] [-c | -d | -t | -m | -r REPO | -N NAMESPACE] [object_name]
Positional arguments
- object_name
object name
Optional arguments
-h, --helpshow this help message and exit
--type TYPEType of object to edit. Defaults to ‘applications’. Allowed types are applications, modifiers, package_managers, workflow_managers, systems, platforms, base_classes, base_applications, base_modifiers, base_package_managers, base_workflow_managers, base_systems, base_platforms
-c, --commandedit the command with the supplied name
-d, --docsedit the docs with the supplied name
-t, --testedit the test with the supplied name
-m, --moduleedit the main ramble module with the supplied name
-r REPO, --repo REPOpath to repo to edit object in
-N NAMESPACE, --namespace NAMESPACEnamespace of object to edit
ramble help
get help on ramble and its commands
ramble help [-ha] [--spec help_command]
Positional arguments
- help_command
command to get help on
Optional arguments
-h, --helpshow this help message and exit
-a, --alllist all available commands and options
--spechelp on the package specification syntax
ramble info
get detailed information on a particular object
ramble info [-h] [--type TYPE] [--format FORMAT] [--pattern PATTERN] [--overview | --verbose]
[--all | --attributes ATTRIBUTES]
object
Positional arguments
- object
Name of object to print info for
Optional arguments
-h, --helpshow this help message and exit
--type TYPEtype of objects. Defaults to ‘applications’. Allowed types are applications, modifiers, package_managers, workflow_managers, systems, platforms, base_classes, base_applications, base_modifiers, base_package_managers, base_workflow_managers, base_systems, base_platforms
--format FORMATlist of output format to write. Available options are [‘text’, ‘lists’]
--pattern PATTERN, -p PATTERNfilter the attributes using this pattern
--overview, -oprint overview of what attributes an object has
--verbose, -vprint full information about attributes
--allprint all object attributes
--attributes ATTRIBUTES, --attrs ATTRIBUTEScomma separated list of attributes to inspect for object
ramble license
list and check license headers on files in ramble
ramble license [-h] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
Subcommands
ramble license list-files
list files in ramble that should have license headers
ramble license list-files [-h]
Optional arguments
-h, --helpshow this help message and exit
ramble license verify
verify that files in ramble have the right license header
ramble license verify [-h] [--root ROOT] [--modified]
Optional arguments
-h, --helpshow this help message and exit
--root ROOTscan a different prefix for license issues
--modified, -mverify only the modified files as outputted by git ls-files –modified
ramble license update-copyright-year
update copyright header for the current year (utc-based) in all licensed files
ramble license update-copyright-year [-h]
Optional arguments
-h, --helpshow this help message and exit
ramble list
list and search available objects
ramble list [-hd] [--format {name_only,version_json,html}] [--update FILE] [-t TAGS] [--type TYPE] ...
Positional arguments
- filter
optional case-insensitive glob patterns to filter results
Optional arguments
-h, --helpshow this help message and exit
-d, --search-descriptionfiltering will also search the description for a match
--format {name_only,version_json,html}format to be used to print the output [default: name_only]
--update FILEwrite output to the specified file, if any object is newer
-t TAGS, --tags TAGSfilter a package query by tags
--type TYPEtype of objects. Defaults to ‘applications’. Allowed types are applications, modifiers, package_managers, workflow_managers, systems, platforms, base_classes, base_applications, base_modifiers, base_package_managers, base_workflow_managers, base_systems, base_platforms
ramble mirror
manage mirrors (inputs)
ramble mirror [-hn] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
-n, --no-checksumdo not use checksums to verify downloaded files (unsafe)
Subcommands
ramble mirror destroy
Given a url, recursively delete everything under it.
ramble mirror destroy [-h] (-m mirror_name | -u mirror_url)
Optional arguments
-h, --helpshow this help message and exit
-m mirror_name, --mirror-name mirror_namefind mirror to destroy by name
-u mirror_url, --mirror-url mirror_urlfind mirror to destroy by url
ramble mirror add
Add a mirror to Ramble.
ramble mirror add [-h] [--scope {defaults,system,site,user}] mirror url
Positional arguments
- mirror
mnemonic name for mirror
- url
url of mirror directory from ‘ramble mirror create’
Optional arguments
-h, --helpshow this help message and exit
--scope {defaults,system,site,user}configuration scope to modify
ramble mirror remove
Remove a mirror by name.
ramble mirror remove [-h] [--scope {defaults,system,site,user}] mirror
Positional arguments
- mirror
mnemonic name for mirror
Optional arguments
-h, --helpshow this help message and exit
--scope {defaults,system,site,user}configuration scope to modify
ramble mirror set-url
Change the URL of a mirror.
ramble mirror set-url [-h] [--push] [--scope {defaults,system,site,user}] mirror url
Positional arguments
- mirror
mnemonic name for mirror
- url
url of mirror directory from ‘ramble mirror create’
Optional arguments
-h, --helpshow this help message and exit
--pushset only the URL used for uploading new resources
--scope {defaults,system,site,user}configuration scope to modify
ramble mirror list
Print out available mirrors to the console.
ramble mirror list [-h] [--scope {defaults,system,site,user}]
Optional arguments
-h, --helpshow this help message and exit
--scope {defaults,system,site,user}configuration scope to read from
ramble on
“And now’s the time, the time is now” (execute workspace experiments)
ramble on [-h] [--executor executor] [--enable-per-experiment-prints] [--suppress-run-header]
[--where WHERE [WHERE ...]] [--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--filter-tags FILTER_TAGS [FILTER_TAGS ...]]
Optional arguments
-h, --helpshow this help message and exit
--executor executorexecution template for each experiment
--enable-per-experiment-printsEnable per experiment prints (phases and log paths).
--suppress-run-headerDisable the logger header.
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--filter-tags FILTER_TAGS [FILTER_TAGS ...]filter experiments to only those that include the provided tags
ramble python
launch an interpreter as ramble would launch a command
ramble python [-hVu] [-c PYTHON_COMMAND] [-i {python,ipython}] [-m MODULE] [--path] ...
Positional arguments
- python_args
file to run plus arguments
Optional arguments
-h, --helpshow this help message and exit
-V, --versionprint the Python version number and exit
-c PYTHON_COMMANDcommand to execute
-ufor compatibility with xdist, do not use without adding -u to the interpreter
-i {python,ipython}python interpreter
-m MODULErun library module as a script
--pathshow path to python interpreter that ramble uses
ramble repo
manage Ramble repositories
ramble repo [-h] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
Subcommands
ramble repo create
Create a new repository.
ramble repo create [-h] [-d SUBDIRECTORY] [-t TYPE] directory [new_namespace]
Positional arguments
- directory
directory to create the repo in
- new_namespace
namespace to identify objects in the repository. defaults to the directory name
Optional arguments
-h, --helpshow this help message and exit
-d SUBDIRECTORY, --subdirectory SUBDIRECTORYsubdirectory to store objects in the repository. Default is determined by the type of repository. Use an empty string for no subdirectory.
-t TYPE, --type TYPEtype of repositories to manage. Defaults to ‘applications’. Allowed types are applications, modifiers, package_managers, workflow_managers, systems, platforms, base_classes, base_applications, base_modifiers, base_package_managers, base_workflow_managers, base_systems, base_platforms, or any
ramble repo list
Show registered repositories and their namespaces.
ramble repo list [-h] [--scope {defaults,system,site,user}] [-t TYPE]
Optional arguments
-h, --helpshow this help message and exit
--scope {defaults,system,site,user}configuration scope to read from
-t TYPE, --type TYPEtype of repositories to manage. Defaults to ‘applications’. Allowed types are applications, modifiers, package_managers, workflow_managers, systems, platforms, base_classes, base_applications, base_modifiers, base_package_managers, base_workflow_managers, base_systems, base_platforms, or any
ramble repo add
Add a repository to Ramble’s configuration.
ramble repo add [-h] [--scope {defaults,system,site,user}] [-t TYPE] path
Positional arguments
- path
path to a Ramble repository directory
Optional arguments
-h, --helpshow this help message and exit
--scope {defaults,system,site,user}configuration scope to modify
-t TYPE, --type TYPEtype of repositories to manage. Defaults to ‘applications’. Allowed types are applications, modifiers, package_managers, workflow_managers, systems, platforms, base_classes, base_applications, base_modifiers, base_package_managers, base_workflow_managers, base_systems, base_platforms, or any
ramble repo remove
Remove a repository from Ramble’s configuration.
ramble repo remove [-h] [--scope {defaults,system,site,user}] [-t TYPE] namespace_or_path
Positional arguments
- namespace_or_path
namespace or path of a Ramble repository
Optional arguments
-h, --helpshow this help message and exit
--scope {defaults,system,site,user}configuration scope to modify
-t TYPE, --type TYPEtype of repositories to manage. Defaults to ‘applications’. Allowed types are applications, modifiers, package_managers, workflow_managers, systems, platforms, base_classes, base_applications, base_modifiers, base_package_managers, base_workflow_managers, base_systems, base_platforms, or any
ramble results
take actions on experiment results
ramble results [-h] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
Subcommands
ramble results upload
- Imports Ramble experiment results from JSON file and uploads them as
specified in the upload block of Ramble’s config file.
ramble results upload [-h] filename
Positional arguments
- filename
path of file to upload
Optional arguments
-h, --helpshow this help message and exit
ramble results index
List attributes in results including FOMs and template variables
ramble results index [-hv] [-f FILE]
Optional arguments
-h, --helpshow this help message and exit
-v, --all-varsprint all variable names
-f FILE, --file FILEpath of results file
ramble results report
Create a report with charts from Ramble experiment results.
ramble results report [-hn] [--workspace WRKSPC]
(--strong-scaling STRONG_SCALING [STRONG_SCALING ...] | --weak-scaling WEAK_SCALING [WEAK_SCALING ...] | --multi-line MULTI_LINE [MULTI_LINE ...] | --compare COMPARE [COMPARE ...] | --foms)
[--pandas-where WHERE] [--logx] [--logy] [--simplify-names] [--split-by SPLIT_BY] [-f FILE]
Optional arguments
-h, --helpshow this help message and exit
--workspace WRKSPCthe workspace to report on
--strong-scaling STRONG_SCALING [STRONG_SCALING ...]generate a scaling report, requires two args: [y-axis metric] [x-axis metric][optional: group by]
--weak-scaling WEAK_SCALING [WEAK_SCALING ...]generate a scaling report, requires two args: [y-axis metric] [x-axis metric][optional: group by]
--multi-line MULTI_LINE [MULTI_LINE ...]generate a scaling report, requires two args: [y-axis metric] [x-axis metric][optional: group by]
--compare COMPARE [COMPARE ...]generate a comparison report, requires at least two args: [FOM 1] [Additional FOMs][optional: group by(s)]
--fomsgenerate a FOM report, showing values of FOMs for each experiment
--pandas-where WHEREDown select data to plot (useful for complex workspaces with collisions). Takes pandas query format
-n, --normalizeNormalize charts where possible. For scaling charts, this requires fom_type to be specified as either ‘time’ or ‘throughput’ in the application definition.
--logxPlot X axis as log
--logyPlot Y axis as log
--simplify-namesSimplify experiment names on the x-axis by stripping common prefixes and suffixes
--split-by SPLIT_BYRamble Variable to split out into different plots
-f FILE, --file FILEpath of results file
ramble software-definitions
inspect software definitions in object definitions
ramble software-definitions [-hsce]
Optional arguments
-h, --helpshow this help message and exit
-s, --summaryprint summary of software definitions
-c, --conflictsprint summary of conflicting definitions
-e, --error-on-conflictif conflicts are found, exit code is number of conflicts
ramble style
runs source code style checks on Ramble.
ramble style [-haorUfk] [-b BASE] [-t TOOL | -s SKIP] [--repo-path REPO_PATH] [--tool-args TOOL_ARGS] ...
Positional arguments
- files
specific files to check
Optional arguments
-h, --helpshow this help message and exit
-b BASE, --base BASEselect base branch for collecting list of modified files
-a, --allcheck all files, not just changed files
-o, --outputsend filtered files to stdout as well as temp files
-r, --root-relativeprint root-relative paths (default: cwd-relative)
-U, --no-untrackedexclude untracked files from checks
-f, --fixformat automatically if possible with black
-k, --keep-tempdo not delete temporary directory where flake8 runs. use for debugging, to see filtered files
-t TOOL, --tool TOOLspecify which tools to run (default: isort,black,flake8,mypy,ruff)
-s SKIP, --skip SKIPspecify tools to skip (choose from isort,black,flake8,mypy,ruff)
--repo-path REPO_PATHapply style checks and fixes to the given repository
--tool-args TOOL_ARGSspecify extra arguments to pass to tools (e.g., –tool-args ruff:’–unsafe-fixes’)
ramble unit-test
run ramble’s unit tests (wrapper around pytest)
ramble unit-test [-hHs] [--lib | --obj | -r REPO_PATH] [--perf] [--fast | --slow] [-l | -L | -N] [-k EXPRESSION]
[--showlocals]
...
Positional arguments
- pytest_args
arguments for pytest
Optional arguments
-h, --helpshow this help message and exit
-H, --pytest-helpshow full pytest help, with advanced options
--librun only tests under the lib directory
--objrun only tests under the builtin object repo directory
-r REPO_PATH, --repo-path REPO_PATHrun tests under the given object repo root (used for testing external object repo)
--perfrun only performance tests
--fastrun only fast tests (skip slow tests)
--slowrun only slow tests (skip fast tests)
-l, --listlist test filenames
-L, --list-longlist all test functions
-N, --list-nameslist full names of all tests
-sprint output while tests run (disable capture)
-k EXPRESSIONfilter tests by keyword (can also use w/list options)
--showlocalsshow local variable values in tracebacks
ramble workspace
manage experiment workspaces
ramble workspace [-h] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
Subcommands
ramble workspace activate
Set the current workspace
ramble workspace activate [-hp] [--sh | --csh | --fish | --bat] [--temp] [-d DIR] [--parent-dir dir] [--dry-run]
[workspace]
Positional arguments
- workspace
name of workspace to activate
Optional arguments
-h, --helpshow this help message and exit
--shprint sh commands to activate the workspace
--cshprint csh commands to activate the workspace
--fishprint fish commands to activate the workspace
--batprint bat commands to activate the environment
-p, --promptdecorate the command line prompt when activating
--tempcreate and activate a workspace in a temporary directory
-d DIR, --dir DIRactivate the workspace in this directory
--parent-dir dirparent directory for the named workspace to activate
--dry-runperform a dry run of the activate command
ramble workspace archive
archive current workspace state
ramble workspace archive [-h] [--tar-archive] [--prefix ARCHIVE_PREFIX] [--upload-url UPLOAD_URL] [--include-secrets]
[--archive-pattern ARCHIVE_PATTERNS [ARCHIVE_PATTERNS ...]] [--phases PHASES [PHASES ...]]
[--include-phase-dependencies] [--where WHERE [WHERE ...]]
[--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]]
[--profile-phase-output PROFILE_PHASE_OUTPUT] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--tar-archive, -tcreate a tar.gz of the archive directory for backing up.
--prefix ARCHIVE_PREFIX, -p ARCHIVE_PREFIXSpecify archive prefix to customize output filename.
--upload-url UPLOAD_URL, -u UPLOAD_URLURL to upload tar archive into. Does nothing if -t is not specified.
--include-secretsIf set, secrets are included in the archive. Default is false
--archive-pattern ARCHIVE_PATTERNS [ARCHIVE_PATTERNS ...]patterns to specify additionally files that will be included in the archive. Paths are relative to workspace root.
--phases PHASES [PHASES ...]select phases to execute when performing setup. Phase names support globbing
--include-phase-dependenciesif set, phase dependencies are automatically added to the list of executed phases
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]phases to be profiled by line_profiler
--profile-phase-output PROFILE_PHASE_OUTPUTfile path to save the phase line_profiler output
--dry-runperform a dry run of the archive command
ramble workspace deactivate
deactivate any active workspace in the shell
ramble workspace deactivate [-h] [--sh | --csh | --fish | --bat] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--shprint sh commands to deactivate the workspace
--cshprint csh commands to deactivate the workspace
--fishprint fish commands to activate the workspace
--batprint bat commands to activate the environment
--dry-runperform a dry run of the deactivate command
ramble workspace create
create a new workspace
ramble workspace create [-hda] [-c CONFIG] [-t TEMPLATE_EXECUTE] [--software-dir dir] [--inputs-dir dir]
[--parent-dir dir] [--dry-run]
wrkspc
Positional arguments
- wrkspc
name of workspace to create
Optional arguments
-h, --helpshow this help message and exit
-c CONFIG, --config CONFIGconfiguration file to create workspace with
-t TEMPLATE_EXECUTE, --template_execute TEMPLATE_EXECUTEexecution template file to use when creating workspace
-d, --dircreate a workspace in a specific directory
--software-dir direxternal directory to link as software directory in workspace
--inputs-dir direxternal directory to link as inputs directory in workspace
--parent-dir dirparent directory for the new named workspace (must be in workspace_dirs)
-a, --activateactivate the created workspace, if specified. Default is false
--dry-runperform a dry run of the create command
ramble workspace concretize
Concretize a workspace
ramble workspace concretize [-hf] [--simplify] [--quiet] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
-f, --force-concretizeOverwrite software environment configuration with defaults defined in application definition
--simplifyRemove unused software and experiment templates from workspace config
--quiet, -qSilently ignore conflicting package definitions
--dry-runperform a dry run of the concretize command
ramble workspace config
Squashed workspace config
ramble workspace config [-h] (--print-squash | --simplify-software | --simplify-variables)
[--include-section INCLUDED_SECTION [INCLUDED_SECTION ...]]
[--exclude-section EXCLUDED_SECTION [EXCLUDED_SECTION ...]] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--print-squash, -pPrint a squashed workspace configuration
--simplify-software, --ssSimplify the software configuration section of this workspace
--simplify-variables, --svSimplify the variables configuration section of this workspace
--include-section INCLUDED_SECTION [INCLUDED_SECTION ...], -i INCLUDED_SECTION [INCLUDED_SECTION ...]list of patterns to include configuration section, when printing the squashed config
--exclude-section EXCLUDED_SECTION [EXCLUDED_SECTION ...], -e EXCLUDED_SECTION [EXCLUDED_SECTION ...]list of patterns to exclude configuration section, when printing the squashed config. Overrides included section.
--dry-runperform a dry run of the config command
ramble workspace setup
Setup a workspace
ramble workspace setup [-h] [--dry-run] [--phases PHASES [PHASES ...]] [--include-phase-dependencies]
[--where WHERE [WHERE ...]] [--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--filter-tags FILTER_TAGS [FILTER_TAGS ...]]
[--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]]
[--profile-phase-output PROFILE_PHASE_OUTPUT]
Optional arguments
-h, --helpshow this help message and exit
--dry-runperform a dry run. Sets up directories and generates all scripts. Prints commands that would be executed for installation, and files that would be downloaded.
--phases PHASES [PHASES ...]select phases to execute when performing setup. Phase names support globbing
--include-phase-dependenciesif set, phase dependencies are automatically added to the list of executed phases
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--filter-tags FILTER_TAGS [FILTER_TAGS ...]filter experiments to only those that include the provided tags
--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]phases to be profiled by line_profiler
--profile-phase-output PROFILE_PHASE_OUTPUTfile path to save the phase line_profiler output
ramble workspace analyze
Analyze a workspace
ramble workspace analyze [-hups] [-f OUTPUT_FORMATS [OUTPUT_FORMATS ...]]
[--fom-origin-types FOM_ORIGIN_TYPES [FOM_ORIGIN_TYPES ...]] [--phases PHASES [PHASES ...]]
[--include-phase-dependencies] [--where WHERE [WHERE ...]]
[--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--filter-tags FILTER_TAGS [FILTER_TAGS ...]]
[--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]]
[--profile-phase-output PROFILE_PHASE_OUTPUT] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
-f OUTPUT_FORMATS [OUTPUT_FORMATS ...], --formats OUTPUT_FORMATS [OUTPUT_FORMATS ...]list of output formats to write.Supported formats are json, yaml, or text
-u, --uploadPush experiment data to remote store (as defined in config)
-p, --print-resultsprint out the analysis result
--fom-origin-types FOM_ORIGIN_TYPES [FOM_ORIGIN_TYPES ...]FOM origin types to include in analysis output. Accepts space-delimited lists and can be specified multiple times.
-s, --summary-onlyprint out only the summary stats for repeated experiments
--phases PHASES [PHASES ...]select phases to execute when performing setup. Phase names support globbing
--include-phase-dependenciesif set, phase dependencies are automatically added to the list of executed phases
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--filter-tags FILTER_TAGS [FILTER_TAGS ...]filter experiments to only those that include the provided tags
--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]phases to be profiled by line_profiler
--profile-phase-output PROFILE_PHASE_OUTPUTfile path to save the phase line_profiler output
--dry-runperform a dry run of the analyze command
ramble workspace push-to-cache
push workspace envs to a given buildcache
ramble workspace push-to-cache [-h] [--dry-run] -d CACHE_PATH [--where WHERE [WHERE ...]]
[--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--filter-tags FILTER_TAGS [FILTER_TAGS ...]]
[--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]]
[--profile-phase-output PROFILE_PHASE_OUTPUT]
Optional arguments
-h, --helpshow this help message and exit
--dry-runperform a dry run. Acts like it will push to a cache, but will not actually create a cache.
-d CACHE_PATHPath to cache.
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--filter-tags FILTER_TAGS [FILTER_TAGS ...]filter experiments to only those that include the provided tags
--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]phases to be profiled by line_profiler
--profile-phase-output PROFILE_PHASE_OUTPUTfile path to save the phase line_profiler output
ramble workspace info
Information about a workspace
ramble workspace info [-hv] [--software | --all-software] [--templates] [--expansions] [--tags] [--phases]
[--variants] [--executables] [--where WHERE [WHERE ...]]
[--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--filter-tags FILTER_TAGS [FILTER_TAGS ...]] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--softwareIf set, used software stack information will be printed
--all-softwareIf set, all software stack information will be printed
--templatesIf set, workspace templates will be printed
--expansionsIf set, variable expansions will be printed
--tagsIf set, experiment tags will be printed
--phasesIf set, phase information will be printed
--variantsIf set, experiment variants will be printed
--executablesIf set, experiment executables will be printed
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--filter-tags FILTER_TAGS [FILTER_TAGS ...]filter experiments to only those that include the provided tags
-v, --verboselevel of verbosity. Add flags to increase description of workspace level 1 enables software, tags, templates, and variants level 2 enables executables, expansions, and phases
--dry-runperform a dry run of the info command
ramble workspace edit
edit workspace config or template
ramble workspace edit [-hctlp] [-f FILENAME] [--all] [--dry-run] ...
Positional arguments
- editor_args
Arguments to pass into editor, following the list of files
Optional arguments
-h, --helpshow this help message and exit
-f FILENAME, --file FILENAMEOpen a single file by filename
-c, --config-onlyOnly open config files
-t, --template-onlyOnly open template files
-l, --license-onlyOnly open license config files
--allOpen all yaml and template files in workspace config directory
-p, --print-fileprint the file name that would be edited
--dry-runperform a dry run of the edit command
ramble workspace mirror
mirror current workspace state
ramble workspace mirror [-h] -d MIRROR_PATH [--dry-run] [--phases PHASES [PHASES ...]] [--include-phase-dependencies]
[--where WHERE [WHERE ...]] [--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]]
[--profile-phase-output PROFILE_PHASE_OUTPUT]
Optional arguments
-h, --helpshow this help message and exit
-d MIRROR_PATHPath to create mirror in.
--dry-runperform a dry run. Creates package environments, prints package manager specific commands that would be executed for creating the mirror.
--phases PHASES [PHASES ...]select phases to execute when performing setup. Phase names support globbing
--include-phase-dependenciesif set, phase dependencies are automatically added to the list of executed phases
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--profile-phase PROFILE_PHASES [PROFILE_PHASES ...]phases to be profiled by line_profiler
--profile-phase-output PROFILE_PHASE_OUTPUTfile path to save the phase line_profiler output
ramble workspace experiment-logs
print log information for workspace
ramble workspace experiment-logs [-h] [--limit-one | --first-failed | --failed] [--where WHERE [WHERE ...]]
[--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]]
[--filter-tags FILTER_TAGS [FILTER_TAGS ...]] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--limit-oneonly print the first log information block
--first-failedonly print the information for the first failed experiment. Requires ramble workspace analyze to have been run previously
--failedprint only failed experiment logs
--where WHERE [WHERE ...]inclusive filter on experiments where the provided logical statement is True
--exclude-where EXCLUDE_WHERE [EXCLUDE_WHERE ...]exclusive filter experiments where the provided logical statement is True
--filter-tags FILTER_TAGS [FILTER_TAGS ...]filter experiments to only those that include the provided tags
--dry-runperform a dry run of the experiment-logs command
ramble workspace list
list available workspaces
ramble workspace list [-h] [--parent-dir dir] [--merged] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--parent-dir dirfilter workspaces by parent directory
--mergedlist a merged set of workspaces across all parent directories
--dry-runperform a dry run of the list command
ramble workspace remove
remove an existing workspace
ramble workspace remove [-hy] [--dry-run] workspace [workspace ...]
Positional arguments
- workspace
workspace(s) to remove
Optional arguments
-h, --helpshow this help message and exit
-y, --yes-to-allassume “yes” is the answer to every confirmation request
--dry-runperform a dry run of the remove command
ramble workspace generate-config
generate current workspace config
ramble workspace generate-config [-h] [--workload-filter WORKLOAD_FILTERS] [--variable-filter VARIABLE_FILTERS]
[--variable-definition VARIABLE_DEFINITIONS]
[--variant-definition VARIANT_DEFINITIONS] [--experiment-name EXPERIMENT_NAME]
[--package-manager PACKAGE_MANAGER] [--workflow-manager WORKFLOW_MANAGER] [--dry-run]
[--overwrite] [--include-default-variables | --workload-name-variable VAR]
[--zip ZIPS] [--matrix MATRIX] [--default-variable-value DEFAULT_VARIABLE_VALUE]
application
Positional arguments
- application
application name
Optional arguments
-h, --helpshow this help message and exit
--workload-filter WORKLOAD_FILTERS, --wf WORKLOAD_FILTERSglob filter to use when selecting workloads in the application. Workload is kept if it matches any filter.
--variable-filter VARIABLE_FILTERS, --vf VARIABLE_FILTERSglob filter to use when selecting variables in the workloads. Variable is kept if it matches any filter.
--variable-definition VARIABLE_DEFINITIONS, -v VARIABLE_DEFINITIONSvariable definition to set in the generated experiments. Given in the form key=value
--variant-definition VARIANT_DEFINITIONS, -V VARIANT_DEFINITIONSvariant definition to set in the generated experiments. Given in the form name=value
--experiment-name EXPERIMENT_NAME, -e EXPERIMENT_NAMEname of generated experiment
--package-manager PACKAGE_MANAGER, -p PACKAGE_MANAGER(DEPRECATED) name of (optional) package manager to use within the experiment scope
--workflow-manager WORKFLOW_MANAGER, --wm WORKFLOW_MANAGER(DEPRECATED) name of (optional) workflow manager to use within the experiment scope
--dry-run, --printperform a dry run. Print resulting config to screen and not to the workspace configuration file
--overwriteoverwrite existing definitions with newly generated definitions
--include-default-variables, -iwhether to include default variable values in the resulting config
--workload-name-variable VAR, -w VARvariable name to collapse workloads in
--zip ZIPS, -z ZIPSzip to define for the experiments, in the format zipname=[zipvar1,zipvar2]
--matrix MATRIX, -m MATRIXcomma delimited list of variable names to matrix in the experiments
--default-variable-value DEFAULT_VARIABLE_VALUEdefault value for any required, but undefined, variable. Default is ‘’ which is likely to cause validation errors
ramble workspace manage
manage workspace definitions
ramble workspace manage [-h] [--dry-run] SUBCOMMAND ...
Optional arguments
-h, --helpshow this help message and exit
--dry-runperform a dry run of the manage command
Subcommands
ramble workspace manage experiments
manage experiment definitions
ramble workspace manage experiments [-h] [--workload-filter WORKLOAD_FILTERS] [--variable-filter VARIABLE_FILTERS]
[--variable-definition VARIABLE_DEFINITIONS]
[--variant-definition VARIANT_DEFINITIONS] [--experiment-name EXPERIMENT_NAME]
[--package-manager PACKAGE_MANAGER] [--workflow-manager WORKFLOW_MANAGER]
[--dry-run] [--overwrite]
[--include-default-variables | --workload-name-variable VAR] [--zip ZIPS]
[--matrix MATRIX] [--default-variable-value DEFAULT_VARIABLE_VALUE]
application
Positional arguments
- application
application name
Optional arguments
-h, --helpshow this help message and exit
--workload-filter WORKLOAD_FILTERS, --wf WORKLOAD_FILTERSglob filter to use when selecting workloads in the application. Workload is kept if it matches any filter.
--variable-filter VARIABLE_FILTERS, --vf VARIABLE_FILTERSglob filter to use when selecting variables in the workloads. Variable is kept if it matches any filter.
--variable-definition VARIABLE_DEFINITIONS, -v VARIABLE_DEFINITIONSvariable definition to set in the generated experiments. Given in the form key=value
--variant-definition VARIANT_DEFINITIONS, -V VARIANT_DEFINITIONSvariant definition to set in the generated experiments. Given in the form name=value
--experiment-name EXPERIMENT_NAME, -e EXPERIMENT_NAMEname of generated experiment
--package-manager PACKAGE_MANAGER, -p PACKAGE_MANAGER(DEPRECATED) name of (optional) package manager to use within the experiment scope
--workflow-manager WORKFLOW_MANAGER, --wm WORKFLOW_MANAGER(DEPRECATED) name of (optional) workflow manager to use within the experiment scope
--dry-run, --printperform a dry run. Print resulting config to screen and not to the workspace configuration file
--overwriteoverwrite existing definitions with newly generated definitions
--include-default-variables, -iwhether to include default variable values in the resulting config
--workload-name-variable VAR, -w VARvariable name to collapse workloads in
--zip ZIPS, -z ZIPSzip to define for the experiments, in the format zipname=[zipvar1,zipvar2]
--matrix MATRIX, -m MATRIXcomma delimited list of variable names to matrix in the experiments
--default-variable-value DEFAULT_VARIABLE_VALUEdefault value for any required, but undefined, variable. Default is ‘’ which is likely to cause validation errors
ramble workspace manage software
manage workspace software definitions
ramble workspace manage software [-h] [--environment-name ENV]
[--environment-packages PKG1,PKG2,PKG2 | --external-env PATH] [--package-name NAME]
[--package-spec SPEC] [--compiler-package PKG] [--compiler-spec SPEC]
[--package-manager-prefix PREFIX] [--remove | --overwrite] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--environment-name ENV, --env ENVName of environment to define
--environment-packages PKG1,PKG2,PKG2Comma separated list of packages to add into environment
--external-env PATHPath to external environment description
--package-name NAME, --pkg NAMEName of package to define
--package-spec SPEC, --pkg-spec SPEC, --spec SPECValue for the pkg_spec attribute in the defined package
--compiler-package PKG, --compiler-pkg PKG, --compiler PKGValue for the compiler attribute in the defined package
--compiler-spec SPECValue for the compiler_spec attribute in the defined package
--package-manager-prefix PREFIX, --prefix PREFIXPrefix for defined package attributes. Resulting attributes will be {prefix}_pkg_spec.
--remove, --deleteWhether to remove named package and environment definitions if they exist.
--overwrite, -oWhether to overwrite existing definitions or not.
--dry-run, --printperform a dry run. Print resulting config to screen and not to the workspace configuration file
ramble workspace manage includes
manage workspace includes
ramble workspace manage includes [-h] [--list | --remove PATTERN | --remove-index IDX | --add PATH]
Optional arguments
-h, --helpshow this help message and exit
--list, -lwhether to print existing includes
--remove PATTERN, -r PATTERNwhether to remove an existing include by name / pattern
--remove-index IDXwhether to remove an existing include by index
--add PATH, -a PATHwhether to add a new include
ramble workspace manage modifiers
manage workspace modifiers
ramble workspace manage modifiers [-h] (--list | --add | --remove) [--mod-index INDEX] [--scope SCOPE] [--name NAME]
[--mode MODE] [--on-executable EXEC_LIST] [--dry-run]
Optional arguments
-h, --helpshow this help message and exit
--list, -lwhether to print existing modifiers
--addwhether to remove an existing modifier by index
--removewhether to remove an existing modifier by index
--mod-index INDEX, -i INDEXindex of modifier to remove, only used with –remove
--scope SCOPE, -s SCOPEscope of modifier to manage. Can be a glob when removing. Of the form <application_name>:<workload_name>:<experiment_name> or ‘workspace’ to manage workspace modifiers.
--name NAME, -n NAMEname of modifier to manage. Can be a glob when removing, and defaults to ‘*’. Should be the name of a modifier object.
--mode MODE, -m MODEmode of modifier to manage. Can be a glob when removing, and defaults to None, using the default for the modifier.
--on-executable EXEC_LIST, -e EXEC_LISTlist of ‘on_executable’ strings to apply for a new modifier. Ignored when removing. Should be of the form ‘[<pattern1>,<pattern2>,<pattern3>…]’
--dry-runwhether to print the config without editing it, or to edit it directly.