Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed regex escapes to quiet unittest warnings #358

Merged
merged 1 commit into from
Dec 18, 2023

Fixed regex escapes to quiet unittest warnings

d62f008
Select commit
Loading
Failed to load commit list.
Merged

Fixed regex escapes to quiet unittest warnings #358

Fixed regex escapes to quiet unittest warnings
d62f008
Select commit
Loading
Failed to load commit list.
Google Cloud Build / Develop-PR-Unit-Tests (ramble-eng) succeeded Dec 18, 2023 in 9m 37s

Summary

Build Information

Trigger Develop-PR-Unit-Tests
Build 290e40cd-3177-4093-b6e7-00bb8fbad3c6
Start 2023-12-18T10:15:23-08:00
Duration 8m39.349s
Status SUCCESS

Steps

Step Status Duration
ramble-clone SUCCESS 13.659s
ramble-unit-tests SUCCESS 8m21.595s

Details

starting build "290e40cd-3177-4093-b6e7-00bb8fbad3c6"

FETCHSOURCE
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint: 
hint: 	git config --global init.defaultBranch <name>
hint: 
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint: 
hint: 	git branch -m <name>
Initialized empty Git repository in /workspace/.git/
From https://github.com/GoogleCloudPlatform/ramble
 * branch            d62f008ede23fe3ca94fc5c29bcdd1bd368fe5a3 -> FETCH_HEAD
