client: fix warnings in tests#1498
Draft
jcristau wants to merge 1 commit into
Draft
firefoxci-taskcluster / tox-api-py313
succeeded
Mar 5, 2026 in 4m 14s
FirefoxCI (pull_request)
test the tooltool api
Details
View task in Taskcluster | View logs in Taskcluster | View task group in Taskcluster
Task Status
Started: 2026-03-05T13:03:43.435Z
Resolved: 2026-03-05T13:04:46.508Z
Task Execution Time: 1 minute, 3 seconds, 73 milliseconds
Task Status: completed
Reason Resolved: completed
TaskId: Z9BdlcvpRWmz7yZhGOdijA
RunId: 0
Artifacts
- public/logs/live_backing.log
- public/logs/live.log
[taskcluster 2026-03-05T13:03:43.505Z] Worker Type (releng-t/linux-docker) settings:
[taskcluster 2026-03-05T13:03:43.505Z] {
[taskcluster 2026-03-05T13:03:43.505Z] "config": {
[taskcluster 2026-03-05T13:03:43.505Z] "deploymentId": ""
[taskcluster 2026-03-05T13:03:43.505Z] },
[taskcluster 2026-03-05T13:03:43.505Z] "generic-worker": {
[taskcluster 2026-03-05T13:03:43.505Z] "config": {
[taskcluster 2026-03-05T13:03:43.505Z] "headlessTasks": true
[taskcluster 2026-03-05T13:03:43.505Z] },
[taskcluster 2026-03-05T13:03:43.505Z] "engine": "multiuser",
[taskcluster 2026-03-05T13:03:43.505Z] "go-arch": "amd64",
[taskcluster 2026-03-05T13:03:43.505Z] "go-os": "linux",
[taskcluster 2026-03-05T13:03:43.505Z] "go-version": "go1.25.5",
[taskcluster 2026-03-05T13:03:43.505Z] "release": "https://github.com/taskcluster/taskcluster/releases/tag/v95.1.3",
[taskcluster 2026-03-05T13:03:43.505Z] "revision": "300ac23a15bb11e577f3a3d116a570fde948337e",
[taskcluster 2026-03-05T13:03:43.505Z] "source": "https://github.com/taskcluster/taskcluster/commits/300ac23a15bb11e577f3a3d116a570fde948337e",
[taskcluster 2026-03-05T13:03:43.505Z] "version": "95.1.3"
[taskcluster 2026-03-05T13:03:43.505Z] },
[taskcluster 2026-03-05T13:03:43.505Z] "image": "projects/taskcluster-imaging/global/images/gw-fxci-gcp-l1-2404-amd64-headless-googlecompute-2026-01-14",
[taskcluster 2026-03-05T13:03:43.505Z] "instance-id": "4990564603009482808",
...(82 lines hidden)...
[task 2026-03-05T13:04:39.772+00:00] INFO [alembic.runtime.migration] Running upgrade 8029026f4e23 -> 697dbab45f3f, Make releng_tooltool_files.size a BigInteger
[task 2026-03-05T13:04:39.780+00:00] tooltool_api.lib.db: Completed migrations (app='tooltool_api')
[task 2026-03-05T13:04:39.927+00:00] tests/test_api.py::test_upload_anon PASSED
[task 2026-03-05T13:04:39.930+00:00] tooltool_api.lib.flask: Loading custom configuration
[task 2026-03-05T13:04:39.933+00:00] tooltool_api.lib.db: Starting migrations (app='tooltool_api')
[task 2026-03-05T13:04:39.940+00:00] INFO [alembic.runtime.migration] Context impl SQLiteImpl.
[task 2026-03-05T13:04:39.940+00:00] INFO [alembic.runtime.migration] Will assume non-transactional DDL.
[task 2026-03-05T13:04:39.943+00:00] INFO [alembic.runtime.migration] Running upgrade -> 8029026f4e23, Initial migration
[task 2026-03-05T13:04:39.953+00:00] INFO [alembic.runtime.migration] Running upgrade 8029026f4e23 -> 697dbab45f3f, Make releng_tooltool_files.size a BigInteger
[task 2026-03-05T13:04:39.961+00:00] tooltool_api.lib.db: Completed migrations (app='tooltool_api')
[task 2026-03-05T13:04:40.451+00:00] tests/test_api.py::test_with_scopes tooltool_api.lib.auth: Init user test/user@mozilla.com
[task 2026-03-05T13:04:40.578+00:00] tooltool_api.api: Generating signed S3 PUT URL to be688838ca for test/user@mozilla.com; expiring in 60s (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='upload' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.728+00:00] tooltool_api.api: Generating signed S3 GET URL for be688838ca, expiring in 60s (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.733+00:00] tooltool_api.lib.auth: Checking permissions (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None permissions=['project:releng:services/tooltool/api/manage'])
[task 2026-03-05T13:04:40.736+00:00] tooltool_api.lib.auth: Checking permissions (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None permissions=['project:releng:services/tooltool/api/manage'])
[task 2026-03-05T13:04:40.738+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.740+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.741+00:00] tooltool_api.lib.auth: Validated permissions, processing api request (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.755+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.766+00:00] tooltool_api.api: Generating signed S3 GET URL for be688838ca, expiring in 60s (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.771+00:00] tooltool_api.lib.auth: Checking permissions (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None permissions=['project:releng:services/tooltool/api/manage'])
[task 2026-03-05T13:04:40.773+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.775+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.776+00:00] tooltool_api.lib.auth: Validated permissions, processing api request (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:40.807+00:00] PASSED
[task 2026-03-05T13:04:40.810+00:00] tooltool_api.lib.flask: Loading custom configuration
[task 2026-03-05T13:04:40.812+00:00] tooltool_api.lib.db: Starting migrations (app='tooltool_api')
[task 2026-03-05T13:04:40.818+00:00] INFO [alembic.runtime.migration] Context impl SQLiteImpl.
[task 2026-03-05T13:04:40.818+00:00] INFO [alembic.runtime.migration] Will assume non-transactional DDL.
[task 2026-03-05T13:04:40.822+00:00] INFO [alembic.runtime.migration] Running upgrade -> 8029026f4e23, Initial migration
[task 2026-03-05T13:04:40.833+00:00] INFO [alembic.runtime.migration] Running upgrade 8029026f4e23 -> 697dbab45f3f, Make releng_tooltool_files.size a BigInteger
[task 2026-03-05T13:04:40.841+00:00] tooltool_api.lib.db: Completed migrations (app='tooltool_api')
[task 2026-03-05T13:04:40.987+00:00] tests/test_api.py::test_swagger PASSED
[task 2026-03-05T13:04:40.989+00:00] tooltool_api.lib.flask: Loading custom configuration
[task 2026-03-05T13:04:40.992+00:00] tooltool_api.lib.db: Starting migrations (app='tooltool_api')
[task 2026-03-05T13:04:40.998+00:00] INFO [alembic.runtime.migration] Context impl SQLiteImpl.
[task 2026-03-05T13:04:40.998+00:00] INFO [alembic.runtime.migration] Will assume non-transactional DDL.
[task 2026-03-05T13:04:41.002+00:00] INFO [alembic.runtime.migration] Running upgrade -> 8029026f4e23, Initial migration
[task 2026-03-05T13:04:41.011+00:00] INFO [alembic.runtime.migration] Running upgrade 8029026f4e23 -> 697dbab45f3f, Make releng_tooltool_files.size a BigInteger
[task 2026-03-05T13:04:41.019+00:00] tooltool_api.lib.db: Completed migrations (app='tooltool_api')
[task 2026-03-05T13:04:41.157+00:00] tooltool_api.lib.dockerflow: Testing heartbeat of log extension
[task 2026-03-05T13:04:41.157+00:00] tooltool_api.lib.dockerflow: Testing heartbeat of api extension
[task 2026-03-05T13:04:41.157+00:00] tooltool_api.lib.dockerflow: Testing heartbeat of auth extension
[task 2026-03-05T13:04:41.159+00:00] tooltool_api.lib.dockerflow: Testing heartbeat of db extension
[task 2026-03-05T13:04:41.163+00:00] tests/test_api.py::test_heartbeat PASSED
[task 2026-03-05T13:04:41.165+00:00] tests/test_auth.py::test_anonymous PASSED
[task 2026-03-05T13:04:41.166+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.167+00:00] tests/test_auth.py::test_taskcluster_user PASSED
[task 2026-03-05T13:04:41.173+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.175+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.178+00:00] tests/test_auth.py::test_auth PASSED
[task 2026-03-05T13:04:41.180+00:00] tooltool_api.lib.auth: Checking permissions (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None permissions=[['project/test/A', 'project/test/B'], ['project/test-admin/*']])
[task 2026-03-05T13:04:41.182+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.184+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.184+00:00] tooltool_api.lib.auth: User test/user@mozilla.com misses some permissions: project/test/B OR project/test-admin/* (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.186+00:00] tests/test_auth.py::test_scopes_invalid PASSED
[task 2026-03-05T13:04:41.188+00:00] tooltool_api.lib.auth: Checking permissions (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None permissions=[['project/test/A', 'project/test/B'], ['project/test-admin/*']])
[task 2026-03-05T13:04:41.190+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.192+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.192+00:00] tooltool_api.lib.auth: Validated permissions, processing api request (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.194+00:00] tests/test_auth.py::test_scopes_user PASSED
[task 2026-03-05T13:04:41.196+00:00] tooltool_api.lib.auth: Checking permissions (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None permissions=[['project/test/A', 'project/test/B'], ['project/test-admin/*']])
[task 2026-03-05T13:04:41.198+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.200+00:00] tooltool_api.lib.auth: Init user test/user@mozilla.com (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.200+00:00] tooltool_api.lib.auth: Validated permissions, processing api request (tooltool_sha512='be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09' tooltool_operation='download_file' tooltool_batch_id=None)
[task 2026-03-05T13:04:41.202+00:00] tests/test_auth.py::test_scopes_admin PASSED
[task 2026-03-05T13:04:41.204+00:00] conftest: Test
[task 2026-03-05T13:04:41.204+00:00] conftest: Test args (arg1='aaa')
[task 2026-03-05T13:04:41.205+00:00] tests/test_log.py::test_logger PASSED
[task 2026-03-05T13:04:41.207+00:00] tests/test_utils.py::test_now PASSED
[task 2026-03-05T13:04:41.209+00:00] tests/test_utils.py::test_keyname PASSED
[task 2026-03-05T13:04:41.455+00:00] tests/test_utils.py::test_is_valid_sha512 PASSED/builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/_pytest/unraisableexception.py:33: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f7915b33f10>
[task 2026-03-05T13:04:41.455+00:00] gc.collect()
[task 2026-03-05T13:04:41.455+00:00] ResourceWarning: Enable tracemalloc to get the object allocation traceback
[task 2026-03-05T13:04:41.459+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/_pytest/unraisableexception.py:33: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f7913e88400>
[task 2026-03-05T13:04:41.459+00:00] gc.collect()
[task 2026-03-05T13:04:41.459+00:00] ResourceWarning: Enable tracemalloc to get the object allocation traceback
[task 2026-03-05T13:04:41.589+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/_pytest/unraisableexception.py:33: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f7915b30220>
[task 2026-03-05T13:04:41.589+00:00] gc.collect()
[task 2026-03-05T13:04:41.589+00:00] ResourceWarning: Enable tracemalloc to get the object allocation traceback
[task 2026-03-05T13:04:41.589+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/_pytest/unraisableexception.py:33: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f791588f790>
[task 2026-03-05T13:04:41.589+00:00] gc.collect()
[task 2026-03-05T13:04:41.589+00:00] ResourceWarning: Enable tracemalloc to get the object allocation traceback
[task 2026-03-05T13:04:41.589+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/_pytest/unraisableexception.py:33: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f79158fc9a0>
[task 2026-03-05T13:04:41.589+00:00] gc.collect()
[task 2026-03-05T13:04:41.589+00:00] ResourceWarning: Enable tracemalloc to get the object allocation traceback
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00] =============================== warnings summary ===============================
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_no_uploads
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_no_uploads
[task 2026-03-05T13:04:41.848+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/connexion/decorators/validation.py:16: DeprecationWarning: Accessing jsonschema.draft4_format_checker is deprecated and will be removed in a future release. Instead, use the FORMAT_CHECKER attribute on the corresponding Validator.
[task 2026-03-05T13:04:41.848+00:00] from jsonschema import Draft4Validator, ValidationError, draft4_format_checker
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_no_uploads
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_no_uploads
[task 2026-03-05T13:04:41.848+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/connexion/json_schema.py:16: DeprecationWarning: jsonschema.RefResolver is deprecated as of v4.18.0, in favor of the https://github.com/python-jsonschema/referencing library, which provides more compliant referencing behavior as well as more flexible APIs for customization. A future release will remove RefResolver. Please file a feature request (on referencing) if you are missing an API for the kind of customization you need.
[task 2026-03-05T13:04:41.848+00:00] from jsonschema import Draft4Validator, RefResolver
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_no_uploads
[task 2026-03-05T13:04:41.848+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/connexion/json_schema.py:17: DeprecationWarning: jsonschema.exceptions.RefResolutionError is deprecated as of version 4.18.0. If you wish to catch potential reference resolution errors, directly catch referencing.exceptions.Unresolvable.
[task 2026-03-05T13:04:41.848+00:00] from jsonschema.exceptions import RefResolutionError, ValidationError # noqa
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_no_uploads
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_no_uploads
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_upload_anon
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_with_scopes
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_swagger
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py::test_heartbeat
[task 2026-03-05T13:04:41.848+00:00] tests/test_log.py::test_logger
[task 2026-03-05T13:04:41.848+00:00] /builds/worker/checkouts/vcs/api/src/tooltool_api/lib/log.py:87: DeprecationWarning: `structlog.threadlocal` is deprecated, please use `structlog.contextvars` instead.
[task 2026-03-05T13:04:41.848+00:00] context_class=structlog.threadlocal.wrap_dict(dict),
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py: 10 warnings
[task 2026-03-05T13:04:41.848+00:00] /builds/worker/checkouts/vcs/api/src/migrations/env.py:20: DeprecationWarning: 'get_engine' is deprecated and will be removed in Flask-SQLAlchemy 3.1. Use 'engine' or 'engines[key]' instead.
[task 2026-03-05T13:04:41.848+00:00] return current_app.extensions["migrate"].db.get_engine()
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00] tests/test_api.py: 10 warnings
[task 2026-03-05T13:04:41.848+00:00] /builds/worker/checkouts/vcs/.tox/py313/lib/python3.13/site-packages/connexion/spec.py:52: DeprecationWarning: Passing a schema to Validator.iter_errors is deprecated and will be removed in a future release. Call validator.evolve(schema=new_schema).iter_errors(...) instead.
[task 2026-03-05T13:04:41.848+00:00] for error in instance_validator.iter_errors(instance["default"], instance):
[task 2026-03-05T13:04:41.848+00:00]
[task 2026-03-05T13:04:41.848+00:00] -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
[task 2026-03-05T13:04:41.848+00:00] ================================ tests coverage ================================
[task 2026-03-05T13:04:41.849+00:00] _______________ coverage: platform linux, python 3.13.12-final-0 _______________
[task 2026-03-05T13:04:41.849+00:00]
[task 2026-03-05T13:04:41.849+00:00] Name Stmts Miss Branch BrPart Cover Missing
[task 2026-03-05T13:04:41.849+00:00] --------------------------------------------------------------------------------
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/__init__.py 27 0 2 0 100%
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/api.py 180 41 84 29 73% 28, 53, 56, 59, 67, 71, 94, 97, 101, 104-105, 107->111, 146, 152->160, 161-170, 185, 189, 198, 204, 209, 219, 228, 232, 244, 248, 262, 268-274, 278, 285, 290
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/aws.py 25 5 2 0 81% 34-42
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/cli.py 137 74 30 8 45% 26-60, 68-69, 77-78, 83-84, 87-88, 108, 111-113, 119-121, 127-130, 137-141, 149-150, 163-171, 191-204, 211-218
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/config.py 4 0 0 0 100%
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/flask.py 2 2 0 0 0% 6-8
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/lib/api.py 19 0 0 0 100%
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/lib/auth.py 188 36 54 11 76% 59, 63->66, 89, 95, 98, 141-143, 197-199, 213-224, 234, 238, 242->244, 254-258, 266->exit, 273-280, 285, 296->exit, 301-303
[task 2026-03-05T13:04:41.849+00:00] src/tooltool_api/lib/db.py 71 30 12 0 52% 23-48, 57, 61, 65, 87-88, 115-117
[task 2026-03-05T13:04:41.850+00:00] src/tooltool_api/lib/dockerflow.py 41 16 8 3 61% 29-30, 34-42, 49, 61, 68-69, 74, 79
[task 2026-03-05T13:04:41.850+00:00] src/tooltool_api/lib/flask.py 48 7 18 5 82% 34-35, 37->41, 46, 56-58, 61, 72->77
[task 2026-03-05T13:04:41.850+00:00] src/tooltool_api/lib/log.py 49 11 18 6 69% 30->32, 46-55, 61, 64->68, 72, 82, 105
[task 2026-03-05T13:04:41.850+00:00] src/tooltool_api/lib/pulse.py 90 69 14 0 20% 27-81, 85-90, 97-109, 125-131, 134-146, 162-166
[task 2026-03-05T13:04:41.850+00:00] src/tooltool_api/models.py 46 1 2 0 98% 31
[task 2026-03-05T13:04:41.850+00:00] src/tooltool_api/utils.py 9 0 0 0 100%
[task 2026-03-05T13:04:41.850+00:00] src/tooltool_api/view.py 4 1 0 0 75% 12
[task 2026-03-05T13:04:41.850+00:00] --------------------------------------------------------------------------------
[task 2026-03-05T13:04:41.850+00:00] TOTAL 940 293 244 62 66%
[task 2026-03-05T13:04:41.850+00:00] ======================= 15 passed, 32 warnings in 4.62s ========================
[task 2026-03-05T13:04:42.038+00:00] <sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f7913e8b100>
[task 2026-03-05T13:04:42.269+00:00] py313: OK (18.42=setup[10.60]+cmd[7.83] seconds)
[task 2026-03-05T13:04:42.269+00:00] congratulations :) (18.48 seconds)
[task 2026-03-05T13:04:42.321+00:00] tooltool_api-py313: commands[1] /builds/worker/checkouts/vcs/api> tox -e codecov
[task 2026-03-05T13:04:42.686+00:00] codecov: venv> /builds/worker/checkouts/vcs/.tox/tooltool_api-py313/bin/uv venv -p /builds/worker/checkouts/vcs/.tox/tooltool_api-py313/bin/python3 --allow-existing '--prompt=api[codecov]' --python-preference system /builds/worker/checkouts/vcs/.tox/codecov
[task 2026-03-05T13:04:42.733+00:00] codecov: uv-sync> /builds/worker/checkouts/vcs/.tox/tooltool_api-py313/bin/uv sync --locked --python-preference system -p /builds/worker/checkouts/vcs/.tox/tooltool_api-py313/bin/python3
[task 2026-03-05T13:04:43.373+00:00] codecov: commands[0]> coverage xml
[task 2026-03-05T13:04:43.707+00:00] Wrote XML report to coverage.xml
[task 2026-03-05T13:04:43.747+00:00] codecov: commands[1]> sed -i -e 's|filename="|filename="api/|' coverage.xml
[task 2026-03-05T13:04:43.750+00:00] codecov: commands[2]> codecov --disable pycov --commit=8866390ccaa68f29b867bb105d3b07e8c405e8f4 --branch= --pr=1498
[task 2026-03-05T13:04:43.778+00:00] /builds/worker/checkouts/vcs/.tox/codecov/lib/python3.13/site-packages/codecov/__init__.py:167: SyntaxWarning: invalid escape sequence '\ '
[task 2026-03-05T13:04:43.778+00:00] | | / _ \ / _ |/ _ \/ __/ _ \ \ / /
[task 2026-03-05T13:04:44.466+00:00]
[task 2026-03-05T13:04:44.466+00:00] _____ _
[task 2026-03-05T13:04:44.466+00:00] / ____| | |
[task 2026-03-05T13:04:44.466+00:00] | | ___ __| | ___ ___ _____ __
[task 2026-03-05T13:04:44.466+00:00] | | / _ \ / _ |/ _ \/ __/ _ \ \ / /
[task 2026-03-05T13:04:44.466+00:00] | |___| (_) | (_| | __/ (_| (_) \ V /
[task 2026-03-05T13:04:44.466+00:00] \_____\___/ \____|\___|\___\___/ \_/
[task 2026-03-05T13:04:44.466+00:00] v2.1.13
[task 2026-03-05T13:04:44.466+00:00]
[task 2026-03-05T13:04:44.466+00:00] ==> Detecting CI provider
[task 2026-03-05T13:04:44.466+00:00] -> Got branch from git/hg
[task 2026-03-05T13:04:44.466+00:00] -> Got sha from git/hg
[task 2026-03-05T13:04:44.466+00:00] ==> Preparing upload
[task 2026-03-05T13:04:44.466+00:00] ==> Processing gcov (disable by -X gcov)
[task 2026-03-05T13:04:44.466+00:00] ==> Collecting reports
[task 2026-03-05T13:04:44.466+00:00] + /builds/worker/checkouts/vcs/api/coverage.xml bytes=44386
[task 2026-03-05T13:04:44.466+00:00] ==> Uploading
[task 2026-03-05T13:04:44.466+00:00] .url https://codecov.io
[task 2026-03-05T13:04:44.466+00:00] .query commit=8866390ccaa68f29b867bb105d3b07e8c405e8f4&branch=no-more-warnings&pr=1498&token=<secret>&package=py2.1.13
[task 2026-03-05T13:04:44.466+00:00] Gzipping contents..
[task 2026-03-05T13:04:44.466+00:00] Compressed contents to 3945 bytes
[task 2026-03-05T13:04:44.466+00:00] Pinging Codecov...
[task 2026-03-05T13:04:44.466+00:00] Uploading to S3...
[task 2026-03-05T13:04:44.466+00:00] Uploading to S3 took 0:00:00.262620
[task 2026-03-05T13:04:44.466+00:00] https://app.codecov.io/github/mozilla-releng/tooltool/commit/8866390ccaa68f29b867bb105d3b07e8c405e8f4
[task 2026-03-05T13:04:44.495+00:00] codecov: OK (1.81=setup[0.69]+cmd[0.37,0.00,0.74] seconds)
[task 2026-03-05T13:04:44.496+00:00] congratulations :) (1.84 seconds)
[task 2026-03-05T13:04:44.544+00:00] tooltool_api-py313: OK (22.01=setup[0.69]+cmd[19.09,2.22] seconds)
[task 2026-03-05T13:04:44.544+00:00] congratulations :) (22.04 seconds)
[taskcluster 2026-03-05T13:04:45.860Z] Exit Code: 0
[taskcluster 2026-03-05T13:04:45.860Z] User Time: 18.076ms
[taskcluster 2026-03-05T13:04:45.860Z] Kernel Time: 17.071ms
[taskcluster 2026-03-05T13:04:45.860Z] Wall Time: 28.342864088s
[taskcluster 2026-03-05T13:04:45.860Z] Average Available System Memory: 14.78 GiB
[taskcluster 2026-03-05T13:04:45.860Z] Average System Memory Used: 853.61 MiB
[taskcluster 2026-03-05T13:04:45.860Z] Peak System Memory Used: 973.75 MiB
[taskcluster 2026-03-05T13:04:45.860Z] Total System Memory: 15.62 GiB
[taskcluster 2026-03-05T13:04:45.860Z] Result: SUCCEEDED
[taskcluster 2026-03-05T13:04:45.860Z] === Task Finished ===
[taskcluster 2026-03-05T13:04:45.861Z] Task Duration: 28.343502381s
[taskcluster 2026-03-05T13:04:45.957Z] [mounts] Preserving cache: Moving "/home/task_177271582281977/cache0" to "/home/generic-worker/caches/B9fZpOAOQz-6u7h_Clmu5Q"
Loading