taskcluster 108.1.0__tar.gz → 110.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. {taskcluster-108.1.0 → taskcluster-110.0.0}/PKG-INFO +2 -2
  2. {taskcluster-108.1.0 → taskcluster-110.0.0}/README.md +1 -1
  3. {taskcluster-108.1.0 → taskcluster-110.0.0}/pyproject.toml +1 -1
  4. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/auth.py +0 -111
  5. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/queue.py +29 -0
  6. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/auth.py +0 -107
  7. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/queue.py +27 -0
  8. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/base.py +1 -1
  9. {taskcluster-108.1.0 → taskcluster-110.0.0}/uv.lock +1 -1
  10. {taskcluster-108.1.0 → taskcluster-110.0.0}/.gitignore +0 -0
  11. {taskcluster-108.1.0 → taskcluster-110.0.0}/CODE_OF_CONDUCT.md +0 -0
  12. {taskcluster-108.1.0 → taskcluster-110.0.0}/CONTRIBUTING.md +0 -0
  13. {taskcluster-108.1.0 → taskcluster-110.0.0}/LICENSE +0 -0
  14. {taskcluster-108.1.0 → taskcluster-110.0.0}/release.sh +0 -0
  15. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/__init__.py +0 -0
  16. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/__init__.py +0 -0
  17. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/asyncclient.py +0 -0
  18. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/asyncutils.py +0 -0
  19. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/auth.py +0 -0
  20. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/authevents.py +0 -0
  21. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/awsprovisioner.py +0 -0
  22. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/download.py +0 -0
  23. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/ec2manager.py +0 -0
  24. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/github.py +0 -0
  25. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/githubevents.py +0 -0
  26. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/hooks.py +0 -0
  27. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/hooksevents.py +0 -0
  28. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/index.py +0 -0
  29. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/login.py +0 -0
  30. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/notify.py +0 -0
  31. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/notifyevents.py +0 -0
  32. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/purgecache.py +0 -0
  33. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/queue.py +0 -0
  34. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/queueevents.py +0 -0
  35. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/reader_writer.py +0 -0
  36. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/retry.py +0 -0
  37. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/secrets.py +0 -0
  38. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/upload.py +0 -0
  39. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/workermanager.py +0 -0
  40. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/aio/workermanagerevents.py +0 -0
  41. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/auth.py +0 -0
  42. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/authevents.py +0 -0
  43. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/awsprovisioner.py +0 -0
  44. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/client.py +0 -0
  45. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/download.py +0 -0
  46. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/ec2manager.py +0 -0
  47. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/exceptions.py +0 -0
  48. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/__init__.py +0 -0
  49. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/_client_importer.py +0 -0
  50. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/__init__.py +0 -0
  51. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/_client_importer.py +0 -0
  52. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/authevents.py +0 -0
  53. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/github.py +0 -0
  54. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/githubevents.py +0 -0
  55. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/hooks.py +0 -0
  56. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/hooksevents.py +0 -0
  57. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/index.py +0 -0
  58. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/notify.py +0 -0
  59. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/notifyevents.py +0 -0
  60. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/object.py +0 -0
  61. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/purgecache.py +0 -0
  62. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/queueevents.py +0 -0
  63. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/secrets.py +0 -0
  64. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/webserver.py +0 -0
  65. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/workermanager.py +0 -0
  66. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/aio/workermanagerevents.py +0 -0
  67. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/authevents.py +0 -0
  68. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/github.py +0 -0
  69. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/githubevents.py +0 -0
  70. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/hooks.py +0 -0
  71. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/hooksevents.py +0 -0
  72. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/index.py +0 -0
  73. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/notify.py +0 -0
  74. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/notifyevents.py +0 -0
  75. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/object.py +0 -0
  76. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/purgecache.py +0 -0
  77. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/queueevents.py +0 -0
  78. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/secrets.py +0 -0
  79. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/webserver.py +0 -0
  80. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/workermanager.py +0 -0
  81. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/generated/workermanagerevents.py +0 -0
  82. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/github.py +0 -0
  83. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/githubevents.py +0 -0
  84. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/helper.py +0 -0
  85. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/hooks.py +0 -0
  86. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/hooksevents.py +0 -0
  87. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/index.py +0 -0
  88. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/login.py +0 -0
  89. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/notify.py +0 -0
  90. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/notifyevents.py +0 -0
  91. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/purgecache.py +0 -0
  92. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/queue.py +0 -0
  93. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/queueevents.py +0 -0
  94. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/retry.py +0 -0
  95. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/secrets.py +0 -0
  96. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/upload.py +0 -0
  97. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/utils.py +0 -0
  98. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/workermanager.py +0 -0
  99. {taskcluster-108.1.0 → taskcluster-110.0.0}/taskcluster/workermanagerevents.py +0 -0
  100. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/aio/__init__.py +0 -0
  101. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/aio/test_client.py +0 -0
  102. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/aio/test_reader_writer.py +0 -0
  103. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/aio/test_upload_download.py +0 -0
  104. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/aio/test_upload_download_real.py +0 -0
  105. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/conftest.py +0 -0
  106. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/public.key +0 -0
  107. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/secret.key +0 -0
  108. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/test_client.py +0 -0
  109. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/test_exceptions.py +0 -0
  110. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/test_imports.py +0 -0
  111. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/test_upload_download.py +0 -0
  112. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/test_upload_download_real.py +0 -0
  113. {taskcluster-108.1.0 → taskcluster-110.0.0}/test/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: taskcluster
