yellowdog-sdk 11.8.1__py3-none-any.whl → 12.0.0__py3-none-any.whl

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.
@@ -1 +1 @@
1
- __version__ = '11.8.1' # YEL-14191
1
+ __version__ = '12.0.0' # YEL-14196
@@ -204,6 +204,7 @@ from .node_search import NodeSearch
204
204
  from .node_slot_numbering import NodeSlotNumbering
205
205
  from .node_status import NodeStatus
206
206
  from .node_summary import NodeSummary
207
+ from .node_task_queue import NodeTaskQueue
207
208
  from .node_type import NodeType
208
209
  from .node_worker_target import NodeWorkerTarget
209
210
  from .node_worker_target_type import NodeWorkerTargetType
@@ -529,6 +530,7 @@ __all__ = [
529
530
  "NodeSlotNumbering",
530
531
  "NodeStatus",
531
532
  "NodeSummary",
533
+ "NodeTaskQueue",
532
534
  "NodeType",
533
535
  "NodeWorkerTarget",
534
536
  "NodeWorkerTargetType",
@@ -1,6 +1,6 @@
1
1
  from dataclasses import dataclass
2
2
  from datetime import datetime
3
- from typing import List
3
+ from typing import List, Optional, Set
4
4
 
5
5
  from .filter import Filter
6
6
  from .instance_status import InstanceStatus
@@ -10,4 +10,5 @@ from .instance_status import InstanceStatus
10
10
  class AggregateInstanceUsageFilter(Filter):
11
11
  fromTime: datetime
12
12
  untilTime: datetime
13
- instanceStatuses: List[InstanceStatus]
13
+ instanceStatuses: Optional[List[InstanceStatus]] = None
14
+ accountIds: Optional[Set[str]] = None
@@ -2,7 +2,7 @@ from enum import Enum
2
2
 
3
3
 
4
4
  class InstanceStatus(Enum):
5
- """Describes the status of a instance."""
5
+ """Describes the status of an instance."""
6
6
  PENDING = "PENDING", True
7
7
  """The instance is in the process of being provisioned, or rebooted."""
8
8
  RUNNING = "RUNNING", True
@@ -1,11 +1,12 @@
1
1
  from dataclasses import dataclass
2
2
  from datetime import datetime
3
- from typing import List, Optional
3
+ from typing import Dict, List, Optional
4
4
 
5
5
  from .identified import Identified
6
6
  from .node_action_queue_status import NodeActionQueueStatus
7
7
  from .node_details import NodeDetails
8
8
  from .node_status import NodeStatus
9
+ from .node_task_queue import NodeTaskQueue
9
10
  from .worker import Worker
10
11
 
11
12
 
@@ -33,3 +34,10 @@ class Node(Identified):
33
34
  actionQueueStatus: Optional[NodeActionQueueStatus] = None
34
35
  """The status of the action queue for the node."""
35
36
  agentVersion: Optional[str] = None
37
+ """The version of the agent running on the node."""
38
+ taskGroupTaskQueues: Optional[Dict[str, NodeTaskQueue]] = None
39
+ """
40
+ A map keyed on task group holding status information related to the
41
+ task queues local to the node.
42
+ """
43
+
@@ -0,0 +1,13 @@
1
+ from dataclasses import dataclass
2
+
3
+
4
+ @dataclass
5
+ class NodeTaskQueue:
6
+ """Describes the current state of a node's local task queue for a specific task group."""
7
+ workerUtilisation: float = 0
8
+ """
9
+ A value between 0 and 1 showing the current utilisation as a
10
+ percentage of time available spent working for the workers
11
+ claimed for the task group on this node.
12
+ """
13
+
@@ -13,6 +13,8 @@ class TaskError:
13
13
  """The time at which the error occurred."""
14
14
  error: str
15
15
  """A description of the error."""
16
+ nodeId: Optional[str] = None
17
+ """The ID of the node where the error occurred."""
16
18
  workerId: Optional[str] = None
17
19
  """The ID of the worker where the error occurred."""
18
20
  errorType: str = TaskErrorType.UNKNOWN_ERROR
@@ -6,11 +6,13 @@ class WorkerStatus(Enum):
6
6
  DOING_TASK = "DOING_TASK", True, True
7
7
  """The Worker has been instructed to execute a task."""
8
8
  SLEEPING = "SLEEPING", True, True
9
- """The Worker has been instructed to sleep for a specified period of time."""
9
+ """The Worker is claimed by one or more task groups but has been instructed to sleep as no tasks are READY for it."""
10
10
  STOPPED = "STOPPED", True, True
11
- """The Worker has been instructed to stop."""
11
+ """The Worker is not claimed and has been instructed to stop."""
12
12
  STARTING = "STARTING", True, True
13
- """The Agent has been instructed to start the Worker."""
13
+ """The Worker has become claimed and the Agent has been instructed to start the Worker."""
14
+ BATCH_ALLOCATION = "BATCH_ALLOCATION", True, True
15
+ """The Worker has become claimed for batch allocation. Its status is now monitored locally to the node."""
14
16
  LATE = "LATE", True, False
15
17
  """The Worker's heartbeat is late."""
16
18
  LOST = "LOST", False, False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yellowdog-sdk
3
- Version: 11.8.1
3
+ Version: 12.0.0
4
4
  Summary: SDK for the YellowDog Platform
5
5
  Author-email: YellowDog Limited <support@yellowdog.co>
6
6
  Project-URL: Homepage, https://yellowdog.co
@@ -34,9 +34,10 @@ Requires-Dist: pytest-httpserver==1.0.8; extra == "tests"
34
34
  Requires-Dist: typing_compat==0.1.0; extra == "tests"
35
35
  Requires-Dist: busypie==0.5.1; extra == "tests"
36
36
  Provides-Extra: docs
37
- Requires-Dist: Sphinx==7.4.7; extra == "docs"
38
- Requires-Dist: sphinx-autodoc-typehints==1.12.0; extra == "docs"
39
- Requires-Dist: sphinx-automodapi==0.13; extra == "docs"
37
+ Requires-Dist: Sphinx==9.1.0; extra == "docs"
38
+ Requires-Dist: sphinx-autodoc-typehints==3.6.2; extra == "docs"
39
+ Requires-Dist: sphinx-automodapi==0.22.0; extra == "docs"
40
+ Requires-Dist: sphinx-rtd-theme==3.1.0; extra == "docs"
40
41
  Provides-Extra: deploy
41
42
  Requires-Dist: twine==3.3.0; extra == "deploy"
42
43
  Dynamic: license-file
@@ -1,6 +1,6 @@
1
1
  __init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  yellowdog_client/__init__.py,sha256=xHGTw5UbjkeEl_hC8_gJCacfji6462qJWD1nvJdFssE,13162
3
- yellowdog_client/_version.py,sha256=coQ-UHXxFqVMYnr2Ss0PL3MnFipuHyi1no5hUs2P7_s,35
3
+ yellowdog_client/_version.py,sha256=J1-1oYHS75pr6WWsKN3i4b-JiYwrGiyH3Mspno0s1vQ,35
4
4
  yellowdog_client/client_collection.py,sha256=VSEzjf6iR1qCQ0YGLyDq_Kgvw8r832QDwTp6-MLB4Vs,388
5
5
  yellowdog_client/platform_client.py,sha256=J1KNYC99WlK-cg9reAvqFKc4IKTtWFet-INLpGdECqI,7923
6
6
  yellowdog_client/account/__init__.py,sha256=3mb1pxWtzXaFI7R1KqP76y9ni4kV1Xcle-IgVMuWh18,713
@@ -56,7 +56,7 @@ yellowdog_client/images/images_service_proxy.py,sha256=eyP4u6FoIH1WJvNM_m8tacTCs
56
56
  yellowdog_client/images/page.py,sha256=UIvlxvzdcfnKvbcq2Cn6IB7ZtQMc3dzcBTUfElvVPwQ,391
57
57
  yellowdog_client/images/pageable.py,sha256=msD8uGGJ2F5jEqTNDYaFrh6z6drlxOXZ1AmB0T3edM0,296
58
58
  yellowdog_client/images/sort.py,sha256=YS05DlIRg1Cm3QLBi6KFjFdB3g-b3WrqFFitlMJUEMM,167
59
- yellowdog_client/model/__init__.py,sha256=MIswjKfv8PiLYQfNqxpH4hRt5N8I8prR2lOsSENsmRM,26640
59
+ yellowdog_client/model/__init__.py,sha256=4xup6lCoYAnXXYCtKkIZCfI_oZX2tcKctXQpPvebKqM,26704
60
60
  yellowdog_client/model/access_delegate.py,sha256=jIW5P9jWG0LUirmci-rnHW_Lytv7dfKRJjAKwaLwvrU,575
61
61
  yellowdog_client/model/account.py,sha256=r_-7J-JjjMcQPZzaQ4_o9y6XY7-GMPRLWt9mGOucYU0,394
62
62
  yellowdog_client/model/account_allowance.py,sha256=c-MkSSRLB5Y5TMDZl5h5fipj4vzLLlO_AQXPeRJ0AYw,1021
@@ -70,7 +70,7 @@ yellowdog_client/model/add_group_request.py,sha256=9HV_ygW9GNqY25MZcbJJj59iWcV8v
70
70
  yellowdog_client/model/add_node_actions_request.py,sha256=2jIZay71NiCnm7uyZxHDigdhb-wGulifD1qRKux5JOQ,247
71
71
  yellowdog_client/model/add_user_request.py,sha256=xTaZpQ4RhX0iJWXCHPRPnDAXwnOB44Ii8A8rOAf12iY,116
72
72
  yellowdog_client/model/add_user_response.py,sha256=_Bh_ria9w24vasFVbOxUEgbsd09u4tGb4mhON2qx6mo,154
73
- yellowdog_client/model/aggregate_instance_usage_filter.py,sha256=ahy6wnSnpHY6ZjwNz_OCWdQFdkdL3MWLmlDB_zk7Viw,307
73
+ yellowdog_client/model/aggregate_instance_usage_filter.py,sha256=gzgAkqZyBhJnYthGZzFjunxOzAPzBPSCXpyYV-oCBjo,381
74
74
  yellowdog_client/model/allowance.py,sha256=9BMKrxuT4UKTgvLhYnlyiXI2wkfcO9GYElbKLuYubcU,167
75
75
  yellowdog_client/model/allowance_exhausted_notification.py,sha256=l38uP4l0CmC6v1qsPksCA-go-00Kt1Ec1t_RrhD1fKo,255
76
76
  yellowdog_client/model/allowance_limit_enforcement.py,sha256=uvU86l0iY3-lcb3i0YHN3EVF6dxbWOM7ATYGgEPh0XE,436
@@ -207,7 +207,7 @@ yellowdog_client/model/instance.py,sha256=Z7B2IOhLHbVFfto6iFrgs1-9sA-A3H-U7Ly1O0
207
207
  yellowdog_client/model/instance_id.py,sha256=1mu4MWY1GRlnmuR50Gq1Izag1EyTc6gHbMs4JajrDKs,292
208
208
  yellowdog_client/model/instance_pricing.py,sha256=wqIwW1130DlQoi9DzObEHISVPWq1HaOdHYjZLsTG1B8,444
209
209
  yellowdog_client/model/instance_search.py,sha256=htGP5nRtkRAnu9hO3dvXPgpyNkAHycIYYVB1nue9wqk,712
210
- yellowdog_client/model/instance_status.py,sha256=m3aAy5nXJVRH75VpKoH-QL-z7ldQkW_c6a48DM4aDkE,1154
210
+ yellowdog_client/model/instance_status.py,sha256=IEryxPSLBjZhxXY8Hh_wP1vt7lDkDZm6-LjMlb8bKy4,1155
211
211
  yellowdog_client/model/instance_summary.py,sha256=XTgn7af0F1Sifm7q8vW1eallQW4IGrKzVD2pLBC6Z28,1081
212
212
  yellowdog_client/model/instance_type.py,sha256=Sb1yzzSO2mYdrp0m_KdrQYZ7Cy_ilFlEsLHp20Ld9A8,583
213
213
  yellowdog_client/model/instance_type_price.py,sha256=gIGJQvvCXa2Z2HxhdKJUEFzgIXxZPUc-4VIu5OBNdoo,560
@@ -249,7 +249,7 @@ yellowdog_client/model/namespace_ref.py,sha256=4JDCK7DHNyx1b7b2kgu-QU6lUxvPQhEka
249
249
  yellowdog_client/model/namespace_search.py,sha256=xO2Ov7j0rsMq_TOydX-vBQUeFvGxpaLgJkzRRC6W93A,393
250
250
  yellowdog_client/model/namespace_storage_configuration.py,sha256=6JSDmRbrsWhJqOeqz3skdR8t2hlP40kvPoW0CV4hYbc,139
251
251
  yellowdog_client/model/new_password_request.py,sha256=7zJkK_3GJde6QQidaxFaj49DKIQg52FTJrbmgdfTxrE,91
252
- yellowdog_client/model/node.py,sha256=h4s6yYKER8HLigv0swJt5ejptNzcIbEtRIesAb4O1c8,1347
252
+ yellowdog_client/model/node.py,sha256=ECoK8qpZCm7QRAj2hXISVJeLkK7syeLo3kBp3PBGk2o,1643
253
253
  yellowdog_client/model/node_action.py,sha256=4NTsvuwlIVC5Fd-VQ9dg0no-93UTyhcaKAG_CG7dV3g,122
254
254
  yellowdog_client/model/node_action_group.py,sha256=hLKSy9MrLWvJrVgdiqT9jXy-3vTAeAMYiw8zNUvmeQM,161
255
255
  yellowdog_client/model/node_action_queue_snapshot.py,sha256=PcY8jVyKM93GGkSyGyTlDw-YzgH4OV54SHfmHfI9-pc,467
@@ -263,6 +263,7 @@ yellowdog_client/model/node_search.py,sha256=sUAATgd_2FqtQvJ44WCv41mTD41ADE993DG
263
263
  yellowdog_client/model/node_slot_numbering.py,sha256=qKA4nXwu1iv58rdqaIr9sJhDh_KL1XjaHMexBWUWuek,137
264
264
  yellowdog_client/model/node_status.py,sha256=O5ZOl6bI7cpvPYgAamvdyfxZTBIcWqmdVerwxMV9p0c,831
265
265
  yellowdog_client/model/node_summary.py,sha256=u5X27f0MxyJb6e24Czb0f7aMkLDUlHdtglQdyB6x214,604
266
+ yellowdog_client/model/node_task_queue.py,sha256=S60EYKfvvA_hcENlrpfrDJcs49RiMk2xi8uu-jyXPOE,385
266
267
  yellowdog_client/model/node_type.py,sha256=Lh_73zwZz6lKFHyn3chJZmretYuhkhHgzf0H1XNLJ7I,323
267
268
  yellowdog_client/model/node_worker_target.py,sha256=uVcU-02dOZZUSqW43c4hf4FKnuw3iQfxs8DabOEJEm4,777
268
269
  yellowdog_client/model/node_worker_target_type.py,sha256=z8H_Sk4aTzSxayGf10X9Gi_sCTPCWhSscChVWyFzyo8,188
@@ -334,7 +335,7 @@ yellowdog_client/model/task.py,sha256=FZ2bQqxJJ3n4HhNKmFCd9GORD0T1GXpLIXq38rIgKB
334
335
  yellowdog_client/model/task_data.py,sha256=mG8Yrg6laqJEGKa3I3yN2ZzT2eHzpVO9U4tPi9PKo8I,286
335
336
  yellowdog_client/model/task_data_input.py,sha256=ntlSr23aDdFR9AxEp0paWshBMrSythBksg3RYEIXBKg,105
336
337
  yellowdog_client/model/task_data_output.py,sha256=8DAPuveK43HxWBQE7--n4E_c115gAzpMhffLW4DDWkI,137
337
- yellowdog_client/model/task_error.py,sha256=9aW_ZJ0WkQjUSbpasXBtc0Wj4iu4-70Mf3jtmeiUx2k,639
338
+ yellowdog_client/model/task_error.py,sha256=8V57VYAN8XySBIw05Lky8DJiRqJdNO3Ow5NZRMx_lfY,727
338
339
  yellowdog_client/model/task_error_matcher.py,sha256=idOfRZllKDlqe8Wq2GMjEaYhLLrAmd7Hai5Dr5BJMd0,291
339
340
  yellowdog_client/model/task_error_type.py,sha256=3JDxDu8_f_eQdoB_Y1xuVW4N_leSoJAGn5OjcU4X3e0,701
340
341
  yellowdog_client/model/task_group.py,sha256=29t6oxZda_P0VtnUlzQn0o8An38cD0B4jbwGiVKIqCE,2321
@@ -378,7 +379,7 @@ yellowdog_client/model/worker_pool_search.py,sha256=zTYIkYfTpXMht5jpPWV9ApV618Pn
378
379
  yellowdog_client/model/worker_pool_status.py,sha256=NEOuZuuwlAa0h16Feh76qUtaJ_t26qO_AoHFjJBVWLc,1240
379
380
  yellowdog_client/model/worker_pool_summary.py,sha256=WkdKWXlSj4K1aYvwL29wETJcpeKCv4chXx-M3SvjZfI,1447
380
381
  yellowdog_client/model/worker_pool_token.py,sha256=aHJcumKO7CiyjqpUoognxCg9SRg6AOdZh01pBIAos74,350
381
- yellowdog_client/model/worker_status.py,sha256=s1Gowm3RNzuSCEWvcI6Pq9BWwiu2_C1ZuNSZAPnDUAM,1367
382
+ yellowdog_client/model/worker_status.py,sha256=Od2Sc-GM6_d8D9hb_hBsvJ2Jy3f_431EwuFRJvd-dxo,1625
382
383
  yellowdog_client/model/worker_summary.py,sha256=PZI7Ay4i2C4UxiSKfaQpPG6t_IF0sfL4ve7uMdsiuts,819
383
384
  yellowdog_client/model/exceptions/__init__.py,sha256=JuFyrrvXegTRdsERsGLbK6ZNOIpp1kwAOdODb-G1W0s,1434
384
385
  yellowdog_client/model/exceptions/base_custom_exception.py,sha256=5WsA_nVwr8D8orn5kPjKSh9I2IJcsJcWMrpEZQUl1-4,665
@@ -474,8 +475,8 @@ yellowdog_client/usage/__init__.py,sha256=XQwRJqTdxKZa1QUTsxBEL0TqQJeQHGyPklFeqc
474
475
  yellowdog_client/usage/allowances_client.py,sha256=H6n63jXjT4OwuWJgFUXSjSmvGTZz9uspy3kj3upinaA,1337
475
476
  yellowdog_client/usage/allowances_client_impl.py,sha256=nQPnSzJKhL3WvyCn5fmiDkwE84xZryH9YvV5Z1GjU4M,2061
476
477
  yellowdog_client/usage/allowances_service_proxy.py,sha256=uO6LWnpjIzUcZTGdOxPXn7SyYX7NMRqO5KUiHUGr490,1320
477
- yellowdog_sdk-11.8.1.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
478
- yellowdog_sdk-11.8.1.dist-info/METADATA,sha256=JWAr845YA0xpkeKvhG8LMZDBmC5NVEWusH3uGiaK0Gs,3239
479
- yellowdog_sdk-11.8.1.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
480
- yellowdog_sdk-11.8.1.dist-info/top_level.txt,sha256=6PH16DcoqpYHhQ5A0UJOjf0tg-1rTrNC9C2CLqCMuFo,26
481
- yellowdog_sdk-11.8.1.dist-info/RECORD,,
478
+ yellowdog_sdk-12.0.0.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
479
+ yellowdog_sdk-12.0.0.dist-info/METADATA,sha256=s9aOpu8g_vIaO7kSuGjqIN8miiOnr5zSJofmxaBL39g,3296
480
+ yellowdog_sdk-12.0.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
481
+ yellowdog_sdk-12.0.0.dist-info/top_level.txt,sha256=6PH16DcoqpYHhQ5A0UJOjf0tg-1rTrNC9C2CLqCMuFo,26
482
+ yellowdog_sdk-12.0.0.dist-info/RECORD,,