HEAD is now at d62f008 Fixed regex escapes to quiet unittest warnings
BUILD
Starting Step #0 - "ramble-clone"
Step #0 - "ramble-clone": Already have image (with digest): gcr.io/cloud-builders/git
Step #0 - "ramble-clone": From https://github.com/GoogleCloudPlatform/ramble
Step #0 - "ramble-clone":  * [new branch]        develop    -> origin/develop
Step #0 - "ramble-clone":  * [new branch]        gh-pages   -> origin/gh-pages
Step #0 - "ramble-clone":  * [new branch]        main       -> origin/main
Step #0 - "ramble-clone":  * [new tag]           v0.3.0     -> v0.3.0
Step #0 - "ramble-clone":  * [new tag]           v0.1.0     -> v0.1.0
Step #0 - "ramble-clone":  * [new tag]           v0.2.0     -> v0.2.0
Step #0 - "ramble-clone":  * [new tag]           v0.2.1     -> v0.2.1
Finished Step #0 - "ramble-clone"
Starting Step #1 - "ramble-unit-tests"
Step #1 - "ramble-unit-tests": Pulling image: us-central1-docker.pkg.dev/ramble-eng/ramble-repo/ramble-centos7:latest
Step #1 - "ramble-unit-tests": latest: Pulling from ramble-eng/ramble-repo/ramble-centos7
Step #1 - "ramble-unit-tests": 2d473b07cdd5: Pulling fs layer
Step #1 - "ramble-unit-tests": 3040672071d3: Pulling fs layer
Step #1 - "ramble-unit-tests": 2d473b07cdd5: Verifying Checksum
Step #1 - "ramble-unit-tests": 2d473b07cdd5: Download complete
Step #1 - "ramble-unit-tests": 2d473b07cdd5: Pull complete
Step #1 - "ramble-unit-tests": 3040672071d3: Verifying Checksum
Step #1 - "ramble-unit-tests": 3040672071d3: Download complete
Step #1 - "ramble-unit-tests": 3040672071d3: Pull complete
Step #1 - "ramble-unit-tests": Digest: sha256:0febbef9dec187a82f8053109964841d1850b0a126f1da6c16e01ec376270fc9
Step #1 - "ramble-unit-tests": Status: Downloaded newer image for us-central1-docker.pkg.dev/ramble-eng/ramble-repo/ramble-centos7:latest
Step #1 - "ramble-unit-tests": us-central1-docker.pkg.dev/ramble-eng/ramble-repo/ramble-centos7:latest
Step #1 - "ramble-unit-tests": Branch develop set up to track remote branch develop from origin.
Step #1 - "ramble-unit-tests": Dependencies found.
Step #1 - "ramble-unit-tests": usage: ramble [-hkV] [--color {always,never,auto}] COMMAND ...
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": A flexible benchmark experiment manager.
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": These are common ramble commands:
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": application dev:
Step #1 - "ramble-unit-tests":   edit                  open application files in $EDITOR
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": query applications:
Step #1 - "ramble-unit-tests":   list                  list and search available applications
Step #1 - "ramble-unit-tests":   info                  get detailed information on a particular application
Step #1 - "ramble-unit-tests":   mods                  list and get information on available modifiers
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": results:
Step #1 - "ramble-unit-tests":   results               import experiment results from file
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": workspaces:
Step #1 - "ramble-unit-tests":   on                    "And now's the time, the time is now" (execute workspace experiments)
Step #1 - "ramble-unit-tests":   workspace             manage experiment workspaces
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": optional arguments:
Step #1 - "ramble-unit-tests":   --color {always,never,auto}
Step #1 - "ramble-unit-tests":                         when to colorize output (default: auto)
Step #1 - "ramble-unit-tests":   -V, --version         show version number and exit
Step #1 - "ramble-unit-tests":   -h, --help            show this help message and exit
Step #1 - "ramble-unit-tests":   -k, --insecure        do not check ssl certificates when downloading
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": more help:
Step #1 - "ramble-unit-tests":   ramble help --all       list all commands and options
Step #1 - "ramble-unit-tests":   ramble help <command>   help on a specific command
Step #1 - "ramble-unit-tests":   ramble help --spec      help on the application specification syntax
Step #1 - "ramble-unit-tests":   ramble docs             open https://ramble.rtfd.io/ in a browser
Step #1 - "ramble-unit-tests": usage: ramble [-hHdNPklLmpvV] [--color {always,never,auto}] [-c CONFIG_VARS]
Step #1 - "ramble-unit-tests":               [-C DIR] [--disable-passthrough] [--timestamp] [--pdb]
Step #1 - "ramble-unit-tests":               [-w WRKSPC | -D DIR | -W] [--use-workspace-repo]
Step #1 - "ramble-unit-tests":               [--sorted-profile STAT] [--lines LINES] [--stacktrace]
Step #1 - "ramble-unit-tests":               [--print-shell-vars PRINT_SHELL_VARS]
Step #1 - "ramble-unit-tests":               COMMAND ...
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": A flexible benchmark experiment manager.
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": Complete list of ramble commands:
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": application dev:
Step #1 - "ramble-unit-tests":   edit                  open application files in $EDITOR
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": query applications:
Step #1 - "ramble-unit-tests":   list                  list and search available applications
Step #1 - "ramble-unit-tests":   info                  get detailed information on a particular application
Step #1 - "ramble-unit-tests":   mods                  list and get information on available modifiers
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": cleanup:
Step #1 - "ramble-unit-tests":   clean                 remove temporary files and/or downloaded archives
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": configuration:
Step #1 - "ramble-unit-tests":   config                get and set configuration options
Step #1 - "ramble-unit-tests":   mirror                manage mirrors (inputs)
Step #1 - "ramble-unit-tests":   repo                  manage Ramble repositories
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": developer:
Step #1 - "ramble-unit-tests":   attributes            get information about object attributes
Step #1 - "ramble-unit-tests":   commands              list available ramble commands
Step #1 - "ramble-unit-tests":   debug                 debugging commands for troubleshooting Ramble
Step #1 - "ramble-unit-tests":   flake8                runs source code style checks on Ramble. requires flake8
Step #1 - "ramble-unit-tests":   license               list and check license headers on files in ramble
Step #1 - "ramble-unit-tests":   software-definitions  inspect software definitions in object definitions
Step #1 - "ramble-unit-tests":   unit-test             run ramble's unit tests (wrapper around pytest)
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": results:
Step #1 - "ramble-unit-tests":   results               import experiment results from file
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": workspaces:
Step #1 - "ramble-unit-tests":   on                    "And now's the time, the time is now" (execute workspace experiments)
Step #1 - "ramble-unit-tests":   workspace             manage experiment workspaces
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": optional arguments:
Step #1 - "ramble-unit-tests":   --color {always,never,auto}
Step #1 - "ramble-unit-tests":                         when to colorize output (default: auto)
Step #1 - "ramble-unit-tests":   --disable-passthrough
Step #1 - "ramble-unit-tests":                         disable passthrough of expansion variables for debugging
Step #1 - "ramble-unit-tests":   --lines LINES         lines of profile output or 'all' (default: 20)
Step #1 - "ramble-unit-tests":   --pdb                 run ramble under the pdb debugger
Step #1 - "ramble-unit-tests":   --print-shell-vars PRINT_SHELL_VARS
Step #1 - "ramble-unit-tests":                         print info needed by setup-env.[c]sh
Step #1 - "ramble-unit-tests":   --sorted-profile STAT
Step #1 - "ramble-unit-tests":                         profile and sort by one or more of:
Step #1 - "ramble-unit-tests":                         [calls, ncalls, cumtime, cumulative, filename, line, module]
Step #1 - "ramble-unit-tests":   --stacktrace          add stacktraces to all printed statements
Step #1 - "ramble-unit-tests":   --timestamp           Add a timestamp to tty output
Step #1 - "ramble-unit-tests":   --use-workspace-repo  when running in a workspace, use its application repository
Step #1 - "ramble-unit-tests":   -C DIR, --config-scope DIR
Step #1 - "ramble-unit-tests":                         add a custom configuration scope
Step #1 - "ramble-unit-tests":   -D DIR, --workspace-dir DIR
Step #1 - "ramble-unit-tests":                         run with a workspace directory (ignore named workspaces)
Step #1 - "ramble-unit-tests":   -H, --all-help        show help for all commands (same as ramble help --all)
Step #1 - "ramble-unit-tests":   -L, --disable-locks   do not use filesystem locking (unsafe)
Step #1 - "ramble-unit-tests":   -N, --disable-logger  disable the ramble logger. All output will be printed to stdout.
Step #1 - "ramble-unit-tests":   -P, --disable-progress-bar
Step #1 - "ramble-unit-tests":                         disable the progress bars while setting up experiments.
Step #1 - "ramble-unit-tests":   -V, --version         show version number and exit
Step #1 - "ramble-unit-tests":   -W, --no-workspace    run without any workspaces activated (see ramble workspace)
Step #1 - "ramble-unit-tests":   -c CONFIG_VARS, --config CONFIG_VARS
Step #1 - "ramble-unit-tests":                         add one or more custom, one off config settings.
Step #1 - "ramble-unit-tests":   -d, --debug           write out debug messages (more d's for more verbosity: -d, -dd, -ddd, etc.)
Step #1 - "ramble-unit-tests":   -h, --help            show this help message and exit
Step #1 - "ramble-unit-tests":   -k, --insecure        do not check ssl certificates when downloading
Step #1 - "ramble-unit-tests":   -l, --enable-locks    use filesystem locking (default)
Step #1 - "ramble-unit-tests":   -m, --mock            use mock applications instead of real ones
Step #1 - "ramble-unit-tests":   -p, --profile         profile execution using cProfile
Step #1 - "ramble-unit-tests":   -v, --verbose         print additional output during builds
Step #1 - "ramble-unit-tests":   -w WRKSPC, --workspace WRKSPC
Step #1 - "ramble-unit-tests":                         run with a specific workspace (see ramble workspace)
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": more help:
Step #1 - "ramble-unit-tests":   ramble help --all       list all commands and options
Step #1 - "ramble-unit-tests":   ramble help <command>   help on a specific command
Step #1 - "ramble-unit-tests":   ramble help --spec      help on the application specification syntax
Step #1 - "ramble-unit-tests":   ramble docs             open https://ramble.rtfd.io/ in a browser
Step #1 - "ramble-unit-tests": ============================= test session starts ==============================
Step #1 - "ramble-unit-tests": platform linux -- Python 3.9.5, pytest-7.1.2, pluggy-1.0.0 -- /opt/spack/opt/spack/linux-centos7-haswell/gcc-4.8.5/miniconda3-4.10.3-7sasplhqfdkxyowhxaykwqt26bv2ouaq/bin/python
Step #1 - "ramble-unit-tests": cachedir: .pytest_cache
Step #1 - "ramble-unit-tests": rootdir: /workspace, configfile: pytest.ini, testpaths: lib/ramble/ramble/test
Step #1 - "ramble-unit-tests": collecting ... collected 923 items
Step #1 - "ramble-unit-tests": 
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_inheritance.py::test_basic_inheritance PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_application_type_features[ApplicationBase] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_application_type_features[ExecutableApplication] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_application_type_features[SpackApplication] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_workload_directive[ApplicationBase-func_types.method] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_workload_directive[ApplicationBase-func_types.directive] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_workload_directive[ExecutableApplication-func_types.method] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_workload_directive[ExecutableApplication-func_types.directive] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_workload_directive[SpackApplication-func_types.method] PASSED [  0%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_workload_directive[SpackApplication-func_types.directive] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_executable_directive[ApplicationBase-func_types.method] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_executable_directive[ApplicationBase-func_types.directive] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_executable_directive[ExecutableApplication-func_types.method] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_executable_directive[ExecutableApplication-func_types.directive] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_executable_directive[SpackApplication-func_types.method] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_executable_directive[SpackApplication-func_types.directive] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_figure_of_merit_directive[ApplicationBase-func_types.method] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_figure_of_merit_directive[ApplicationBase-func_types.directive] PASSED [  1%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_figure_of_merit_directive[ExecutableApplication-func_types.method] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_figure_of_merit_directive[ExecutableApplication-func_types.directive] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_figure_of_merit_directive[SpackApplication-func_types.method] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_figure_of_merit_directive[SpackApplication-func_types.directive] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_input_file_directive[ApplicationBase-func_types.method] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_input_file_directive[ApplicationBase-func_types.directive] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_input_file_directive[ExecutableApplication-func_types.method] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_input_file_directive[ExecutableApplication-func_types.directive] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_input_file_directive[SpackApplication-func_types.method] PASSED [  2%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_input_file_directive[SpackApplication-func_types.directive] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_default_compiler_directive[ApplicationBase-func_types.method] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_default_compiler_directive[ApplicationBase-func_types.directive] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_default_compiler_directive[ExecutableApplication-func_types.method] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_default_compiler_directive[ExecutableApplication-func_types.directive] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_default_compiler_directive[SpackApplication-func_types.method] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_default_compiler_directive[SpackApplication-func_types.directive] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_software_spec_directive[ApplicationBase-func_types.method] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_software_spec_directive[ApplicationBase-func_types.directive] PASSED [  3%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_software_spec_directive[ExecutableApplication-func_types.method] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_software_spec_directive[ExecutableApplication-func_types.directive] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_software_spec_directive[SpackApplication-func_types.method] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py::test_software_spec_directive[SpackApplication-func_types.directive] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_app_features[basic] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_app_features[basic-inherited] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_app_features[input-test] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_app_features[interleved-env-vars] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_app_features[register-builtin] PASSED [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_basic_app PASSED       [  4%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_application_copy_is_deep[basic] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_application_copy_is_deep[zlib] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_required_builtins[basic] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_required_builtins[basic-inherited] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_required_builtins[input-test] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_required_builtins[interleved-env-vars] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_required_builtins[register-builtin] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_register_builtin_app PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_short_print[basic] PASSED [  5%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_short_print[basic-inherited] PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_short_print[input-test] PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_short_print[interleved-env-vars] PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_short_print[register-builtin] PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_get_executables_initial PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_get_executables_yaml_defined PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_get_executables_custom_executables PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_set_input_path PASSED  [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_set_input_path_multi_input PASSED [  6%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_set_default_experiment_variables PASSED [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_inject_commands PASSED [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py::test_derive_variables_for_template_path PASSED [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cache_fetch.py::test_fetch_missing_cache[curl] PASSED [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cache_fetch.py::test_fetch_missing_cache[urllib] PASSED [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cache_fetch.py::test_fetch[curl] PASSED           [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cache_fetch.py::test_fetch[urllib] PASSED         [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/commands.py::test_missing_command PASSED          [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/commands.py::test_available_command PASSED        [  7%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/concretize_builtin.py::test_concretize_does_not_set_required PASSED [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{var1}-3] PASSED     [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{var2}-3] PASSED     [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{var3}-3] PASSED     [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{application_name}-foo] PASSED [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{n_nodes}-2] PASSED  [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{processes_per_node}-2] PASSED [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{n_nodes}*{processes_per_node}-4] PASSED [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[2**4-16] PASSED      [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{((((16-10+2)/4)**2)*4)}-16.0] PASSED [  8%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[gromacs +blas-gromacs +blas] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[range(0, 5)-[0, 1, 2, 3, 4]] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{decimal.06.var}-foo] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{}-{}] PASSED        [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{{n_ranks}+2}-6] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{{n_ranks}*{var{processes_per_node}}:05d}-00012] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{{n_ranks}-1}-3] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansions[{{{n_ranks}/2}:0.0f}-2] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expand_var_name[application_name-foo] PASSED [  9%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expand_var_name[workload_name-bar] PASSED [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expand_var_name[experiment_name-baz] PASSED [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expand_var_name[var1-3] PASSED  [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expand_var_name[var2-3] PASSED  [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expand_var_name[var3-3] PASSED  [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py::test_expansion_namespaces PASSED     [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_single_experiment_in_set PASSED [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_vector_experiment_in_set PASSED [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_vector_length_mismatch_errors PASSED [ 10%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_nonunique_vector_errors PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_zipped_vector_experiments PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_matrix_experiments PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_matrix_multiplication_experiments PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_matrix_vector_experiments PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_multi_matrix_experiments PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_full_experiments_from_dict PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_matrix_undefined_var_errors PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_experiment_names_match PASSED [ 11%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_cross_experiment_variable_references PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_cross_experiment_missing_experiment_errors PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_n_ranks_correct_defaults PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_n_nodes_correct_defaults PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_processes_per_node_correct_defaults PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_reserved_keywords_error_in_application[command] PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_reserved_keywords_error_in_application[env_path] PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_reserved_keywords_error_in_workload[command] PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_reserved_keywords_error_in_workload[env_path] PASSED [ 12%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_reserved_keywords_error_in_experiment[command] PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_reserved_keywords_error_in_experiment[env_path] PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_missing_required_keyword_errors[batch_submit] PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_missing_required_keyword_errors[mpi_command] PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_chained_experiments_populate_new_experiments PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_chained_experiment_has_correct_directory PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_chained_cycle_errors PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_chained_invalid_order_errors PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_modifiers_set_correctly PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_explicit_zips_work PASSED [ 13%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_explicit_zips_in_matrix PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_explicit_zips_unconsumed PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_single_var_explicit_zip PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_zip_undefined_var_errors PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_zip_multi_use_var_errors PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_zip_non_list_var_errors PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_zip_variable_lengths_errors PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_vector_experiment_with_explicit_excludes PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_matrix_experiments_explicit_excludes PASSED [ 14%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_vector_experiment_with_where_excludes PASSED [ 15%]
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py::test_vector_experiment_with_multi_where_excludes PASSED [ 15%]
Step #1 - "ramble-u
...
[Logs truncated due to log size limitations. For full logs, see https://console.cloud.google.com/cloud-build/builds/290e40cd-3177-4093-b6e7-00bb8fbad3c6?project=993292483723.]
...
1721-1730, 1733-1734, 1737, 1775-1781, 1791
Step #1 - "ramble-unit-tests": lib/ramble/ramble/filters.py                                                         10      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/keywords.py                                                        49      5    90%   86-88, 93, 109
Step #1 - "ramble-unit-tests": lib/ramble/ramble/language/application_language.py                                   56      2    96%   210, 216
Step #1 - "ramble-unit-tests": lib/ramble/ramble/language/language_base.py                                          81      4    95%   26, 166-167, 192
Step #1 - "ramble-unit-tests": lib/ramble/ramble/language/language_helpers.py                                       17      2    88%   65, 70
Step #1 - "ramble-unit-tests": lib/ramble/ramble/language/modifier_language.py                                      80      3    96%   46, 172, 176
Step #1 - "ramble-unit-tests": lib/ramble/ramble/language/shared_language.py                                        74      2    97%   210, 270
Step #1 - "ramble-unit-tests": lib/ramble/ramble/main.py                                                           423    185    56%   103-105, 110-111, 125, 140, 152-156, 161-179, 211-309, 324, 363, 371-375, 488, 505-508, 511, 515-517, 521, 524, 529, 532-543, 548-549, 553, 578, 671-674, 678-707, 720-728, 775, 780-781, 786-787, 789-790, 801, 812-822, 828-829, 834-835, 866-878, 885, 887-890, 911-934
Step #1 - "ramble-unit-tests": lib/ramble/ramble/mirror.py                                                         316    136    57%   71, 75, 78, 82-86, 93-97, 103, 124-133, 137, 154-159, 162-165, 168-173, 176-179, 182-187, 190-193, 196-201, 204-207, 216-217, 229-230, 233-234, 248, 251, 254, 257, 266, 287, 310-324, 330, 357, 401-428, 465-468, 488-489, 492-499, 502-503, 506, 512, 516-537, 544-549, 554-557, 562-566, 573
Step #1 - "ramble-unit-tests": lib/ramble/ramble/modifier.py                                                       181     13    93%   91, 164, 176, 194, 198-208
Step #1 - "ramble-unit-tests": lib/ramble/ramble/modifier_types/basic.py                                             5      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/modifier_types/spack.py                                             6      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/modkit.py                                                          13      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/namespace.py                                                       30      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/paths.py                                                           25      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/pipeline.py                                                       242     19    92%   38-39, 120-126, 175, 234, 344-348, 376-378, 393-395, 398-399, 402, 423
Step #1 - "ramble-unit-tests": lib/ramble/ramble/renderer.py                                                       194      9    95%   42, 46, 169, 178, 197-203
Step #1 - "ramble-unit-tests": lib/ramble/ramble/repository.py                                                     681    180    74%   28-29, 96, 113, 164-166, 222-224, 253-254, 273-281, 291-300, 304, 338-345, 351, 354, 369, 388, 408, 429, 478, 515-516, 558-559, 569-571, 579-581, 591-592, 614-619, 647-648, 664-665, 667, 672, 681-690, 745, 748, 752, 760, 782, 816, 911-916, 920-921, 928-936, 943-967, 977, 981-982, 995, 998, 1003-1013, 1022-1028, 1032, 1094-1095, 1102-1103, 1108, 1138, 1141, 1148-1153, 1171, 1180, 1185, 1188, 1204, 1207, 1213, 1217, 1221, 1229, 1243-1251, 1259-1262, 1271-1275, 1282-1287, 1291-1297, 1314, 1337, 1340, 1355, 1382, 1387, 1432, 1438-1441, 1459-1464
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/__init__.py                                                 23     10    57%   25, 35-46
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/applications.py                                             19      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/config.py                                                   31     13    58%   200-216
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/env_vars.py                                                  4      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/internals.py                                                 8      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/licenses.py                                                  7      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/merged.py                                                   14      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/mirrors.py                                                   3      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/modifier_repos.py                                            3      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/modifiers.py                                                 4      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/repos.py                                                     3      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/spack.py                                                     6      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/success_criteria.py                                          5      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/types.py                                                     9      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/variables.py                                                 5      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/workspace.py                                                13      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/schema/zips.py                                                      5      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/software_environments.py                                          246     46    81%   97, 120, 173, 236-252, 261-262, 273-289, 300, 309, 326, 335, 346, 353, 359-360, 382-383, 393
Step #1 - "ramble-unit-tests": lib/ramble/ramble/spack_runner.py                                                   411     82    80%   77-78, 93-96, 139, 159, 191, 215, 240-253, 265-276, 314, 334, 341-348, 357, 373, 384, 388, 442, 486-490, 554-556, 644, 657-659, 670-686, 692-699, 703-725, 757, 765-768, 771-776
Step #1 - "ramble-unit-tests": lib/ramble/ramble/spec.py                                                           162    105    35%   79-82, 85-101, 105-110, 117-120, 136-137, 185-264, 268-270, 277, 285-288, 292-296, 300-303, 309, 315-316
Step #1 - "ramble-unit-tests": lib/ramble/ramble/stage.py                                                          422    133    68%   70, 74, 82-110, 115-129, 148, 167-168, 335, 409-410, 431, 450, 465, 470-473, 488-516, 523, 533, 552, 555, 561-563, 573, 585, 615-617, 631-632, 665, 682, 700-702, 705-707, 722, 726, 741, 743, 753, 756, 759, 762, 765, 770, 773, 776, 780, 783, 789, 818-891
Step #1 - "ramble-unit-tests": lib/ramble/ramble/success_criteria.py                                               106     12    89%   54, 61, 114, 128, 136, 154, 158, 168-172, 189-193, 203
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_inheritance.py                                    33      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_language.py                                      218      9    96%   55, 111, 155, 183, 202, 231, 249, 274, 294
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/application_tests.py                                         220      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cache_fetch.py                                                33      1    97%   44
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/attributes.py                                             36      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/clean.py                                                  25      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/config.py                                                302      3    99%   721-723
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/debug.py                                                   7      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/info.py                                                   43      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/list.py                                                   50      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/mirror.py                                                 84      2    98%   40-41
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/mods.py                                                   23      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/on.py                                                     37      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/repo.py                                                   29      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/results.py                                                11      1    91%   38
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/software_definitions.py                                   23      5    78%   50-54
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/cmd/workspace.py                                             737     13    98%   37-39, 83-89, 1513-1514, 1670
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/commands.py                                                   12      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/concretize_builtin.py                                         25      2    92%   97-98
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/conftest.py                                                  297     54    82%   51-57, 84-89, 149-150, 183-186, 213-215, 328-330, 335, 338, 341, 349-353, 358-359, 362, 365, 370-373, 376-390, 414, 420-425, 433-442, 528
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/dry_run_helpers.py                                            50      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/config_section_env_vars.py                         29      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/custom_executables.py                              48      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/dryrun_chained_experiments.py                      72      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/dryrun_copies_external_env.py                      33      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/dryrun_series_contains_package_paths.py            30      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/env_var_builtin.py                                 60      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/exclusive_filtered_vector_workloads.py             31      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/expanded_fom_dry_run.py                            36      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/experiment_excludes.py                            118      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/explicit_zips.py                                  114      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/inclusive_filtered_vector_workloads.py             31      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/known_applications.py                              50      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/merge_config_files.py                              35      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/missing_required_dry_run.py                        20      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/nested_compilers_are_installed.py                  34      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/package_manager_config.py                          24      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/passthrough_variables.py                           46      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/phase_selection.py                                 49      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/phase_selection_with_dependencies.py               58      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/shared_context.py                                  32      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/test_configvar_dry_run.py                          41      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/unused_compilers_are_skipped.py                    34      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/vector_workloads.py                                24      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/wrfv4_dry_run.py                                  123      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py                                                   20      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py                                            877     26    97%   148-152, 195, 538, 694, 854-856, 892-894, 940-942, 991-993, 1193, 1250, 1562, 1608, 1653, 1698-1700
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/gcs_fetch.py                                                  51      6    88%   75-80
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/mirror_tests.py                                               81      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_application.py                                       24      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_env_var_modifiers.py              24      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_modifier_dry_run.py               27      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_modifier_spack_configs.py         25      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_spack_modifier.py                 25      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/modifier_helpers.py                    90      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/modifier_prepare_analysis.py           31      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/multi_modifier_dry_run.py              33      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/single_modifier_dry_run.py             41      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_language.py                                         320     15    95%   67, 115, 168, 186, 208, 253, 292, 378, 412, 439-442, 479-482
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/namespace_trie.py                                             57      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/repository.py                                                 30      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/software_environment.py                                      385      6    98%   110-113, 309-313
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/spack_runner.py                                              285     36    87%   22-23, 32-33, 43-44, 55-56, 70-71, 105-106, 133-134, 162-163, 178-179, 202-203, 226-227, 252-253, 274-275, 331-332, 415-416, 443-444, 456-457, 507-508
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/spec_basic.py                                                 12      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/stage.py                                                     450     49    89%   126, 151-152, 227, 313, 347-374, 401, 674-700, 710-714, 724-725, 794-796
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria.py                                           29      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria/always_print_foms.py                         25      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria/success_fom_comparison.py                    29      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria/success_fom_globbing.py                      29      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria/success_functions.py                         25      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria/success_modifiers.py                         29      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria/success_variable_fom_comparison.py           32      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/util/editor.py                                                79      4    95%   25, 72, 102, 114
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/util/env.py                                                   26      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/workspace_hashing/unsetup_workspace_cannot_analyze.py         21      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/workspace_hashing/workspace_name_does_not_change_hash.py      27      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/workspace_hashing/workspace_setup_creates_inventory.py        22      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/test/workspace_tests.py                                            14      3    79%   22-24
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/__init__.py                                                    0      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/colors.py                                                     19      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/directives.py                                                 15      1    93%   39
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/editor.py                                                     47      3    94%   48, 92, 131
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/env.py                                                        48      1    98%   27
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/executable.py                                                 38      3    92%   84, 101-107
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/file_cache.py                                                 77     22    71%   50-55, 84-88, 96, 112, 134, 143, 148, 166-167, 170-176
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/hashing.py                                                    16      5    69%   15-19
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/imp/__init__.py                                                5      2    60%   28-29
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/imp/importlib_importer.py                                     22      2    91%   25, 33
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/install_cache.py                                               8      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/lock.py                                                       39     18    54%   36, 44-45, 48-49, 62-81
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/logger.py                                                     88      7    92%   104, 168-170, 203-205
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/matrices.py                                                   16      1    94%   34
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/naming.py                                                    121     48    60%   64, 73-76, 82-93, 116-141, 151, 157, 162-163, 170-172, 179-181, 212, 215, 235-241, 258-263, 266-268
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/path.py                                                       36      8    78%   54-64
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/spec_utils.py                                                 20      5    75%   20, 23, 27, 29, 31
Step #1 - "ramble-unit-tests": lib/ramble/ramble/util/web.py                                                       389    282    28%   46, 61-62, 65-68, 73, 76-81, 112, 119-120, 125, 136-139, 146-147, 151, 159-164, 170, 177-178, 183, 192-228, 234-261, 265-270, 274-324, 330-341, 345-361, 365-377, 381-383, 387-407, 427-549, 557-558, 563, 567-568, 575-579, 607-695, 716, 720-725, 735-738
Step #1 - "ramble-unit-tests": lib/ramble/ramble/workspace/__init__.py                                               3      0   100%
Step #1 - "ramble-unit-tests": lib/ramble/ramble/workspace/shell.py                                                 65     48    26%   19-59, 63-93, 144
Step #1 - "ramble-unit-tests": lib/ramble/ramble/workspace/workspace.py                                            765    134    82%   183-184, 204, 248, 266-267, 280, 300-302, 308, 321, 326-329, 357, 394-410, 493-494, 530, 592-605, 611-621, 639-643, 646-649, 653-654, 729-738, 789-798, 809-810, 830-831, 852, 896-899, 901-903, 925, 930-932, 946-949, 955, 969, 996, 1036, 1057, 1069-1070, 1085-1086, 1116, 1125-1126, 1207, 1241-1242, 1246-1248, 1255-1256, 1261-1263, 1298, 1306, 1310-1312, 1342-1348, 1375, 1385, 1393-1395, 1402, 1435-1436, 1443-1444
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/basic-inherited/application.py             6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/basic/application.py                      13      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/expanded_foms/application.py              10      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/input-test/application.py                 10      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/interleved-env-vars/application.py        13      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/maintained-1/application.py                6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/maintained-2/application.py                6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/register-builtin/application.py           17      1    94%   41
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/shared-context/application.py             12      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/success-function/application.py            8      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/tagged-1/application.py                    6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/unmaintained-1/application.py              5      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/untagged-1/application.py                  5      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/zlib-configs/application.py                9      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/applications/zlib/application.py                        8      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/append-env-var-mod-paths/modifier.py          6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/append-env-var-mod-vars/modifier.py           6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/maintained-1/modifier.py                      6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/maintained-2/modifier.py                      6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/multiple-modes-no-default/modifier.py         6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/multiple-modes-with-default/modifier.py       7      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/no-docstring-mod/modifier.py                  5      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/no-variable-mods/modifier.py                  5      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/prepare-analysis/modifier.py                 10      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/prepend-env-var-mod-paths/modifier.py         6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/set-env-var-mod/modifier.py                   6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/spack-mod/modifier.py                         9      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/success-criteria/modifier.py                  9      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/tagged-1/modifier.py                          5      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/test-mod/modifier.py                         16      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/unmaintained-1/modifier.py                    5      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/unset-env-var-mod/modifier.py                 6      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin.mock/modifiers/untagged-1/modifier.py                        4      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/cloverleaf/application.py                      40      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/gromacs/application.py                         56      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/hmmer/application.py                           22      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/hostname/application.py                        18      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/hpcc/application.py                            25      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/hpcg/application.py                            34      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/hpl/application.py                            129      8    94%   210, 214-219, 233, 242
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/intel-hpl/application.py                      129      8    94%   211, 215-220, 234, 243
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/intel-mpi-benchmarks/application.py            40      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/ior/application.py                             46      1    98%   124
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/iperf2/application.py                          23      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/lammps/application.py                          57      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/lulesh/application.py                          28      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/md-test/application.py                         26      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/minixyce/application.py                        70     15    79%   103-135, 158-166
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/namd/application.py                            77      9    88%   332-336, 339-346
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/openfoam/application.py                        60      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/osu-micro-benchmarks/application.py            21      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/quantum-espresso/application.py                44      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/spack-stack/application.py                     48      5    90%   120, 127-130
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/streamc/application.py                         26      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/ufs-weather-model/application.py               32      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/wrfv3/application.py                           61     25    59%   102-129
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/applications/wrfv4/application.py                           62      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/modifiers/conditional-psm3/modifier.py                      17      7    59%   41-83
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/modifiers/gcp-metadata/modifier.py                          33     19    42%   30-59, 62-72
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/modifiers/intel-aps/modifier.py                             41      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/modifiers/lscpu/modifier.py                                 16      0   100%
Step #1 - "ramble-unit-tests": var/ramble/repos/builtin/modifiers/pre-exec-print/modifier.py                        20     10    50%   35-55
Step #1 - "ramble-unit-tests": ---------------------------------------------------------------------------------------------------------------
Step #1 - "ramble-unit-tests": TOTAL                                                                             19916   3510    82%
Finished Step #1 - "ramble-unit-tests"
PUSH
DONE

Build Log: https://console.cloud.google.com/cloud-build/builds/290e40cd-3177-4093-b6e7-00bb8fbad3c6?project=993292483723