3
- Version: 108.1.0
3
+ Version: 110.0.0
4
4
  Summary: Python client for Taskcluster
5
5
  Project-URL: Homepage, https://github.com/taskcluster/taskcluster
6
6
  Project-URL: Repository, https://github.com/taskcluster/taskcluster
@@ -452,7 +452,7 @@ Here is a sample usage:
452
452
  ```python
453
453
  from taskcluster.helper import Taskcluster config
454
454
 
455
- tc = TaskclusterConfig('https://community-tc.services.mozilla.com')
455
+ tc = TaskclusterConfig('https://firefox-ci-tc.services.mozilla.com')
456
456
  ```
457
457
 
458
458
  2. in `project/boot.py`, we authenticate on Taskcuster with provided credentials, or environment variables, or taskcluster proxy (in that order):
@@ -419,7 +419,7 @@ Here is a sample usage:
419
419
  ```python
420
420
  from taskcluster.helper import Taskcluster config
421
421
 
422
- tc = TaskclusterConfig('https://community-tc.services.mozilla.com')
422
+ tc = TaskclusterConfig('https://firefox-ci-tc.services.mozilla.com')
423
423
  ```
424
424
 
425
425
  2. in `project/boot.py`, we authenticate on Taskcuster with provided credentials, or environment variables, or taskcluster proxy (in that order):
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "taskcluster"
7
- version = "108.1.0"
7
+ version = "110.0.0"
8
8
  description = "Python client for Taskcluster"
9
9
  readme = "README.md"
10
10
  license = {text = "MPL-2.0"}
@@ -396,75 +396,6 @@ class Auth(AsyncBaseClient):
396
396
  self.funcinfo["awsS3Credentials"], *args, **kwargs
397
397
  )
398
398
 
