Automated Integration Test Goldens Update from CI #5733
Google Cloud Build / website-pull-request-cdc-webdriver (datcom-ci)
failed
Nov 20, 2025 in 15m 27s
Summary
Build Information
| Trigger | website-pull-request-cdc-webdriver |
| Build | b1dfe0c7-8e45-4e38-aa2b-11e83b202a52 |
| Start | 2025-11-20T11:22:18-08:00 |
| Duration | 14m36.946s |
| Status | FAILURE |
Steps
| Step | Status | Duration |
|---|---|---|
| package_js | SUCCESS | 2m35.173s |
| setup_python | SUCCESS | 3m9.748s |
| setup_website | SUCCESS | 2m23.15s |
| setup_nl | SUCCESS | 3m9.747s |
| flask_cdc_webdriver_test | FAILURE | 11m6.481s |
Details
starting build "b1dfe0c7-8e45-4e38-aa2b-11e83b202a52"
FETCHSOURCE
From https://github.com/datacommonsorg/website
* branch d7a24b86f889cb2d2cd72a15775d5fcfd562569c -> FETCH_HEAD
HEAD is now at d7a24b8 feat: Update goldens from Cloud Build workflow (build ef9de942-a89d-49f6-925a-36ab6a4f314b)
GitCommit:
d7a24b86f889cb2d2cd72a15775d5fcfd562569c
BUILD
Starting Step #1 - "setup_python"
Starting Step #2 - "setup_website"
Starting Step #0 - "package_js"
Starting Step #3 - "setup_nl"
Step #1 - "setup_python": Pulling image: gcr.io/datcom-ci/full-env:2025-10-02
Step #3 - "setup_nl": Pulling image: gcr.io/datcom-ci/full-env:2025-10-02
Step #2 - "setup_website": Pulling image: gcr.io/datcom-ci/full-env:2025-10-02
Step #0 - "package_js": Pulling image: gcr.io/datcom-ci/node:2025-10-01
Step #3 - "setup_nl": 2025-10-02: Pulling from datcom-ci/full-env
Step #2 - "setup_website": 2025-10-02: Pulling from datcom-ci/full-env
Step #3 - "setup_nl": 5c32499ab806: Pulling fs layer
Step #2 - "setup_website": 5c32499ab806: Pulling fs layer
Step #2 - "setup_website": 2e2090506371: Pulling fs layer
Step #2 - "setup_website": 866aa19740ba: Pulling fs layer
Step #2 - "setup_website": 4998cc0012ec: Pulling fs layer
Step #2 - "setup_website": 8a18277e1cb9: Pulling fs layer
Step #2 - "setup_website": ebe4f67599f7: Pulling fs layer
Step #2 - "setup_website": fdf996182a4b: Pulling fs layer
Step #2 - "setup_website": c72cdcf96df0: Pulling fs layer
Step #2 - "setup_website": dc036fb92b3d: Pulling fs layer
Step #2 - "setup_website": 43191234a89f: Pulling fs layer
Step #2 - "setup_website": 20e1655a1adc: Pulling fs layer
Step #2 - "setup_website": 93e56faad25b: Pulling fs layer
Step #2 - "setup_website": cb7de8fc1ec9: Pulling fs layer
Step #2 - "setup_website": 5df4a6325d36: Pulling fs layer
Step #2 - "setup_website": aea0a3dbb812: Pulling fs layer
Step #2 - "setup_website": dc036fb92b3d: Waiting
Step #2 - "setup_website": cb7de8fc1ec9: Waiting
Step #2 - "setup_website": 43191234a89f: Waiting
Step #2 - "setup_website": 20e1655a1adc: Waiting
Step #2 - "setup_website": 5df4a6325d36: Waiting
Step #2 - "setup_website": aea0a3dbb812: Waiting
Step #2 - "setup_website": fdf996182a4b: Waiting
Step #2 - "setup_website": 93e56faad25b: Waiting
Step #2 - "setup_website": c72cdcf96df0: Waiting
Step #3 - "setup_nl": 2e2090506371: Pulling fs layer
Step #3 - "setup_nl": 866aa19740ba: Pulling fs layer
Step #3 - "setup_nl": 4998cc0012ec: Pulling fs layer
Step #3 - "setup_nl": 8a18277e1cb9: Pulling fs layer
Step #3 - "setup_nl": ebe4f67599f7: Pulling fs layer
Step #3 - "setup_nl": fdf996182a4b: Pulling fs layer
Step #3 - "setup_nl": c72cdcf96df0: Pulling fs layer
Step #3 - "setup_nl": dc036fb92b3d: Pulling fs layer
Step #3 - "setup_nl": 43191234a89f: Pulling fs layer
Step #3 - "setup_nl": 20e1655a1adc: Pulling fs layer
Step #3 - "setup_nl": 93e56faad25b: Pulling fs layer
Step #3 - "setup_nl": cb7de8fc1ec9: Pulling fs layer
Step #3 - "setup_nl": 5df4a6325d36: Pulling fs layer
Step #3 - "setup_nl": aea0a3dbb812: Pulling fs layer
Step #3 - "setup_nl": aea0a3dbb812: Waiting
Step #3 - "setup_nl": fdf996182a4b: Waiting
Step #3 - "setup_nl": c72cdcf96df0: Waiting
Step #3 - "setup_nl": dc036fb92b3d: Waiting
Step #3 - "setup_nl": 43191234a89f: Waiting
Step #3 - "setup_nl": 20e1655a1adc: Waiting
Step #3 - "setup_nl": 93e56faad25b: Waiting
Step #3 - "setup_nl": cb7de8fc1ec9: Waiting
Step #3 - "setup_nl": 5df4a6325d36: Waiting
Step #1 - "setup_python": 2025-10-02: Pulling from datcom-ci/full-env
Step #1 - "setup_python": 5c32499ab806: Pulling fs layer
Step #1 - "setup_python": 2e2090506371: Pulling fs layer
Step #1 - "setup_python": 866aa19740ba: Pulling fs layer
Step #1 - "setup_python": 4998cc0012ec: Pulling fs layer
Step #1 - "setup_python": 8a18277e1cb9: Pulling fs layer
Step #1 - "setup_python": ebe4f67599f7: Pulling fs layer
Step #1 - "setup_python": fdf996182a4b: Pulling fs layer
Step #1 - "setup_python": c72cdcf96df0: Pulling fs layer
Step #1 - "setup_python": dc036fb92b3d: Pulling fs layer
Step #1 - "setup_python": 43191234a89f: Pulling fs layer
Step #1 - "setup_python": 20e1655a1adc: Pulling fs layer
Step #1 - "setup_python": 93e56faad25b: Pulling fs layer
Step #1 - "setup_python": cb7de8fc1ec9: Pulling fs layer
Step #1 - "setup_python": 5df4a6325d36: Pulling fs layer
Step #1 - "setup_python": aea0a3dbb812: Pulling fs layer
Step #1 - "setup_python": aea0a3dbb812: Waiting
Step #1 - "setup_python": fdf996182a4b: Waiting
Step #1 - "setup_python": c72cdcf96df0: Waiting
Step #1 - "setup_python": dc036fb92b3d: Waiting
Step #1 - "setup_python": 43191234a89f: Waiting
Step #1 - "setup_python": 20e1655a1adc: Waiting
Step #1 - "setup_python": 93e56faad25b: Waiting
Step #1 - "setup_python": cb7de8fc1ec9: Waiting
Step #1 - "setup_python": 5df4a6325d36: Waiting
Step #0 - "package_js": 2025-10-01: Pulling from datcom-ci/node
Step #0 - "package_js": b85a868b505f: Pulling fs layer
Step #0 - "package_js": 4bc2eda9354f: Pulling fs layer
Step #0 - "package_js": a407a484e74b: Pulling fs layer
Step #0 - "package_js": cc6fff309142: Pulling fs layer
Step #0 - "package_js": 09be68c4cfd1: Pulling fs layer
Step #0 - "package_js": 4f2fc846f636: Pulling fs layer
Step #0 - "package_js": b471a8c3f1d6: Pulling fs layer
Step #0 - "package_js": dd5c82065067: Pulling fs layer
Step #0 - "package_js": c79cd3db6e51: Pulling fs layer
Step #0 - "package_js": 71f0d0490247: Pulling fs layer
Step #0 - "package_js": 8674d43d4892: Pulling fs layer
Step #0 - "package_js": 574e4ed3a819: Pulling fs layer
Step #0 - "package_js": 81f0d49e568a: Pulling fs layer
Step #0 - "package_js": 6d2718751084: Pulling fs layer
Step #0 - "package_js": 4bc2eda9354f: Waiting
Step #0 - "package_js": 8061492fb0d0: Pulling fs layer
Step #0 - "package_js": bdb0d3f2b395: Pulling fs layer
Step #0 - "package_js": a407a484e74b: Waiting
Step #0 - "package_js": 81f0d49e568a: Waiting
Step #0 - "package_js": b85a868b505f: Waiting
Step #0 - "package_js": cc6fff309142: Waiting
Step #0 - "package_js": 574e4ed3a819: Waiting
Step #0 - "package_js": 4f2fc846f636: Waiting
Step #0 - "package_js": 09be68c4cfd1: Waiting
Step #0 - "package_js": b471a8c3f1d6: Waiting
Step #0 - "package_js": 71f0d0490247: Waiting
Step #0 - "package_js": 6d2718751084: Waiting
Step #0 - "package_js": dd5c82065067: Waiting
Step #0 - "package_js": 8674d43d4892: Waiting
Step #0 - "package_js": 8061492fb0d0: Waiting
Step #0 - "package_js": c79cd3db6e51: Waiting
Step #0 - "package_js": bdb0d3f2b395: Waiting
Step #2 - "setup_website": ebe4f67599f7: Verifying Checksum
Step #1 - "setup_python": ebe4f67599f7: Verifying Checksum
Step #1 - "setup_python": ebe4f67599f7: Download complete
Step #2 - "setup_website": ebe4f67599f7: Download complete
Step #3 - "setup_nl": ebe4f67599f7: Verifying Checksum
Step #3 - "setup_nl": ebe4f67599f7: Download complete
Step #1 - "setup_python": 8a18277e1cb9: Verifying Checksum
Step #1 - "setup_python": 8a18277e1cb9: Download complete
Step #3 - "setup_nl": 8a18277e1cb9: Verifying Checksum
Step #3 - "setup_nl": 8a18277e1cb9: Download complete
Step #2 - "setup_website": 8a18277e1cb9: Download complete
Step #1 - "setup_python": 2e2090506371: Download complete
Step #3 - "setup_nl": 2e2090506371: Download complete
Step #2 - "setup_website": 2e2090506371: Download complete
Step #1 - "setup_python": 5c32499ab806: Verifying Checksum
Step #1 - "setup_python": 5c32499ab806: Download complete
Step #2 - "setup_website": 5c32499ab806: Verifying Checksum
Step #2 - "setup_website": 5c32499ab806: Download complete
Step #3 - "setup_nl": 5c32499ab806: Verifying Checksum
Step #3 - "setup_nl": 5c32499ab806: Download complete
Step #3 - "setup_nl": 866aa19740ba: Verifying Checksum
Step #3 - "setup_nl": 866aa19740ba: Download complete
Step #2 - "setup_website": 866aa19740ba: Verifying Checksum
Step #1 - "setup_python": 866aa19740ba: Verifying Checksum
Step #1 - "setup_python": 866aa19740ba: Download complete
Step #2 - "setup_website": 866aa19740ba: Download complete
Step #2 - "setup_website": 4998cc0012ec: Verifying Checksum
Step #2 - "setup_website": 4998cc0012ec: Download complete
Step #3 - "setup_nl": 4998cc0012ec: Verifying Checksum
Step #3 - "setup_nl": 4998cc0012ec: Download complete
Step #1 - "setup_python": 4998cc0012ec: Verifying Checksum
Step #1 - "setup_python": 4998cc0012ec: Download complete
Step #3 - "setup_nl": c72cdcf96df0: Verifying Checksum
Step #3 - "setup_nl": c72cdcf96df0: Download complete
Step #2 - "setup_website": c72cdcf96df0: Verifying Checksum
Step #2 - "setup_website": c72cdcf96df0: Download complete
Step #1 - "setup_python": c72cdcf96df0: Verifying Checksum
Step #1 - "setup_python": c72cdcf96df0: Download complete
Step #3 - "setup_nl": 43191234a89f: Verifying Checksum
Step #3 - "setup_nl": 43191234a89f: Download complete
Step #2 - "setup_website": 43191234a89f: Verifying Checksum
Step #2 - "setup_website": 43191234a89f: Download complete
Step #1 - "setup_python": 43191234a89f: Verifying Checksum
Step #1 - "setup_python": 43191234a89f: Download complete
Step #1 - "setup_python": dc036fb92b3d: Verifying Checksum
Step #1 - "setup_python": dc036fb92b3d: Download complete
Step #3 - "setup_nl": dc036fb92b3d: Verifying Checksum
Step #2 - "setup_website": dc036fb92b3d: Verifying Checksum
Step #2 - "setup_website": dc036fb92b3d: Download complete
Step #3 - "setup_nl": dc036fb92b3d: Download complete
Step #1 - "setup_python": 5df4a6325d36: Verifying Checksum
Step #1 - "setup_python": 5df4a6325d36: Download complete
Step #3 - "setup_nl": 5df4a6325d36: Verifying Checksum
Step #3 - "setup_nl": 5df4a6325d36: Download complete
Step #2 - "setup_website": 5df4a6325d36: Verifying Checksum
Step #2 - "setup_website": 5df4a6325d36: Download complete
Step #3 - "setup_nl": 5c32499ab806: Pull complete
Step #2 - "setup_website": 5c32499ab806: Pull complete
Step #1 - "setup_python": 5c32499ab806: Pull complete
Step #3 - "setup_nl": 93e56faad25b: Verifying Checksum
Step #3 - "setup_nl": 93e56faad25b: Download complete
Step #2 - "setup_website": 93e56faad25b: Verifying Checksum
Step #2 - "setup_website": 93e56faad25b: Download complete
Step #1 - "setup_python": 93e56faad25b: Verifying Checksum
Step #1 - "setup_python": 93e56faad25b: Download complete
Step #3 - "setup_nl": 2e2090506371: Pull complete
Step #1 - "setup_python": 2e2090506371: Pull complete
Step #2 - "setup_website": 2e2090506371: Pull complete
Step #1 - "setup_python": cb7de8fc1ec9: Verifying Checksum
Step #1 - "setup_python": cb7de8fc1ec9: Download complete
Step #3 - "setup_nl": cb7de8fc1ec9: Verifying Checksum
Step #3 - "setup_nl": cb7de8fc1ec9: Download complete
Step #2 - "setup_website": cb7de8fc1ec9: Verifying Checksum
Step #2 - "setup_website": cb7de8fc1ec9: Download complete
Step #0 - "package_js": 4bc2eda9354f: Verifying Checksum
Step #0 - "package_js": 4bc2eda9354f: Download complete
Step #0 - "package_js": b85a868b505f: Verifying Checksum
Step #0 - "package_js": b85a868b505f: Download complete
Step #3 - "setup_nl": 20e1655a1adc: Verifying Checksum
Step #3 - "setup_nl": 20e1655a1adc: Download complete
Step #2 - "setup_website": 20e1655a1adc: Verifying Checksum
Step #2 - "setup_website": 20e1655a1adc: Download complete
Step #1 - "setup_python": 20e1655a1adc: Verifying Checksum
Step #1 - "setup_python": 20e1655a1adc: Download complete
Step #0 - "package_js": cc6fff309142: Download complete
Step #3 - "setup_nl": 866aa19740ba: Pull complete
Step #1 - "setup_python": 866aa19740ba: Pull complete
Step #2 - "setup_website": 866aa19740ba: Pull complete
Step #0 - "package_js": 09be68c4cfd1: Download complete
Step #2 - "setup_website": fdf996182a4b: Verifying Checksum
Step #2 - "setup_website": fdf996182a4b: Download complete
Step #3 - "setup_nl": fdf996182a4b: Verifying Checksum
Step #3 - "setup_nl": fdf996182a4b: Download complete
Step #1 - "setup_python": fdf996182a4b: Verifying Checksum
Step #1 - "setup_python": fdf996182a4b: Download complete
Step #0 - "package_js": b471a8c3f1d6: Verifying Checksum
Step #0 - "package_js": b471a8c3f1d6: Download complete
Step #0 - "package_js": 4f2fc846f636: Verifying Checksum
Step #0 - "package_js": 4f2fc846f636: Download complete
Step #0 - "package_js": dd5c82065067: Verifying Checksum
Step #0 - "package_js": dd5c82065067: Download complete
Step #0 - "package_js": c79cd3db6e51: Verifying Checksum
Step #0 - "package_js": c79cd3db6e51: Download complete
Step #0 - "package_js": 8674d43d4892: Verifying Checksum
Step #0 - "package_js": 8674d43d4892: Download complete
Step #0 - "package_js": 71f0d0490247: Verifying Checksum
Step #0 - "package_js": 71f0d0490247: Download complete
Step #0 - "package_js": 574e4ed3a819: Verifying Checksum
Step #0 - "package_js": 574e4ed3a819: Download complete
Step #0 - "package_js": a407a484e74b: Verifying Checksum
Step #0 - "package_js": a407a484e74b: Download complete
Step #0 - "package_js": 81f0d49e568a: Verifying Checksum
Step #0 - "package_js": 81f0d49e568a: Download complete
Step #0 - "package_js": b85a868b505f: Pull complete
Step #0 - "package_js": 4bc2eda9354f: Pull complete
Step #0 - "package_js": bdb0d3f2b395: Verifying Checksum
Step #0 - "package_js": bdb0d3f2b395: Download complete
Step #0 - "package_js": 8061492fb0d0: Verifying Checksum
Step #0 - "package_js": 8061492fb0d0: Download complete
Step #3 - "setup_nl": aea0a3dbb812: Verifying Checksum
Step #3 - "setup_nl": aea0a3dbb812: Download complete
Step #2 - "setup_website": aea0a3dbb812: Verifying Checksum
Step #2 - "setup_website": aea0a3dbb812: Download complete
Step #1 - "setup_python": aea0a3dbb812: Verifying Checksum
Step #1 - "setup_python": aea0a3dbb812: Download complete
Step #0 - "package_js": a407a484e74b: Pull complete
Step #0 - "package_js": cc6fff309142: Pull complete
Step #0 - "package_js": 09be68c4cfd1: Pull complete
Step #0 - "package_js": 4f2fc846f636: Pull complete
Step #1 - "setup_python": 4998cc0012ec: Pull complete
Step #2 - "setup_website": 4998cc0012ec: Pull complete
Step #3 - "setup_nl": 4998cc0012ec: Pull complete
Step #1 - "setup_python": 8a18277e1cb9: Pull complete
Step #2 - "setup_website": 8a18277e1cb9: Pull complete
Step #3 - "setup_nl": 8a18277e1cb9: Pull complete
Step #0 - "package_js": b471a8c3f1d6: Pull complete
Step #2 - "setup_website": ebe4f67599f7: Pull complete
Step #1 - "setup_python": ebe4f67599f7: Pull complete
Step #3 - "setup_nl": ebe4f67599f7: Pull complete
Step #0 - "package_js": dd5c82065067: Pull complete
Step #0 - "package_js": c79cd3db6e51: Pull complete
Step #0 - "package_js": 71f0d0490247: Pull complete
Step #0 - "package_js": 8674d43d4892: Pull complete
Step #0 - "package_js": 574e4ed3a819: Pull complete
Step #0 - "package_js": 81f0d49e568a: Pull complete
Step #0 - "package_js": 6d2718751084: Verifying Checksum
Step #0 - "package_js": 6d2718751084: Download complete
Step #2 - "setup_website": fdf996182a4b: Pull complete
Step #1 - "setup_python": fdf996182a4b: Pull complete
Step #3 - "setup_nl": fdf996182a4b: Pull complete
Step #2 - "setup_website": c72cdcf96df0: Pull complete
Step #1 - "setup_python": c72cdcf96df0: Pull complete
Step #3 - "setup_nl": c72cdcf96df0: Pull complete
Step #1 - "setup_python": dc036fb92b3d: Pull complete
Step #2 - "setup_website": dc036fb92b3d: Pull complete
Step #3 - "setup_nl": dc036fb92b3d: Pull complete
Step #3 - "setup_nl": 43191234a89f: Pull complete
Step #1 - "setup_python": 43191234a89f: Pull complete
Step #2 - "setup_website": 43191234a89f: Pull complete
Step #0 - "package_js": 6d2718751084: Pull complete
Step #1 - "setup_python": 20e1655a1adc: Pull complete
Step #3 - "setup_nl": 20e1655a1adc: Pull complete
Step #2 - "setup_website": 20e1655a1adc: Pull complete
Step #1 - "setup_python": 93e56faad25b: Pull complete
Step #3 - "setup_nl": 93e56faad25b: Pull complete
Step #2 - "setup_website": 93e56faad25b: Pull complete
Step #1 - "setup_python": cb7de8fc1ec9: Pull complete
Step #3 - "setup_nl": cb7de8fc1ec9: Pull complete
Step #2 - "setup_website": cb7de8fc1ec9: Pull complete
Step #2 - "setup_website": 5df4a6325d36: Pull complete
Step #1 - "setup_python": 5df4a6325d36: Pull complete
Step #3 - "setup_nl": 5df4a6325d36: Pull complete
Step #0 - "package_js": 8061492fb0d0: Pull complete
Step #0 - "package_js": bdb0d3f2b395: Pull complete
Step #0 - "package_js": Digest: sha256:d370b82042aace3f1dc24e23066f8ae12d6afd2190425d9db9dcc43fb4c5b10e
Step #0 - "package_js": Status: Downloaded newer image for gcr.io/datcom-ci/node:2025-10-01
Step #0 - "package_js": gcr.io/datcom-ci/node:2025-10-01
Step #2 - "setup_website": aea0a3dbb812: Pull complete
Step #3 - "setup_nl": aea0a3dbb812: Pull complete
Step #1 - "setup_python": aea0a3dbb812: Pull complete
Step #2 - "setup_website": Digest: sha256:902bc131f2fd23a01bbe792fd8aa9be1577ebc60db9d58c871ddd5f403d08c7e
Step #1 - "setup_python": Digest: sha256:902bc131f2fd23a01bbe792fd8aa9be1577ebc60db9d58c871ddd5f403d08c7e
Step #3 - "setup_nl": Digest: sha256:902bc131f2fd23a01bbe792fd8aa9be1577ebc60db9d58c871ddd5f403d08c7e
Step #2 - "setup_website": Status: Downloaded newer image for gcr.io/datcom-ci/full-env:2025-10-02
Step #1 - "setup_python": Status: Downloaded newer image for gcr.io/datcom-ci/full-env:2025-10-02
Step #3 - "setup_nl": Status: Image is up to date for gcr.io/datcom-ci/full-env:2025-10-02
Step #2 - "setup_website": gcr.io/datcom-ci/full-env:2025-10-02
Step #1 - "setup_python": gcr.io/datcom-ci/full-env:2025-10-02
Step #3 - "setup_nl": gcr.io/datcom-ci/full-env:2025-10-02
Step #3 - "setup_nl": --setup_nl ### Set up NL python requirements
Step #1 - "setup_python": --setup_python ### Set up python environment
Step #2 - "setup_website": --setup_website ### Set up website python requirements
Step #3 - "setup_nl": installing nl_server/requirements.txt
Step #1 - "setup_python": installing server/requirements.txt
Step #2 - "setup_website": installing server/requirements.txt
Step #0 - "package_js": ### Build client-side packages
Step #0 - "package_js":
Step #0 - "package_js": up to date in 324ms
Step #0 - "package_js":
Step #0 - "package_js": 24 packages are looking for funding
Step #0 - "package_js": run `npm fund` for details
Step #0 - "package_js":
Step #0 - "package_js": up to date in 966ms
Step #0 - "package_js":
Step #0 - "package_js": 59 packages are looking for funding
Step #0 - "package_js": run `npm fund` for details
Step #0 - "package_js":
Step #0 - "package_js": added 2 packages, and changed 1 package in 4s
Step #0 - "package_js":
Step #0 - "package_js": 280 packages are looking for funding
Step #0 - "package_js": run `npm fund` for details
Step #0 - "package_js":
Step #0 - "package_js": > [email protected] dev-build
Step #0 - "package_js": > wireit
Step #0 - "package_js":
Step #0 - "package_js": Analyzing
Step #0 - "package_js": 0% [0 / 3] [2 running] ../packages/web-components:build
Step #0 - "package_js": 33% [1 / 3] [1 running] ../packages/client:build
Step #0 - "package_js": 67% [2 / 3] [1 running] dev-build
Step #0 - "package_js": #### Building webpack in development mode
Step #2 - "setup_website":
Step #2 - "setup_website": [notice] A new release of pip is available: 23.1.2 -> 25.3
Step #2 - "setup_website": [notice] To update, run: pip install --upgrade pip
Step #1 - "setup_python":
Step #1 - "setup_python": [notice] A new release of pip is available: 23.1.2 -> 25.3
Step #1 - "setup_python": [notice] To update, run: pip install --upgrade pip
Step #2 - "setup_website": Looking in indexes: https://pypi.org/simple, https://download.pytorch.org/whl/cpu
Step #1 - "setup_python": Looking in indexes: https://pypi.org/simple, https://download.pytorch.org/whl/cpu
Step #2 - "setup_website": Collecting torch==2.2.2
Step #2 - "setup_website": Downloading https://download.pytorch.org/whl/cpu/torch-2.2.2%2Bcpu-cp311-cp311-linux_x86_64.whl (186.8 MB)
Step #1 - "setup_python": Collecting torch==2.2.2
Step #1 - "setup_python": Downloading https://download.pytorch.org/whl/cpu/torch-2.2.2%2Bcpu-cp311-cp311-linux_x86_64.whl (186.8 MB)
Step #2 - "setup_website": ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 186.8/186.8 MB 10.5 MB/s eta 0:00:00
Step #2 - "setup_website": Collecting filelock (from torch==2.2.2)
Step #2 - "setup_website": Using cached filelock-3.20.0-py3-none-any.whl (16 kB)
Step #2 - "setup_website": Requirement already satisfied: typing-extensions>=4.8.0 in ./.env_website/lib/python3.11/site-packages (from torch==2.2.2) (4.12.2)
Step #1 - "setup_python": ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 186.8/186.8 MB 8.4 MB/s eta 0:00:00
Step #2 - "setup_website": Collecting sympy (from torch==2.2.2)
Step #2 - "setup_website": Obtaining dependency information for sympy from https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl.metadata
Step #2 - "setup_website": Downloading https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl.metadata (12 kB)
Step #2 - "setup_website": Collecting networkx (from torch==2.2.2)
Step #2 - "setup_website": Obtaining dependency information for networkx from https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl.metadata
Step #2 - "setup_website": Downloading https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl.metadata (6.3 kB)
Step #2 - "setup_website": Requirement already satisfied: jinja2 in ./.env_website/lib/python3.11/site-packages (from torch==2.2.2) (3.1.6)
Step #2 - "setup_website": Collecting fsspec (from torch==2.2.2)
Step #1 - "setup_python": Collecting filelock (from torch==2.2.2)
Step #2 - "setup_website": Downloading fsspec-2025.10.0-py3-none-any.whl (200 kB)
Step #1 - "setup_python": Using cached filelock-3.20.0-py3-none-any.whl (16 kB)
Step #1 - "setup_python": Requirement already satisfied: typing-extensions>=4.8.0 in ./.env/lib/python3.11/site-packages (from torch==2.2.2) (4.12.2)
Step #2 - "setup_website": ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 201.0/201.0 kB 8.8 MB/s eta 0:00:00
Step #1 - "setup_python": Collecting sympy (from torch==2.2.2)
Step #1 - "setup_python": Obtaining dependency information for sympy from https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl.metadata
Step #1 - "setup_python": Using cached https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl.metadata (12 kB)
Step #2 - "setup_website": Requirement already satisfied: MarkupSafe>=2.0 in ./.env_website/lib/python3.11/site-packages (from jinja2->torch==2.2.2) (2.1.2)
Step #1 - "setup_python": Collecting networkx (from torch==2.2.2)
Step #1 - "setup_python": Obtaining dependency information for networkx from https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl.metadata
Step #1 - "setup_python": Using cached https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl.metadata (6.3 kB)
Step #1 - "setup_python": Requirement already satisfied: jinja2 in ./.env/lib/python3.11/site-packages (from torch==2.2.2) (3.1.6)
Step #2 - "setup_website": Collecting mpmath<1.4,>=1.1.0 (from sympy->torch==2.2.2)
Step #2 - "setup_website": Downloading https://download.pytorch.org/whl/mpmath-1.3.0-py3-none-any.whl (536 kB)
Step #2 - "setup_website": ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 536.2/536.2 kB 55.6 MB/s eta 0:00:00
Step #1 - "setup_python": Collecting fsspec (from torch==2.2.2)
Step #2 - "setup_website": Downloading https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl (2.0 MB)
Step #1 - "setup_python": Using cached fsspec-2025.10.0-py3-none-any.whl (200 kB)
Step #2 - "setup_website": ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.0/2.0 MB 91.1 MB/s eta 0:00:00
Step #2 - "setup_website": Downloading https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl (6.3 MB)
Step #2 - "setup_website": ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.3/6.3 MB 112.1 MB/s eta 0:00:00
Step #1 - "setup_python": Requirement already satisfied: MarkupSafe>=2.0 in ./.env/lib/python3.11/site-packages (from jinja2->torch==2.2.2) (2.1.2)
Step #2 - "setup_website": Using cached https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl (2.0 MB)
Step #1 - "setup_python": Collecting mpmath<1.4,>=1.1.0 (from sympy->torch==2.2.2)
Step #2 - "setup_website": Using cached https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl (6.3 MB)
Step #1 - "setup_python": Using cached https://download.pytorch.org/whl/mpmath-1.3.0-py3-none-any.whl (536 kB)
Step #1 - "setup_python": Using cached https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl (2.0 MB)
Step #1 - "setup_python": Using cached https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl (6.3 MB)
Step #1 - "setup_python": Using cached https://download.pytorch.org/whl/networkx-3.5-py3-none-any.whl (2.0 MB)
Step #1 - "setup_python": Using cached https://download.pytorch.org/whl/sympy-1.14.0-py3-none-any.whl (6.3 MB)
Step #2 - "setup_website": Installing collected packages: mpmath, sympy, networkx, fsspec, filelock, torch
Step #1 - "setup_python": Installing collected packages: mpmath, sympy, networkx, fsspec, filelock, torch
Step #2 - "setup_website": Successfully installed filelock-3.20.0 fsspec-2025.10.0 mpmath-1.3.0 networkx-3.5 sympy-1.14.0 torch-2.2.2+cpu
Step #2 - "setup_website":
Step #2 - "setup_website": [notice] A new release of pip is available: 23.1.2 -> 25.3
Step #2 - "setup_website": [notice] To update, run: pip install --upgrade pip
Step #1 - "setup_python": Successfully installed filelock-3.20.0 fsspec-2025.10.0 mpmath-1.3.0 networkx-3.5 sympy-1.14.0 torch-2.2.2+cpu
Step #1 - "setup_python":
Step #1 - "setup_python": [notice] A new release of pip is available: 23.1.2 -> 25.3
Step #1 - "setup_python": [notice] To update, run: pip install --upgrade pip
Step #1 - "setup_python": installing nl_server/requirements.txt
Finished Step #2 - "setup_website"
Step #0 - "package_js": assets by path �[1m�[32mimages/�[39m�[22m 19.2 MiB 48 assets
Step #0 - "package_js": assets by path �[1m�[32m*.js�[39m�[22m 167 MiB 42 assets
Step #0 - "package_js": assets by path �[1m�[32mcustom_dc/�[39m�[22m 4.5 MiB 41 assets
Step #0 - "package_js": assets by path �[1m�[32mcss/�[39m�[22m 11.2 MiB 39 assets
Step #0 - "package_js": assets by path �[1m�[32msitemap/*.txt�[39m�[22m 79.6 MiB 34 assets
Step #0 - "package_js": assets by path �[1m�[32mdata/�[39m�[22m 1.28 MiB
Step #0 - "package_js": asset �[1m�[32mdata/factcheck/fact_checks_20190605.txt.gz�[39m�[22m 656 KiB �[1m�[32m[emitted]�[39m�[22m [from: data/factcheck/fact_checks_20190605.txt.gz] �[1m�[32m[copied]�[39m�[22m
Step #0 - "package_js": + 2 assets
Step #0 - "package_js": assets by path �[1m�[32mfonts/*.ttf�[39m�[22m 308 KiB
Step #0 - "package_js": asset �[1m�[32mfonts/GoogleSans-Medium.ttf�[39m�[22m 154 KiB �[1m�[32m[emitted]�[39m�[22m [from: fonts/GoogleSans-Medium.ttf] �[1m�[32m[copied]�[39m�[22m
Step #0 - "package_js": asset �[1m�[32mfonts/GoogleSans-Regular.ttf�[39m�[22m 154 KiB �[1m�[32m[emitted]�[39m�[22m [from: fonts/GoogleSans-Regular.ttf] �[1m�[32m[copied]�[39m�[22m
Step #0 - "package_js": assets by path �[1m�[32m*.ico�[39m�[22m 100 KiB
Step #0 - "package_js": asset �[1m�[32msustain_favicon.ico�[39m�[22m 98.9 KiB �[1m�[32m[emitted]�[39m�[22m [from: sustain_favicon.ico] �[1m�[32m[copied]�[39m�[22m
Step #0 - "package_js": asset �[1m�[32mold_favicon.ico�[39m�[22m 1.12 KiB �[1m�[32m[emitted]�[39m�[22m [from: old_favicon.ico] �[1m�[32m[copied]�[39m�[22m
Step #0 - "package_js": asset �[1m�[32mrobots.txt�[39m�[22m 2.08 KiB �[1m�[32m[emitted]�[39m�[22m [from: robots.txt] �[1m�[32m[copied]�[39m�[22m
Step #0 - "package_js": runtime modules 133 KiB 323 modules
Step #0 - "package_js": orphan modules 180 KiB �[1m�[33m[orphan]�[39m�[22m 173 modules
Step #0 - "package_js": modules by path �[1m./node_modules/�[39m�[22m 8.74 MiB 1430 modules
Step #0 - "package_js": modules by path �[1m./js/�[39m�[22m 3.72 MiB
Step #0 - "package_js": javascript modules 2.97 MiB 551 modules
Step #0 - "package_js": json modules 763 KiB 42 modules
Step #0 - "package_js": modules by path �[1m./css/�[39m�[22m 224 KiB 39 modules
Step #0 - "package_js": modules by path �[1m./library/*.ts�[39m�[22m 89.3 KiB
Step #0 - "package_js": �[1m./library/index.ts�[39m�[22m 3.59 KiB �[1m�[33m[built]�[39m�[22m �[1m�[33m[code generated]�[39m�[22m
Step #0 - "package_js": �[1m./library/bar_component.ts�[39m�[22m 8.65 KiB �[1m�[33m[built]�[39m�[22m �[1m�[33m[code generated]�[39m�[22m
Step #0 - "package_js": + 12 modules
Step #0 - "package_js": + 6 modules
Step #0 - "package_js": webpack 5.94.0 compiled �[1m�[32msuccessfully�[39m�[22m in 97027 ms
Step #0 - "package_js": ✅ Ran 3 scripts and skipped 0 in 105.2s.
Finished Step #0 - "package_js"
Step #1 - "setup_python":
Step #1 - "setup_python": [notice] A new release of pip is available: 23.1.2 -> 25.3
Step #1 - "setup_python": [notice] To update, run: pip install --upgrade pip
Step #3 - "setup_nl":
Step #3 - "setup_nl": [notice] A new release of pip is available: 23.1.2 -> 25.3
Step #3 - "setup_nl": [notice] To update, run: pip install --upgrade pip
Finished Step #3 - "setup_nl"
Finished Step #1 - "setup_python"
Starting Step #4 - "flask_cdc_webdriver_test"
Step #4 - "flask_cdc_webdriver_test": Already have image (with digest): gcr.io/datcom-ci/full-env:2025-10-02
Step #4 - "flask_cdc_webdriver_test": Submodule 'import' (https://github.com/datacommonsorg/import.git) registered for path 'import'
Step #4 - "flask_cdc_webdriver_test": Submodule 'mixer' (https://github.com/datacommonsorg/mixer.git) registered for path 'mixer'
Step #4 - "flask_cdc_webdriver_test": Cloning into '/workspace/import'...
Step #4 - "flask_cdc_webdriver_test": Cloning into '/workspace/mixer'...
Step #4 - "flask_cdc_webdriver_test": Submodule path 'import': checked out '1fef1b3d3562603d055d01b72dbf816ae4147116'
Step #4 - "flask_cdc_webdriver_test": Submodule path 'mixer': checked out '6dca76e60cb25e36e7a0fb21bfe342399234c84e'
Step #4 - "flask_cdc_webdriver_test": ### Running Custom DC webdriver tests
Step #4 - "flask_cdc_webdriver_test": File build/cdc/dev/.env-test does not exist. Attempting to fetch from GCP Secret Manager...
Step #4 - "flask_cdc_webdriver_test": Secret: cdc-test-env-file, Project: datcom-website-dev
Step #4 - "flask_cdc_webdriver_test": Successfully fetched build/cdc/dev/.env-test from GCP Secret Manager.
Step #4 - "flask_cdc_webdriver_test": Starting servers using run_cdc_dev.sh...
Step #4 - "flask_cdc_webdriver_test": Using environment file: build/cdc/dev/.env-test
Step #4 - "flask_cdc_webdriver_test": �[0;32m
Step #4 - "flask_cdc_webdriver_test": website hash: d7a24b8
Step #4 - "flask_cdc_webdriver_test": mixer hash: 6dca76e
Step #4 - "flask_cdc_webdriver_test": import hash: 1fef1b3
Step #4 - "flask_cdc_webdriver_test": �[0m
Step #4 - "flask_cdc_webdriver_test": DC_API_KEY = AIzaSyANAqmVLQp5cA0VmhrViQvG-O_O2kVSk2s
Step #4 - "flask_cdc_webdriver_test": DB_PASS = datcom
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": Calling API to validate key: https://autopush.api.datacommons.org/v2/node?key=AIzaSyANAqmVLQp5cA0VmhrViQvG-O_O2kVSk2s&nodes=geoId/06&property=%3C-
Step #4 - "flask_cdc_webdriver_test": API request was successful.
Step #4 - "flask_cdc_webdriver_
...
[Logs truncated due to log size limitations. For full logs, see https://console.cloud.google.com/cloud-build/builds/b1dfe0c7-8e45-4e38-aa2b-11e83b202a52?project=879489846695.]
...
_from_url
Step #4 - "flask_cdc_webdriver_test": [19:35:21][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:21] "GET /health HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "GET /tools/visualization?disable_feature=standardized_vis_tool HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "GET /custom_dc/custom/overrides.css HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "GET /css/static.min.css?t=None-None HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "GET /css/visualization.min.css HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "GET /visualization.js?t=None-None HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "GET /queryStore.js?t=None-None HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "GET /custom_dc/custom/logo.png HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:35:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:35:22] "�[33mGET /favicon.ico HTTP/1.1�[0m" 404 -
Step #4 - "flask_cdc_webdriver_test": server/webdriver/cdc_tests/vis_timeline_test.py::TestVisTimeline::test_landing_page_link {"time":"2025-11-20T19:36:22.878730378Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:22.878710078Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:22.878975709Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:22.931995904Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: getNodeChunkTriples","duration":53141525}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:22.932045964Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodeTriples","duration":53250295}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:22.932072594Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: getNodeChunkTriples","duration":53238155}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:22.932114274Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodeTriples","duration":53336285}
Step #4 - "flask_cdc_webdriver_test": [19:36:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:22] "GET /api/place/type/geoId/06 HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:36:22][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:22] "GET /api/place/name?dcids=geoId/06 HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:22.954786182Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v1/bulk/info/place","url":"https://autopush.api.datacommons.org/v1/bulk/info/place"}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/place/parent?dcid=geoId/06 HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.037480724Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodePredicates","duration":158449545}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/stats/stat-var-property?dcids=WithdrawalRate_Water_Irrigation&dcids=WithdrawalRate_Water_Irrigation_FreshWater_GroundWater&dcids=WithdrawalRate_Water_Irrigation_SurfaceWater HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.057577093Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/observation","url":"https://autopush.api.datacommons.org/v2/observation"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.109862768Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetExistingStatVarGroups","duration":52239915}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][cache.py:197] {"message": "Mixer responses used in the website cache", "mixer_response_ids": ["d1752245-86af-4c7d-8d9e-0cf9ee10f6ce"]}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/observation/existence HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.191869691Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v1/variable/ancestors","url":"https://autopush.api.datacommons.org/v1/variable/ancestors"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.19411899Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v1/variable/ancestors","url":"https://autopush.api.datacommons.org/v1/variable/ancestors"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.213618999Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v1/variable/ancestors","url":"https://autopush.api.datacommons.org/v1/variable/ancestors"}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/variable/path?dcid=WithdrawalRate_Water_Irrigation HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/variable/path?dcid=WithdrawalRate_Water_Irrigation_FreshWater_GroundWater HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.229100567Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/observation","url":"https://autopush.api.datacommons.org/v2/observation"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.229962237Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v1/bulk/info/place","url":"https://autopush.api.datacommons.org/v1/bulk/info/place"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.245824306Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetExistingStatVarGroups","duration":52148785}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.245985746Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v1/bulk/info/variable-group","url":"https://autopush.api.datacommons.org/v1/bulk/info/variable-group"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.259063915Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/observation","url":"https://autopush.api.datacommons.org/v2/observation"}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/variable/path?dcid=WithdrawalRate_Water_Irrigation_SurfaceWater HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.259952505Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/observation","url":"https://autopush.api.datacommons.org/v2/observation"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.274626353Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/observation","url":"https://autopush.api.datacommons.org/v2/observation"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.282048783Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetObservations","duration":52979174}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/place/parent?dcid=geoId/06 HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][cache.py:197] {"message": "Mixer responses used in the website cache", "mixer_response_ids": ["8700a576-b8bb-4688-9683-47700657cf2b"]}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/facets?entities=geoId/06&variables=WithdrawalRate_Water_Irrigation&variables=WithdrawalRate_Water_Irrigation_FreshWater_GroundWater&variables=WithdrawalRate_Water_Irrigation_SurfaceWater HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/variable-group/info HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.31175668Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetExistingStatVarGroups","duration":52663425}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][cache.py:197] {"message": "Mixer responses used in the website cache", "mixer_response_ids": ["9045194c-b8f5-4ac5-93ad-66f1da8916c2"]}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.329329718Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/observation/existence HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.330553038Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.330602978Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v1/bulk/info/variable","url":"https://autopush.api.datacommons.org/v1/bulk/info/variable"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.381170494Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodePredicates","duration":51820526}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.387108584Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: getNodeChunkTriples","duration":56555916}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.387172984Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodeTriples","duration":56659245}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/node/propvals/out HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/node/triples/out/dc/base/USGSWaterUse HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.42217693Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetObservations","duration":162269875}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][cache.py:197] {"message": "Mixer responses used in the website cache", "mixer_response_ids": ["8ec615da-79f1-4978-8fba-3acf85b2d963"]}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.436919879Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.437108009Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetObservations","duration":162428136}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][cache.py:197] {"message": "Mixer responses used in the website cache", "mixer_response_ids": ["75096d61-6b32-4669-bbe2-55de435258ce"]}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.451480247Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.489130774Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodePredicates","duration":52096475}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][cache.py:197] {"message": "Mixer responses used in the website cache", "mixer_response_ids": ["8ec615da-79f1-4978-8fba-3acf85b2d963"]}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/observations/series HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.491790254Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetSVSummaries","duration":161152506}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.491831834Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetStatVarSummaries (WithdrawalRate_Water_Irrigation, WithdrawalRate_Water_Irrigation_FreshWater_GroundWater, WithdrawalRate_Water_Irrigation_SurfaceWater)","duration":161238586}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "GET /api/variable/info?dcids=WithdrawalRate_Water_Irrigation&dcids=WithdrawalRate_Water_Irrigation_FreshWater_GroundWater&dcids=WithdrawalRate_Water_Irrigation_SurfaceWater HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.503428453Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodePredicates","duration":51893775}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.509049902Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][cache.py:197] {"message": "Mixer responses used in the website cache", "mixer_response_ids": ["75096d61-6b32-4669-bbe2-55de435258ce"]}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/observations/series HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.557669928Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.FetchRemote","file":"/workspace/mixer/internal/util/util.go","line":679},"msg":"[DC][RemoteMixerCall] url=https://autopush.api.datacommons.org/v2/node","url":"https://autopush.api.datacommons.org/v2/node"}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.560612358Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: getNodeChunkTriples","duration":51492616}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.560671688Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodeTriples","duration":51604896}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/place/name HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.610488624Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: getNodeChunkTriples","duration":52704526}
Step #4 - "flask_cdc_webdriver_test": {"time":"2025-11-20T19:36:23.610538364Z","level":"INFO","source":{"function":"github.com/datacommonsorg/mixer/internal/util.TimeTrack","file":"/workspace/mixer/internal/util/util.go","line":470},"msg":"Tracked function execution time","name":"SQL: GetNodeTriples","duration":52812285}
Step #4 - "flask_cdc_webdriver_test": [19:36:23][INFO ][_internal.py:97] 127.0.0.1 - - [20/Nov/2025 19:36:23] "POST /api/place/name HTTP/1.1" 200 -
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": [gw0] [ 98%] PASSED server/webdriver/cdc_tests/vis_timeline_test.py::TestVisTimeline::test_landing_page_link
Step #4 - "flask_cdc_webdriver_test": [gw29] [100%] PASSED server/webdriver/cdc_tests/timeline_test.py::TestTimeline::test_check_statvar_and_uncheck
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": =================================== FAILURES ===================================
Step #4 - "flask_cdc_webdriver_test": _______________________ TestVisMap.test_charts_from_url ________________________
Step #4 - "flask_cdc_webdriver_test": [gw28] linux -- Python 3.11.4 /workspace/.env/bin/python3
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": self = <workspace.server.webdriver.cdc_tests.vis_map_test.TestVisMap testMethod=test_charts_from_url>
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": def test_charts_from_url(self):
Step #4 - "flask_cdc_webdriver_test": """Given the url directly, test the page shows up correctly"""
Step #4 - "flask_cdc_webdriver_test": self.driver.get(self.url_ + MAP_URL + URL_HASH_1)
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Wait until the chart has loaded.
Step #4 - "flask_cdc_webdriver_test": shared.wait_for_charts_to_render(self.driver,
Step #4 - "flask_cdc_webdriver_test": timeout_seconds=self.TIMEOUT_SEC)
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Assert place name is correct.
Step #4 - "flask_cdc_webdriver_test": place_name_chip = self.driver.find_element(
Step #4 - "flask_cdc_webdriver_test": By.CSS_SELECTOR, '.selected-option-chip.place .chip-content')
Step #4 - "flask_cdc_webdriver_test": self.assertTrue('California' in place_name_chip.text)
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Assert place type is correct.
Step #4 - "flask_cdc_webdriver_test": place_type_chip = self.driver.find_element(
Step #4 - "flask_cdc_webdriver_test": By.CSS_SELECTOR, '.selected-option-chip.place-type .chip-content')
Step #4 - "flask_cdc_webdriver_test": self.assertTrue('County' in place_type_chip.text)
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Assert stat var is correct.
Step #4 - "flask_cdc_webdriver_test": stat_var_chip = self.driver.find_element(
Step #4 - "flask_cdc_webdriver_test": By.CSS_SELECTOR, '.selected-option-chip.stat-var .chip-content')
Step #4 - "flask_cdc_webdriver_test": self.assertTrue('female population' in stat_var_chip.text.lower())
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Assert chart is correct.
Step #4 - "flask_cdc_webdriver_test": chart_title = self.driver.find_element(By.CSS_SELECTOR,
Step #4 - "flask_cdc_webdriver_test": '.map-chart .chart-headers h4')
Step #4 - "flask_cdc_webdriver_test": self.assertIn("female population ", chart_title.text.lower())
Step #4 - "flask_cdc_webdriver_test": self.assertEqual(len(self.get_chart_map_regions()), 58)
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Assert rankings are correct.
Step #4 - "flask_cdc_webdriver_test": elements_present = EC.presence_of_all_elements_located(
Step #4 - "flask_cdc_webdriver_test": (By.CSS_SELECTOR, '.ranking-header-section h4'))
Step #4 - "flask_cdc_webdriver_test": WebDriverWait(self.driver, self.TIMEOUT_SEC).until(elements_present)
Step #4 - "flask_cdc_webdriver_test": ranking_titles = self.driver.find_elements(By.CSS_SELECTOR,
Step #4 - "flask_cdc_webdriver_test": '.ranking-header-section h4')
Step #4 - "flask_cdc_webdriver_test": self.assertEqual(len(ranking_titles), 2)
Step #4 - "flask_cdc_webdriver_test": self.assertEqual(ranking_titles[0].text, 'Top Places')
Step #4 - "flask_cdc_webdriver_test": self.assertEqual(ranking_titles[1].text, 'Bottom Places')
Step #4 - "flask_cdc_webdriver_test": ranking_items = self.get_ranking_items()
Step #4 - "flask_cdc_webdriver_test": self.assertEqual(len(ranking_items), 10)
Step #4 - "flask_cdc_webdriver_test": self.assertIn(' County, CA', ranking_items[0].text)
Step #4 - "flask_cdc_webdriver_test": self.assertIn(' County, CA', ranking_items[9].text)
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Click per capita and assert results are correct.
Step #4 - "flask_cdc_webdriver_test": per_capita_checkbox = self.driver.find_element(
Step #4 - "flask_cdc_webdriver_test": By.CSS_SELECTOR, '.chart-options .option-inputs .form-check-input')
Step #4 - "flask_cdc_webdriver_test": per_capita_checkbox.click()
Step #4 - "flask_cdc_webdriver_test": shared.wait_for_loading(self.driver)
Step #4 - "flask_cdc_webdriver_test": self.assertEqual(len(self.get_chart_map_regions()), 58)
Step #4 - "flask_cdc_webdriver_test": ranking_items = self.get_ranking_items()
Step #4 - "flask_cdc_webdriver_test": self.assertEqual(len(ranking_items), 10)
Step #4 - "flask_cdc_webdriver_test": self.assertIn(' County, CA', ranking_items[0].text)
Step #4 - "flask_cdc_webdriver_test": self.assertIn(' County, CA', ranking_items[9].text)
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": # Edit source and assert results are correct.
Step #4 - "flask_cdc_webdriver_test": edit_source_button = self.driver.find_element(
Step #4 - "flask_cdc_webdriver_test": By.CLASS_NAME, 'source-selector-open-modal-button')
Step #4 - "flask_cdc_webdriver_test": edit_source_button.click()
Step #4 - "flask_cdc_webdriver_test": element_present = EC.presence_of_element_located(
Step #4 - "flask_cdc_webdriver_test": (By.CSS_SELECTOR,
Step #4 - "flask_cdc_webdriver_test": '.source-selector-facet-options-section input[type="radio"]'))
Step #4 - "flask_cdc_webdriver_test": WebDriverWait(self.driver, self.TIMEOUT_SEC).until(element_present)
Step #4 - "flask_cdc_webdriver_test": shared.select_source(self.driver, [
Step #4 - "flask_cdc_webdriver_test": "Wonder: Mortality, Underlying Cause Of Death",
Step #4 - "flask_cdc_webdriver_test": "CDC_Mortality_UnderlyingCause"
Step #4 - "flask_cdc_webdriver_test": ], "Count_Person_Female")
Step #4 - "flask_cdc_webdriver_test": update_button = self.driver.find_element(
Step #4 - "flask_cdc_webdriver_test": By.CLASS_NAME, 'source-selector-update-source-button')
Step #4 - "flask_cdc_webdriver_test": update_button.click()
Step #4 - "flask_cdc_webdriver_test": shared.wait_for_loading(self.driver)
Step #4 - "flask_cdc_webdriver_test": chart_title = self.driver.find_element(By.CSS_SELECTOR,
Step #4 - "flask_cdc_webdriver_test": '.map-chart .chart-headers h4')
Step #4 - "flask_cdc_webdriver_test": self.assertIn("female population ", chart_title.text.lower())
Step #4 - "flask_cdc_webdriver_test": chart_source = self.driver.find_element(
Step #4 - "flask_cdc_webdriver_test": By.CSS_SELECTOR, '.map-chart .chart-headers .sources')
Step #4 - "flask_cdc_webdriver_test": > self.assertTrue("wonder.cdc.gov" in chart_source.text)
Step #4 - "flask_cdc_webdriver_test": E AssertionError: False is not true
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": server/webdriver/shared_tests/vis_map_test.py:168: AssertionError
Step #4 - "flask_cdc_webdriver_test": =============================== warnings summary ===============================
Step #4 - "flask_cdc_webdriver_test": .env/lib/python3.11/site-packages/flask_babel/__init__.py:183: 32 warnings
Step #4 - "flask_cdc_webdriver_test": /workspace/.env/lib/python3.11/site-packages/flask_babel/__init__.py:183: DeprecationWarning: 'locked_cached_property' is deprecated and will be removed in Flask 2.4. Use a lock inside the decorated function if locking is needed.
Step #4 - "flask_cdc_webdriver_test": @locked_cached_property
Step #4 - "flask_cdc_webdriver_test":
Step #4 - "flask_cdc_webdriver_test": -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
Step #4 - "flask_cdc_webdriver_test": =========================== short test summary info ============================
Step #4 - "flask_cdc_webdriver_test": FAILED server/webdriver/cdc_tests/vis_map_test.py::TestVisMap::test_charts_from_url
Step #4 - "flask_cdc_webdriver_test": == 1 failed, 72 passed, 2 skipped, 32 warnings, 5 rerun in 433.29s (0:07:13) ===
Finished Step #4 - "flask_cdc_webdriver_test"
ERROR
ERROR: build step 4 "gcr.io/datcom-ci/full-env:2025-10-02" failed: step exited with non-zero status: 1
Loading