Simplify path generation - #1698
Merged
Merged
Google Cloud Build / PR-Unit-Tests-debian12-5-v1-0-0spack-3-13-5python (ramble-eng)
succeeded
Aug 1, 2026 in 23m 17s
Summary
Build Information
| Trigger | PR-Unit-Tests-debian12-5-v1-0-0spack-3-13-5python |
| Build | 9b67b99f-cf53-4393-ac8d-6999b7777b00 |
| Start | 2026-08-01T13:20:21-07:00 |
| Duration | 22m25.736s |
| Status | SUCCESS |
Steps
| Step | Status | Duration |
|---|---|---|
| gcr.io/cloud-builders/gcloud | SUCCESS | 3.171s |
| ramble-clone | SUCCESS | 19.736s |
| ramble-unit-tests | SUCCESS | 21m56.827s |
Details
starting build "9b67b99f-cf53-4393-ac8d-6999b7777b00"
FETCHSOURCE
From https://github.com/GoogleCloudPlatform/ramble
* branch 79e3aee95a2c438d7bd7d088916b8bdadfbd4a8f -> FETCH_HEAD
HEAD is now at 79e3aee Simplify path generation
GitCommit:
79e3aee95a2c438d7bd7d088916b8bdadfbd4a8f
BUILD
Starting Step #0
Step #0: Already have image (with digest): gcr.io/cloud-builders/gcloud
Step #0: Current Build ID: 9b67b99f-cf53-4393-ac8d-6999b7777b00
Step #0: Filtering for tag: PR-Unit-Tests-debian12-5-v1-0-0spack-3-13-5python-1698 in project: ramble-eng
Step #0: ERROR: (gcloud.builds.describe) NOT_FOUND: Requested entity was not found. This command is authenticated as 993292483723@cloudbuild.gserviceaccount.com which is the active account specified by the [core/account] property.
Step #0: Warning: Could not retrieve creation time for build 9b67b99f-cf53-4393-ac8d-6999b7777b00. Skipping cancellation of older builds.
Finished Step #0
Starting Step #1 - "ramble-clone"
Step #1 - "ramble-clone": Already have image (with digest): gcr.io/cloud-builders/git
Step #1 - "ramble-clone": From https://github.com/GoogleCloudPlatform/ramble
Step #1 - "ramble-clone": * [new branch] develop -> origin/develop
Step #1 - "ramble-clone": * [new branch] gh-pages -> origin/gh-pages
Step #1 - "ramble-clone": * [new branch] main -> origin/main
Step #1 - "ramble-clone": * [new tag] v0.6.0 -> v0.6.0
Step #1 - "ramble-clone": * [new tag] v0.1.0 -> v0.1.0
Step #1 - "ramble-clone": * [new tag] v0.2.0 -> v0.2.0
Step #1 - "ramble-clone": * [new tag] v0.2.1 -> v0.2.1
Step #1 - "ramble-clone": * [new tag] v0.3.0 -> v0.3.0
Step #1 - "ramble-clone": * [new tag] v0.4.0 -> v0.4.0
Step #1 - "ramble-clone": * [new tag] v0.5.0 -> v0.5.0
Finished Step #1 - "ramble-clone"
Starting Step #2 - "ramble-unit-tests"
Step #2 - "ramble-unit-tests": Pulling image: us-central1-docker.pkg.dev/ramble-eng/ramble-repo/ramble-debian-12.5-spackv1.0.0-python3.13.5:latest
Step #2 - "ramble-unit-tests": latest: Pulling from ramble-eng/ramble-repo/ramble-debian-12.5-spackv1.0.0-python3.13.5
Step #2 - "ramble-unit-tests": fea1432adf09: Pulling fs layer
Step #2 - "ramble-unit-tests": 192f4340e114: Pulling fs layer
Step #2 - "ramble-unit-tests": fea1432adf09: Verifying Checksum
Step #2 - "ramble-unit-tests": fea1432adf09: Download complete
Step #2 - "ramble-unit-tests": fea1432adf09: Pull complete
Step #2 - "ramble-unit-tests": 192f4340e114: Verifying Checksum
Step #2 - "ramble-unit-tests": 192f4340e114: Download complete
Step #2 - "ramble-unit-tests": 192f4340e114: Pull complete
Step #2 - "ramble-unit-tests": Digest: sha256:1ea5cd0950c888f1611165bdf7e9beb6787bf089891dcdf00c050b0f80b3abf9
Step #2 - "ramble-unit-tests": Status: Downloaded newer image for us-central1-docker.pkg.dev/ramble-eng/ramble-repo/ramble-debian-12.5-spackv1.0.0-python3.13.5:latest
Step #2 - "ramble-unit-tests": us-central1-docker.pkg.dev/ramble-eng/ramble-repo/ramble-debian-12.5-spackv1.0.0-python3.13.5:latest
Step #2 - "ramble-unit-tests": branch 'develop' set up to track 'origin/develop'.
Step #2 - "ramble-unit-tests": remote: Enumerating objects: 20563, done.
Step #2 - "ramble-unit-tests": remote: Counting objects: 0% (1/20563)
remote: Counting objects: 1% (206/20563)
remote: Counting objects: 2% (412/20563)
remote: Counting objects: 3% (617/20563)
remote: Counting objects: 4% (823/20563)
remote: Counting objects: 5% (1029/20563)
remote: Counting objects: 6% (1234/20563)
remote: Counting objects: 7% (1440/20563)
remote: Counting objects: 8% (1646/20563)
remote: Counting objects: 9% (1851/20563)
remote: Counting objects: 10% (2057/20563)
remote: Counting objects: 11% (2262/20563)
remote: Counting objects: 12% (2468/20563)
remote: Counting objects: 13% (2674/20563)
remote: Counting objects: 14% (2879/20563)
remote: Counting objects: 15% (3085/20563)
remote: Counting objects: 16% (3291/20563)
remote: Counting objects: 17% (3496/20563)
remote: Counting objects: 18% (3702/20563)
remote: Counting objects: 19% (3907/20563)
remote: Counting objects: 20% (4113/20563)
remote: Counting objects: 21% (4319/20563)
remote: Counting objects: 22% (4524/20563)
remote: Counting objects: 23% (4730/20563)
remote: Counting objects: 24% (4936/20563)
remote: Counting objects: 25% (5141/20563)
remote: Counting objects: 26% (5347/20563)
remote: Counting objects: 27% (5553/20563)
remote: Counting objects: 28% (5758/20563)
remote: Counting objects: 29% (5964/20563)
remote: Counting objects: 30% (6169/20563)
remote: Counting objects: 31% (6375/20563)
remote: Counting objects: 32% (6581/20563)
remote: Counting objects: 33% (6786/20563)
remote: Counting objects: 34% (6992/20563)
remote: Counting objects: 35% (7198/20563)
remote: Counting objects: 36% (7403/20563)
remote: Counting objects: 37% (7609/20563)
remote: Counting objects: 38% (7814/20563)
remote: Counting objects: 39% (8020/20563)
remote: Counting objects: 40% (8226/20563)
remote: Counting objects: 41% (8431/20563)
remote: Counting objects: 42% (8637/20563)
remote: Counting objects: 43% (8843/20563)
remote: Counting objects: 44% (9048/20563)
remote: Counting objects: 45% (9254/20563)
remote: Counting objects: 46% (9459/20563)
remote: Counting objects: 47% (9665/20563)
remote: Counting objects: 48% (9871/20563)
remote: Counting objects: 49% (10076/20563)
remote: Counting objects: 50% (10282/20563)
remote: Counting objects: 51% (10488/20563)
remote: Counting objects: 52% (10693/20563)
remote: Counting objects: 53% (10899/20563)
remote: Counting objects: 54% (11105/20563)
remote: Counting objects: 55% (11310/20563)
remote: Counting objects: 56% (11516/20563)
remote: Counting objects: 57% (11721/20563)
remote: Counting objects: 58% (11927/20563)
remote: Counting objects: 59% (12133/20563)
remote: Counting objects: 60% (12338/20563)
remote: Counting objects: 61% (12544/20563)
remote: Counting objects: 62% (12750/20563)
remote: Counting objects: 63% (12955/20563)
remote: Counting objects: 64% (13161/20563)
remote: Counting objects: 65% (13366/20563)
remote: Counting objects: 66% (13572/20563)
remote: Counting objects: 67% (13778/20563)
remote: Counting objects: 68% (13983/20563)
remote: Counting objects: 69% (14189/20563)
remote: Counting objects: 70% (14395/20563)
remote: Counting objects: 71% (14600/20563)
remote: Counting objects: 72% (14806/20563)
remote: Counting objects: 73% (15011/20563)
remote: Counting objects: 74% (15217/20563)
remote: Counting objects: 75% (15423/20563)
remote: Counting objects: 76% (15628/20563)
remote: Counting objects: 77% (15834/20563)
remote: Counting objects: 78% (16040/20563)
remote: Counting objects: 79% (16245/20563)
remote: Counting objects: 80% (16451/20563)
remote: Counting objects: 81% (16657/20563)
remote: Counting objects: 82% (16862/20563)
remote: Counting objects: 83% (17068/20563)
remote: Counting objects: 84% (17273/20563)
remote: Counting objects: 85% (17479/20563)
remote: Counting objects: 86% (17685/20563)
remote: Counting objects: 87% (17890/20563)
remote: Counting objects: 88% (18096/20563)
remote: Counting objects: 89% (18302/20563)
remote: Counting objects: 90% (18507/20563)
remote: Counting objects: 91% (18713/20563)
remote: Counting objects: 92% (18918/20563)
remote: Counting objects: 93% (19124/20563)
remote: Counting objects: 94% (19330/20563)
remote: Counting objects: 95% (19535/20563)
remote: Counting objects: 96% (19741/20563)
remote: Counting objects: 97% (19947/20563)
remote: Counting objects: 98% (20152/20563)
remote: Counting objects: 99% (20358/20563)
remote: Counting objects: 100% (20563/20563)
remote: Counting objects: 100% (20563/20563), done.
Step #2 - "ramble-unit-tests": remote: Compressing objects: 0% (1/11127)
remote: Compressing objects: 1% (112/11127)
remote: Compressing objects: 2% (223/11127)
remote: Compressing objects: 3% (334/11127)
remote: Compressing objects: 4% (446/11127)
remote: Compressing objects: 5% (557/11127)
remote: Compressing objects: 6% (668/11127)
remote: Compressing objects: 7% (779/11127)
remote: Compressing objects: 8% (891/11127)
remote: Compressing objects: 9% (1002/11127)
remote: Compressing objects: 10% (1113/11127)
remote: Compressing objects: 11% (1224/11127)
remote: Compressing objects: 12% (1336/11127)
remote: Compressing objects: 13% (1447/11127)
remote: Compressing objects: 14% (1558/11127)
remote: Compressing objects: 15% (1670/11127)
remote: Compressing objects: 16% (1781/11127)
remote: Compressing objects: 17% (1892/11127)
remote: Compressing objects: 18% (2003/11127)
remote: Compressing objects: 19% (2115/11127)
remote: Compressing objects: 20% (2226/11127)
remote: Compressing objects: 21% (2337/11127)
remote: Compressing objects: 22% (2448/11127)
remote: Compressing objects: 23% (2560/11127)
remote: Compressing objects: 24% (2671/11127)
remote: Compressing objects: 25% (2782/11127)
remote: Compressing objects: 26% (2894/11127)
remote: Compressing objects: 27% (3005/11127)
remote: Compressing objects: 28% (3116/11127)
remote: Compressing objects: 29% (3227/11127)
remote: Compressing objects: 30% (3339/11127)
remote: Compressing objects: 31% (3450/11127)
remote: Compressing objects: 32% (3561/11127)
remote: Compressing objects: 33% (3672/11127)
remote: Compressing objects: 34% (3784/11127)
remote: Compressing objects: 35% (3895/11127)
remote: Compressing objects: 36% (4006/11127)
remote: Compressing objects: 37% (4117/11127)
remote: Compressing objects: 38% (4229/11127)
remote: Compressing objects: 39% (4340/11127)
remote: Compressing objects: 40% (4451/11127)
remote: Compressing objects: 41% (4563/11127)
remote: Compressing objects: 42% (4674/11127)
remote: Compressing objects: 43% (4785/11127)
remote: Compressing objects: 44% (4896/11127)
remote: Compressing objects: 45% (5008/11127)
remote: Compressing objects: 46% (5119/11127)
remote: Compressing objects: 47% (5230/11127)
remote: Compressing objects: 48% (5341/11127)
remote: Compressing objects: 49% (5453/11127)
remote: Compressing objects: 50% (5564/11127)
remote: Compressing objects: 51% (5675/11127)
remote: Compressing objects: 52% (5787/11127)
remote: Compressing objects: 53% (5898/11127)
remote: Compressing objects: 54% (6009/11127)
remote: Compressing objects: 55% (6120/11127)
remote: Compressing objects: 56% (6232/11127)
remote: Compressing objects: 57% (6343/11127)
remote: Compressing objects: 58% (6454/11127)
remote: Compressing objects: 59% (6565/11127)
remote: Compressing objects: 60% (6677/11127)
remote: Compressing objects: 61% (6788/11127)
remote: Compressing objects: 62% (6899/11127)
remote: Compressing objects: 63% (7011/11127)
remote: Compressing objects: 64% (7122/11127)
remote: Compressing objects: 65% (7233/11127)
remote: Compressing objects: 66% (7344/11127)
remote: Compressing objects: 67% (7456/11127)
remote: Compressing objects: 68% (7567/11127)
remote: Compressing objects: 69% (7678/11127)
remote: Compressing objects: 70% (7789/11127)
remote: Compressing objects: 71% (7901/11127)
remote: Compressing objects: 72% (8012/11127)
remote: Compressing objects: 73% (8123/11127)
remote: Compressing objects: 74% (8234/11127)
remote: Compressing objects: 75% (8346/11127)
remote: Compressing objects: 76% (8457/11127)
remote: Compressing objects: 77% (8568/11127)
remote: Compressing objects: 78% (8680/11127)
remote: Compressing objects: 78% (8721/11127)
remote: Compressing objects: 79% (8791/11127)
remote: Compressing objects: 80% (8902/11127)
remote: Compressing objects: 81% (9013/11127)
remote: Compressing objects: 82% (9125/11127)
remote: Compressing objects: 83% (9236/11127)
remote: Compressing objects: 84% (9347/11127)
remote: Compressing objects: 85% (9458/11127)
remote: Compressing objects: 86% (9570/11127)
remote: Compressing objects: 87% (9681/11127)
remote: Compressing objects: 88% (9792/11127)
remote: Compressing objects: 89% (9904/11127)
remote: Compressing objects: 90% (10015/11127)
remote: Compressing objects: 91% (10126/11127)
remote: Compressing objects: 92% (10237/11127)
remote: Compressing objects: 93% (10349/11127)
remote: Compressing objects: 94% (10460/11127)
remote: Compressing objects: 95% (10571/11127)
remote: Compressing objects: 96% (10682/11127)
remote: Compressing objects: 97% (10794/11127)
remote: Compressing objects: 98% (10905/11127)
remote: Compressing objects: 99% (11016/11127)
remote: Compressing objects: 100% (11127/11127)
remote: Compressing objects: 100% (11127/11127), done.
Step #2 - "ramble-unit-tests": remote: Total 20563 (delta 1330), reused 14271 (delta 1153), pack-reused 0 (from 0)
Step #2 - "ramble-unit-tests": Ignoring graphlib-backport: markers 'python_version < "3.9"' don't match your environment
Step #2 - "ramble-unit-tests": Ignoring urllib3: markers 'python_version <= "3.6"' don't match your environment
Step #2 - "ramble-unit-tests": Ignoring protobuf: markers 'python_version <= "3.6"' don't match your environment
Step #2 - "ramble-unit-tests": Ignoring pyarrow: markers 'python_version <= "3.6"' don't match your environment
Step #2 - "ramble-unit-tests": Requirement already satisfied: google-cloud-storage in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 1)) (3.13.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: google-api-core in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 2)) (2.33.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: protobuf in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 5)) (7.35.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: google-cloud-bigquery in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 8)) (3.42.3)
Step #2 - "ramble-unit-tests": Requirement already satisfied: tqdm in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 9)) (4.70.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: deprecation in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 10)) (2.1.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pandas in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 11)) (3.0.5)
Step #2 - "ramble-unit-tests": Requirement already satisfied: matplotlib in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 12)) (3.11.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: setuptools in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 13)) (83.0.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: scipy in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 14)) (1.18.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: types-PyYAML in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 15)) (6.0.12.20260724)
Step #2 - "ramble-unit-tests": Requirement already satisfied: distro in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements.txt (line 16)) (1.9.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pytest in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 2)) (9.1.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pytest-benchmark in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 3)) (5.2.3)
Step #2 - "ramble-unit-tests": Requirement already satisfied: flake8 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 4)) (7.3.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: black in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 5)) (26.5.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: coverage in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 6)) (7.13.5)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pre-commit in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 7)) (4.6.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pytest-xdist in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 8)) (3.8.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pytest-clarity in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 9)) (1.0.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: line_profiler in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 10)) (5.0.2)
Step #2 - "ramble-unit-tests": Requirement already satisfied: isort in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 11)) (7.0.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: codecov-cli in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 12)) (11.2.5)
Step #2 - "ramble-unit-tests": Requirement already satisfied: mypy in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 13)) (2.3.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: ruff in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from -r /workspace/requirements-dev.txt (line 14)) (0.16.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: mccabe<0.8.0,>=0.7.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from flake8->-r /workspace/requirements-dev.txt (line 4)) (0.7.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pycodestyle<2.15.0,>=2.14.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from flake8->-r /workspace/requirements-dev.txt (line 4)) (2.14.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pyflakes<3.5.0,>=3.4.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from flake8->-r /workspace/requirements-dev.txt (line 4)) (3.4.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: click>=8.0.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from black->-r /workspace/requirements-dev.txt (line 5)) (8.2.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: mypy-extensions>=0.4.3 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from black->-r /workspace/requirements-dev.txt (line 5)) (1.1.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: packaging>=22.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from black->-r /workspace/requirements-dev.txt (line 5)) (26.2)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pathspec>=1.0.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from black->-r /workspace/requirements-dev.txt (line 5)) (1.1.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: platformdirs>=2 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from black->-r /workspace/requirements-dev.txt (line 5)) (4.11.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pytokens~=0.4.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from black->-r /workspace/requirements-dev.txt (line 5)) (0.4.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: typing_extensions in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from line_profiler->-r /workspace/requirements-dev.txt (line 10)) (4.16.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: ijson==3.* in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (3.5.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: PyYAML==6.* in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (6.0.3)
Step #2 - "ramble-unit-tests": Requirement already satisfied: responses==0.21.* in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (0.21.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: sentry-sdk==2.* in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (2.66.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: test-results-parser==0.6.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (0.6.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: librt>=0.13.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from mypy->-r /workspace/requirements-dev.txt (line 13)) (0.13.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: ast-serialize<1.0.0,>=0.6.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from mypy->-r /workspace/requirements-dev.txt (line 13)) (0.6.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: requests<3.0,>=2.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from responses==0.21.*->codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (2.34.2)
Step #2 - "ramble-unit-tests": Requirement already satisfied: urllib3>=1.25.10 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from responses==0.21.*->codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (2.7.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: charset_normalizer<4,>=2 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from requests<3.0,>=2.0->responses==0.21.*->codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (3.4.9)
Step #2 - "ramble-unit-tests": Requirement already satisfied: idna<4,>=2.5 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from requests<3.0,>=2.0->responses==0.21.*->codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (3.18)
Step #2 - "ramble-unit-tests": Requirement already satisfied: certifi>=2023.5.7 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from requests<3.0,>=2.0->responses==0.21.*->codecov-cli->-r /workspace/requirements-dev.txt (line 12)) (2026.7.22)
Step #2 - "ramble-unit-tests": Requirement already satisfied: google-auth<3.0.0,>=2.26.1 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-cloud-storage->-r /workspace/requirements.txt (line 1)) (2.56.2)
Step #2 - "ramble-unit-tests": Requirement already satisfied: google-cloud-core<3.0.0,>=2.4.2 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-cloud-storage->-r /workspace/requirements.txt (line 1)) (2.6.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: google-resumable-media<3.0.0,>=2.7.2 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-cloud-storage->-r /workspace/requirements.txt (line 1)) (2.10.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: google-crc32c<2.0.0,>=1.6.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-cloud-storage->-r /workspace/requirements.txt (line 1)) (1.8.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: googleapis-common-protos<2.0.0,>=1.63.2 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-api-core->-r /workspace/requirements.txt (line 2)) (1.75.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: proto-plus<2.0.0,>=1.24.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-api-core->-r /workspace/requirements.txt (line 2)) (1.28.2)
Step #2 - "ramble-unit-tests": Requirement already satisfied: pyasn1-modules>=0.2.1 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-auth<3.0.0,>=2.26.1->google-cloud-storage->-r /workspace/requirements.txt (line 1)) (0.4.2)
Step #2 - "ramble-unit-tests": Requirement already satisfied: cryptography>=38.0.3 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-auth<3.0.0,>=2.26.1->google-cloud-storage->-r /workspace/requirements.txt (line 1)) (50.0.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: python-dateutil<3.0.0,>=2.8.2 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-cloud-bigquery->-r /workspace/requirements.txt (line 8)) (2.9.0.post0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: grpcio<2.0.0,>=1.41.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-api-core[grpc]<3.0.0,>=2.25.0->google-cloud-bigquery->-r /workspace/requirements.txt (line 8)) (1.83.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: grpcio-status<2.0.0,>=1.41.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from google-api-core[grpc]<3.0.0,>=2.25.0->google-cloud-bigquery->-r /workspace/requirements.txt (line 8)) (1.83.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: six>=1.5 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from python-dateutil<3.0.0,>=2.8.2->google-cloud-bigquery->-r /workspace/requirements.txt (line 8)) (1.17.0)
Step #2 - "ramble-unit-tests": Requirement already satisfied: numpy>=1.26.0 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from pandas->-r /workspace/requirements.txt (line 11)) (2.5.1)
Step #2 - "ramble-unit-tests": Requirement already satisfied: contourpy>=1.0.1 in /opt/spack/opt/spack/linux-zen2/python-venv-1.0-xfyvgracasrb2n37qdyjc4fvmuwbdxsh/lib/python3.13/site-packages (from matplot
...
[Logs truncated due to log size limitations. For full logs, see https://console.cloud.google.com/cloud-build/builds;region=us-central1/9b67b99f-cf53-4393-ac8d-6999b7777b00?project=993292483723.]
...
36 2 94% 98-99
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/config.py 63 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/context.py 52 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/definitions/test_versions.py 40 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/dry_run_helpers.py 53 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/edit_file_validation.py 117 6 95% 30, 59, 72, 85, 98, 101
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/analyze_fom_output.py 102 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/analyze_upload.py 22 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/chained_experiment_variant_propagation.py 38 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/cleanup_directive.py 27 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/concretize_with_different_package_managers.py 20 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/config_section_env_vars.py 26 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/configvar_dry_run.py 34 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/custom_executables.py 56 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/define_package_paths.py 54 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/dryrun_chained_experiments.py 70 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/dryrun_copies_external_env.py 30 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/dryrun_series_contains_package_paths.py 21 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/env_var_builtin.py 121 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/env_var_leakage.py 26 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/exclusive_filtered_vector_workloads.py 22 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/expanded_fom_dry_run.py 36 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/experiment_excludes.py 125 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/experiment_hashes.py 80 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/experiment_repeats.py 130 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/experiment_templates.py 29 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/explicit_zips.py 115 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/fom_log_file_path.py 20 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/formatted_executables.py 103 1 99% 122
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/globbing_patterns.py 97 9 91% 105, 107, 115, 123, 156, 160, 164, 168, 172
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/gromacs_size_expansion.py 12 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/included_configuration_files.py 45 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/inclusive_filtered_vector_workloads.py 22 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/known_applications.py 97 4 96% 87-89, 129-130
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/license_name.py 38 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/malformed_config.py 10 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/manage_software.py 35 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/merge_config_files.py 43 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/missing_required_dry_run.py 14 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/nested_compilers_are_installed.py 31 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/nested_config_templates.py 30 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/object_import.py 15 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/object_precedence.py 37 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/object_validation.py 54 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/package_manager_config.py 21 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/package_manager_provenance.py 72 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/package_manager_requirements.py 22 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/package_manager_unique_env_dirs.py 32 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/passthrough_variables.py 41 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/phase_profiling.py 20 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/phase_selection.py 46 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/phase_selection_with_dependencies.py 56 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/registered_builtin_order.py 28 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/setup_analyze.py 54 5 91% 62, 71-72, 96, 100
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/shared_context.py 29 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/shell_wrappers.py 59 4 93% 125-126, 212-213
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/short_builtin_dep_name.py 10 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/software_spec_injection.py 72 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/spack_env_cache.py 38 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/tag_filtering.py 31 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/target_shells.py 21 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/template.py 74 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/test_fast_tables.py 28 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/test_variable_precedence.py 24 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/unused_compilers_are_skipped.py 31 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/variant_propagation.py 16 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/vector_workloads.py 15 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/warn_mirror_support.py 17 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/workspace_includes.py 60 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/workspace_path_replacements.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/end_to_end/wrfv4_dry_run.py 245 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/expander.py 85 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_result.py 158 4 97% 177, 302, 305, 319
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/experiment_set.py 1145 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/fetch_strategy.py 489 6 99% 95, 218, 324, 436, 579, 674
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/filters.py 85 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/gcs_fetch.py 53 6 89% 78-83
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/get_file_path.py 19 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/impossible_when.py 52 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/language/test_requires_utility.py 16 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/language_helpers.py 12 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/mirror.py 88 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/mock_spack_runner.py 102 6 94% 52, 99, 114, 127, 130, 137
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_application.py 23 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_directive.py 146 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/executable_modifier_usage_filters.py 51 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/experiment_modification.py 22 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_env_var_modifiers.py 23 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_layered_modifications.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_modifier_dry_run.py 26 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_modifier_phases.py 43 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_modifier_spack_configs.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_repeated_modifications.py 21 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/mock_spack_modifier.py 29 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/modeless_variables.py 22 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/modifier_conflicts.py 43 4 91% 55, 78, 105, 132
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/modifier_helpers.py 92 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/modifier_nested_var_dry_run.py 24 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/modifier_prepare_analysis.py 31 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/multi_modifier_dry_run.py 31 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/repeat_env_var.py 21 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/required_variables.py 20 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_functionality/single_modifier_dry_run.py 40 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_language.py 308 1 99% 134
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/modifier_recursion.py 85 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/namespace_trie.py 58 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/package_manager_functionality/package_manager_general.py 28 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/package_manager_language.py 31 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/renderer.py 10 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/reports.py 258 2 99% 105, 109
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/repository.py 44 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/software_environment.py 225 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/spec.py 33 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/stage.py 356 9 97% 144-145, 223, 307, 365-366, 658-660
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria.py 61 1 98% 115
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/anti_match.py 29 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/repeat_success_strict.py 37 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_fom_comparison.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_fom_globbing.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_functions.py 16 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_modifiers.py 81 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_precedence.py 58 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_scoping.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_summary.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/success_criteria_functionality/success_variable_fom_comparison.py 28 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/systems_and_platforms/system_platform_general.py 78 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/test_base_classes_extra.py 151 1 99% 135
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/test_context_columns.py 232 1 99% 278
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/test_deployment.py 36 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/test_results_tables.py 124 1 99% 185
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/test_workspace_bootstrap.py 30 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/uploader.py 191 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/colors.py 7 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/conversions.py 11 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/cpus.py 13 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/editor.py 79 4 95% 26, 72, 102, 114
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/env.py 34 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/file_cache.py 136 3 98% 105, 124, 226
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/foms.py 9 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/format.py 5 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/json_util.py 21 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/logger.py 65 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/module_utils.py 10 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/naming.py 22 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/object_utils.py 6 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/output_capture.py 6 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/path.py 6 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/shell_utils.py 16 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/stats.py 12 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/web.py 129 1 99% 166
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/util/yaml_generation.py 69 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/variant.py 211 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/version.py 142 1 99% 117
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/when.py 668 3 99% 1106, 1237, 1289
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/workflow_manager_functionality/workflow_manager.py 37 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/workflow_manager_functionality/workflow_manager_foms.py 20 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/workspace.py 95 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/workspace_hashing/unsetup_workspace_cannot_analyze.py 21 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/workspace_hashing/workspace_name_does_not_change_hash.py 35 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/test/workspace_hashing/workspace_setup_creates_inventory.py 33 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/toolkit.py 12 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/uploader.py 413 68 84% 90, 92, 120, 126, 132, 140-141, 153, 243-244, 246-247, 251, 271-272, 276, 278, 400, 499, 534-535, 555-558, 561-601, 604-609, 655, 687, 716-717, 778, 780, 797-799
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/__init__.py 0 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/class_attributes.py 10 1 90% 27
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/cleaner.py 4 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/colors.py 74 2 97% 127-128
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/command_runner.py 87 14 84% 45, 50, 53-54, 170, 178-181, 185-190
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/conflicts.py 6 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/conversions.py 29 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/cpus.py 5 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/directives.py 11 1 91% 16
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/editor.py 46 3 93% 49, 93, 132
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/env.py 56 1 98% 31
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/executable.py 63 2 97% 103, 165
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/file_cache.py 77 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/file_editor.py 5 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/file_util.py 37 1 97% 25
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/foms.py 60 10 83% 25-26, 50, 56-57, 74-79
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/format.py 25 1 96% 32
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/graph.py 22 2 91% 73, 91
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/hashing.py 18 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/imp/__init__.py 1 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/imp/importlib_importer.py 22 2 91% 27, 35
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/install_cache.py 7 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/json_util.py 16 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/lock.py 35 16 54% 43, 51-52, 65-84
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/logger.py 133 11 92% 135, 142, 206-208, 264-266, 276-278
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/matrices.py 15 1 93% 34
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/module_utils.py 15 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/naming.py 132 14 89% 180, 183, 207, 226-231, 234-236, 265-266
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/object_utils.py 25 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/output_capture.py 15 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/path.py 31 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/shell_utils.py 32 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/spec_utils.py 64 1 98% 83
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/stats.py 128 1 99% 25
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/version.py 25 3 88% 44, 55, 60
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/web.py 236 91 61% 70, 77, 88-91, 98-99, 102, 109-115, 144-145, 156-187, 205, 215, 241, 260-268, 272-280, 284-289, 303-343, 353-354, 358-360, 368-372
Step #2 - "ramble-unit-tests": lib/ramble/ramble/util/yaml_generation.py 83 5 94% 49-50, 128, 133, 187
Step #2 - "ramble-unit-tests": lib/ramble/ramble/variants.py 222 9 96% 68-70, 93, 228, 309, 407-408, 548
Step #2 - "ramble-unit-tests": lib/ramble/ramble/wmkit.py 6 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/workload.py 131 19 85% 59-62, 65-67, 164, 172-175, 189, 203, 240-242, 258-260
Step #2 - "ramble-unit-tests": lib/ramble/ramble/workspace/__init__.py 2 0 100%
Step #2 - "ramble-unit-tests": lib/ramble/ramble/workspace/shell.py 78 10 87% 25-27, 30, 42-44, 48, 81-82
Step #2 - "ramble-unit-tests": lib/ramble/ramble/workspace/workspace.py 1494 167 89% 134-135, 159, 214, 234, 285, 295, 727-731, 734-737, 741-742, 845-847, 916-927, 938-939, 957-958, 967-968, 996, 1015-1025, 1036-1037, 1044-1045, 1090, 1102, 1107-1110, 1122-1123, 1136-1139, 1201, 1220-1246, 1261, 1298-1304, 1310, 1339, 1405-1446, 1453-1454, 1457-1458, 1465-1467, 1532-1534, 1613, 1630, 1641, 1644, 1652-1653, 1685-1686, 1716, 1719, 1777, 1805, 1845, 1872-1873, 1898, 1909, 1943, 1952, 2010-2011, 2080, 2102-2103, 2218, 2267, 2296, 2389, 2395, 2404, 2534, 2543, 2585, 2594-2595, 2608-2609, 2614-2620, 2656, 2741, 2759, 2796-2797, 2804-2805
Step #2 - "ramble-unit-tests": ------------------------------------------------------------------------------------------------------------------------
Step #2 - "ramble-unit-tests": TOTAL 32183 2157 93%
Finished Step #2 - "ramble-unit-tests"
PUSH
DONE
Loading