399
- async def azureAccounts(self, *args, **kwargs):
400
- """
401
- List Accounts Managed by Auth
402
-
403
- Retrieve a list of all Azure accounts managed by Taskcluster Auth.
404
-
405
- This method is ``deprecated``
406
- """
407
-
408
- return await self._makeApiCall(self.funcinfo["azureAccounts"], *args, **kwargs)
409
-
410
- async def azureTables(self, *args, **kwargs):
411
- """
412
- List Tables in an Account Managed by Auth
413
-
414
- Retrieve a list of all tables in an account.
415
-
416
- This method is ``deprecated``
417
- """
418
-
419
- return await self._makeApiCall(self.funcinfo["azureTables"], *args, **kwargs)
420
-
421
- async def azureTableSAS(self, *args, **kwargs):
422
- """
423
- Get Shared-Access-Signature for Azure Table
424
-
425
- Get a shared access signature (SAS) string for use with a specific Azure
426
- Table Storage table.
427
-
428
- The `level` parameter can be `read-write` or `read-only` and determines
429
- which type of credentials are returned. If level is read-write, it will create the
430
- table if it doesn't already exist.
431
-
432
- This method is ``deprecated``
433
- """
434
-
435
- return await self._makeApiCall(self.funcinfo["azureTableSAS"], *args, **kwargs)
436
-
437
- async def azureContainers(self, *args, **kwargs):
438
- """
439
- List containers in an Account Managed by Auth
440
-
441
- Retrieve a list of all containers in an account.
442
-
443
- This method is ``deprecated``
444
- """
445
-
446
- return await self._makeApiCall(
447
- self.funcinfo["azureContainers"], *args, **kwargs
448
- )
449
-
450
- async def azureContainerSAS(self, *args, **kwargs):
451
- """
452
- Get Shared-Access-Signature for Azure Container
453
-
454
- Get a shared access signature (SAS) string for use with a specific Azure
455
- Blob Storage container.
456
-
457
- The `level` parameter can be `read-write` or `read-only` and determines
458
- which type of credentials are returned. If level is read-write, it will create the
459
- container if it doesn't already exist.
460
-
461
- This method is ``deprecated``
462
- """
463
-
464
- return await self._makeApiCall(
465
- self.funcinfo["azureContainerSAS"], *args, **kwargs
466
- )
467
-
468
399
  async def sentryDSN(self, *args, **kwargs):
469
400
  """
470
401
  Get DSN for Sentry Project
@@ -651,48 +582,6 @@ class Auth(AsyncBaseClient):
651
582
  "route": "/aws/s3/<level>/<bucket>/<prefix>",
652
583
  "stability": "stable",
653
584
  },
654
- "azureAccounts": {
655
- "args": [],
656
- "method": "get",
657
- "name": "azureAccounts",
658
- "output": "v1/azure-account-list-response.json#",
659
- "route": "/azure/accounts",
660
- "stability": "deprecated",
661
- },
662
- "azureContainerSAS": {
663
- "args": ["account", "container", "level"],
664
- "method": "get",
665
- "name": "azureContainerSAS",
666
- "output": "v1/azure-container-response.json#",
667
- "route": "/azure/<account>/containers/<container>/<level>",
668
- "stability": "deprecated",
669
- },
670
- "azureContainers": {
671
- "args": ["account"],
672
- "method": "get",
673
- "name": "azureContainers",
674
- "output": "v1/azure-container-list-response.json#",
675
- "query": ["continuationToken"],
676
- "route": "/azure/<account>/containers",
677
- "stability": "deprecated",
678
- },
679
- "azureTableSAS": {
680
- "args": ["account", "table", "level"],
681
- "method": "get",
682
- "name": "azureTableSAS",
683
- "output": "v1/azure-table-access-response.json#",
684
- "route": "/azure/<account>/table/<table>/<level>",
685
- "stability": "deprecated",
686
- },
687
- "azureTables": {
688
- "args": ["account"],
689
- "method": "get",
690
- "name": "azureTables",
691
- "output": "v1/azure-table-list-response.json#",
692
- "query": ["continuationToken"],
693
- "route": "/azure/<account>/tables",
694
- "stability": "deprecated",
695
- },
696
585
  "client": {
697
586
  "args": ["clientId"],
698
587
  "method": "get",
@@ -840,6 +840,26 @@ class Queue(AsyncBaseClient):
840
840
 
841
841
  return await self._makeApiCall(self.funcinfo["pendingTasks"], *args, **kwargs)
842
842
 
843
+ async def taskQueueCountsBatch(self, *args, **kwargs):
844
+ """
845
+ Get Pending and Claimed Task Counts for Multiple Task Queues
846
+
847
+ Get approximate pending and claimed task counts for the given task queues.
848
+
849
+ The caller must have both `queue:pending-count:<taskQueueId>` and
850
+ `queue:claimed-count:<taskQueueId>` scopes for every requested task queue.
851
+ If any task queue is unauthorized, the entire request will fail.
852
+
853
+ As task states may change rapidly, these counts may not represent the exact
854
+ number of pending and claimed tasks, but are very good approximations.
855
+
856
+ This method is ``experimental``
857
+ """
858
+
859
+ return await self._makeApiCall(
860
+ self.funcinfo["taskQueueCountsBatch"], *args, **kwargs
861
+ )
862
+
843
863
  async def taskQueueCounts(self, *args, **kwargs):
844
864
  """
845
865
  Get Number of Pending and Claimed Tasks
@@ -1411,6 +1431,15 @@ class Queue(AsyncBaseClient):
1411
1431
  "route": "/task-queues/<taskQueueId>/counts",
1412
1432
  "stability": "stable",
1413
1433
  },
1434
+ "taskQueueCountsBatch": {
1435
+ "args": [],
1436
+ "input": "v1/task-queue-counts-request.json#",
1437
+ "method": "post",
1438
+ "name": "taskQueueCountsBatch",
1439
+ "output": "v1/task-queue-counts-list-response.json#",
1440
+ "route": "/task-queues/counts",
1441
+ "stability": "experimental",
1442
+ },
1414
1443
  "tasks": {
1415
1444
  "args": [],
1416
1445
  "input": "v1/tasks-request.json#",
@@ -388,71 +388,6 @@ class Auth(BaseClient):
388
388
 
389
389
  return self._makeApiCall(self.funcinfo["awsS3Credentials"], *args, **kwargs)
390
390
 
391
- def azureAccounts(self, *args, **kwargs):
392
- """
393
- List Accounts Managed by Auth
394
-
395
- Retrieve a list of all Azure accounts managed by Taskcluster Auth.
396
-
397
- This method is ``deprecated``
398
- """
399
-
400
- return self._makeApiCall(self.funcinfo["azureAccounts"], *args, **kwargs)
401
-
402
- def azureTables(self, *args, **kwargs):
403
- """
404
- List Tables in an Account Managed by Auth
405
-
406
- Retrieve a list of all tables in an account.
407
-
408
- This method is ``deprecated``
409
- """
410
-
411
- return self._makeApiCall(self.funcinfo["azureTables"], *args, **kwargs)
412
-
413
- def azureTableSAS(self, *args, **kwargs):
414
- """
415
- Get Shared-Access-Signature for Azure Table
416
-
417
- Get a shared access signature (SAS) string for use with a specific Azure
418
- Table Storage table.
419
-
420
- The `level` parameter can be `read-write` or `read-only` and determines
421
- which type of credentials are returned. If level is read-write, it will create the
422
- table if it doesn't already exist.
423
-
424
- This method is ``deprecated``
425
- """
426
-
427
- return self._makeApiCall(self.funcinfo["azureTableSAS"], *args, **kwargs)
428
-
429
- def azureContainers(self, *args, **kwargs):
430
- """
431
- List containers in an Account Managed by Auth
432
-
433
- Retrieve a list of all containers in an account.
434
-
435
- This method is ``deprecated``
436
- """
437
-
438
- return self._makeApiCall(self.funcinfo["azureContainers"], *args, **kwargs)
439
-
440
- def azureContainerSAS(self, *args, **kwargs):
441
- """
442
- Get Shared-Access-Signature for Azure Container
443
-
444
- Get a shared access signature (SAS) string for use with a specific Azure
445
- Blob Storage container.
446
-
447
- The `level` parameter can be `read-write` or `read-only` and determines
448
- which type of credentials are returned. If level is read-write, it will create the
449
- container if it doesn't already exist.
450
-
451
- This method is ``deprecated``
452
- """
453
-
454
- return self._makeApiCall(self.funcinfo["azureContainerSAS"], *args, **kwargs)
455
-
456
391
  def sentryDSN(self, *args, **kwargs):
457
392
  """
458
393
  Get DSN for Sentry Project
@@ -629,48 +564,6 @@ class Auth(BaseClient):
629
564
  "route": "/aws/s3/<level>/<bucket>/<prefix>",
630
565
  "stability": "stable",
631
566
  },
632
- "azureAccounts": {
633
- "args": [],
634
- "method": "get",
635
- "name": "azureAccounts",
636
- "output": "v1/azure-account-list-response.json#",
637
- "route": "/azure/accounts",
638
- "stability": "deprecated",
639
- },
640
- "azureContainerSAS": {
641
- "args": ["account", "container", "level"],
642
- "method": "get",
643
- "name": "azureContainerSAS",
644
- "output": "v1/azure-container-response.json#",
645
- "route": "/azure/<account>/containers/<container>/<level>",
646
- "stability": "deprecated",
647
- },
648
- "azureContainers": {
649
- "args": ["account"],
650
- "method": "get",
651
- "name": "azureContainers",
652
- "output": "v1/azure-container-list-response.json#",
653
- "query": ["continuationToken"],
654
- "route": "/azure/<account>/containers",
655
- "stability": "deprecated",
656
- },
657
- "azureTableSAS": {
658
- "args": ["account", "table", "level"],
659
- "method": "get",
660
- "name": "azureTableSAS",
661
- "output": "v1/azure-table-access-response.json#",
662
- "route": "/azure/<account>/table/<table>/<level>",
663
- "stability": "deprecated",
664
- },
665
- "azureTables": {
666
- "args": ["account"],
667
- "method": "get",
668
- "name": "azureTables",
669
- "output": "v1/azure-table-list-response.json#",
670
- "query": ["continuationToken"],
671
- "route": "/azure/<account>/tables",
672
- "stability": "deprecated",
673
- },
674
567
  "client": {
675
568
  "args": ["clientId"],
676
569
  "method": "get",
@@ -822,6 +822,24 @@ class Queue(BaseClient):
822
822
 
823
823
  return self._makeApiCall(self.funcinfo["pendingTasks"], *args, **kwargs)
824
824
 
825
+ def taskQueueCountsBatch(self, *args, **kwargs):
826
+ """
827
+ Get Pending and Claimed Task Counts for Multiple Task Queues
828
+
829
+ Get approximate pending and claimed task counts for the given task queues.
830
+
831
+ The caller must have both `queue:pending-count:<taskQueueId>` and
832
+ `queue:claimed-count:<taskQueueId>` scopes for every requested task queue.
833
+ If any task queue is unauthorized, the entire request will fail.
834
+
835
+ As task states may change rapidly, these counts may not represent the exact
836
+ number of pending and claimed tasks, but are very good approximations.
837
+
838
+ This method is ``experimental``
839
+ """
840
+
841
+ return self._makeApiCall(self.funcinfo["taskQueueCountsBatch"], *args, **kwargs)
842
+
825
843
  def taskQueueCounts(self, *args, **kwargs):
826
844
  """
827
845
  Get Number of Pending and Claimed Tasks
@@ -1383,6 +1401,15 @@ class Queue(BaseClient):
1383
1401
  "route": "/task-queues/<taskQueueId>/counts",
1384
1402
  "stability": "stable",
1385
1403
  },
1404
+ "taskQueueCountsBatch": {
1405
+ "args": [],
1406
+ "input": "v1/task-queue-counts-request.json#",
1407
+ "method": "post",
1408
+ "name": "taskQueueCountsBatch",
1409
+ "output": "v1/task-queue-counts-list-response.json#",
1410
+ "route": "/task-queues/counts",
1411
+ "stability": "experimental",
1412
+ },
1386
1413
  "tasks": {
1387
1414
  "args": [],
1388
1415
  "input": "v1/tasks-request.json#",
@@ -11,7 +11,7 @@ _sleep = time.sleep
11
11
  TEST_ROOT_URL = "https://tc-tests.example.com"
12
12
  # rootUrl of a real deployment (that needs no pre-configuration)
13
13
  REAL_ROOT_URL = os.environ.get(
14
- "TASKCLUSTER_ROOT_URL", "https://community-tc.services.mozilla.com/"
14
+ "TASKCLUSTER_ROOT_URL", "https://firefox-ci-tc.services.mozilla.com/"
15
15
  )
16
16
 
17
17
  log = logging.getLogger(__name__)
@@ -1334,7 +1334,7 @@ wheels = [
1334
1334
 
1335
1335
  [[package]]
1336
1336
  name = "taskcluster"
1337
- version = "108.1.0"
1337
+ version = "110.0.0"
1338
1338
  source = { editable = "." }
1339
1339
  dependencies = [
1340
1340
  { name = "aiohttp" },
File without changes
File without changes
File without changes