yellowdog-sdk 11.6.0__py3-none-any.whl → 11.7.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.6.0' # YEL-14089
1
+ __version__ = '11.7.0' # YEL-13710
@@ -11,6 +11,7 @@ from .add_group_request import AddGroupRequest
11
11
  from .add_node_actions_request import AddNodeActionsRequest
12
12
  from .add_user_request import AddUserRequest
13
13
  from .add_user_response import AddUserResponse
14
+ from .aggregate_instance_usage_filter import AggregateInstanceUsageFilter
14
15
  from .allowance import Allowance
15
16
  from .allowance_exhausted_notification import AllowanceExhaustedNotification
16
17
  from .allowance_limit_enforcement import AllowanceLimitEnforcement
@@ -287,6 +288,7 @@ from .task_output_source import TaskOutputSource
287
288
  from .task_search import TaskSearch
288
289
  from .task_status import TaskStatus
289
290
  from .task_summary import TaskSummary
291
+ from .task_working_time import TaskWorkingTime
290
292
  from .track import Track
291
293
  from .track_search import TrackSearch
292
294
  from .transfer_status_response import TransferStatusResponse
@@ -333,6 +335,7 @@ __all__ = [
333
335
  "AddNodeActionsRequest",
334
336
  "AddUserRequest",
335
337
  "AddUserResponse",
338
+ "AggregateInstanceUsageFilter",
336
339
  "Allowance",
337
340
  "AllowanceExhaustedNotification",
338
341
  "AllowanceLimitEnforcement",
@@ -609,6 +612,7 @@ __all__ = [
609
612
  "TaskSearch",
610
613
  "TaskStatus",
611
614
  "TaskSummary",
615
+ "TaskWorkingTime",
612
616
  "Track",
613
617
  "TrackSearch",
614
618
  "TransferStatusResponse",
@@ -0,0 +1,13 @@
1
+ from dataclasses import dataclass
2
+ from datetime import datetime
3
+ from typing import List
4
+
5
+ from .filter import Filter
6
+ from .instance_status import InstanceStatus
7
+
8
+
9
+ @dataclass
10
+ class AggregateInstanceUsageFilter(Filter):
11
+ fromTime: datetime
12
+ untilTime: datetime
13
+ instanceStatuses: List[InstanceStatus]
@@ -48,3 +48,11 @@ class RunSpecification:
48
48
 
49
49
  retryableErrors: Optional[List[TaskErrorMatcher]] = None
50
50
  """Defines the errors that should result in a task retrying if encountered."""
51
+ batchAllocation: Optional[bool] = None
52
+ """
53
+ Enables the batch allocation of tasks to nodes. Nodes will maintain local task queues and request batches of
54
+ tasks as these queues are drained by workers. This can increase throughput for short-running tasks by reducing
55
+ the latency between a worker completing a task and starting the next one. It can also enable larger numbers of
56
+ workers to be efficiently utilised by reducing overall load on the YellowDog Scheduler service.
57
+ """
58
+
@@ -11,6 +11,7 @@ from .task_error import TaskError
11
11
  from .task_input import TaskInput
12
12
  from .task_output import TaskOutput
13
13
  from .task_status import TaskStatus
14
+ from .task_working_time import TaskWorkingTime
14
15
 
15
16
 
16
17
  @dataclass
@@ -24,6 +25,7 @@ class Task(Identified, Named, Tagged):
24
25
  retryCount: Optional[int] = field(default=None, init=False)
25
26
  """How many times the task has failed and then been set back to WAITING to be retried."""
26
27
  taskGroupId: Optional[str] = field(default=None, init=False)
28
+ nodeId: Optional[str] = field(default=None, init=False)
27
29
  workerId: Optional[str] = field(default=None, init=False)
28
30
  errors: Optional[List[TaskError]] = field(default=None, init=False)
29
31
  taskType: str
@@ -41,6 +43,8 @@ class Task(Identified, Named, Tagged):
41
43
  """The time the task was last started by a Worker."""
42
44
  finishedTime: Optional[datetime] = None
43
45
  """The time the task was finished."""
46
+ workingTime: Optional[TaskWorkingTime] = None
47
+ """The times taken to do the task measured from the worker."""
44
48
  abortRequestedTime: Optional[datetime] = None
45
49
  """The time when task abort was requested."""
46
50
  inputs: Optional[List[TaskInput]] = None
@@ -0,0 +1,10 @@
1
+ from dataclasses import dataclass
2
+ from datetime import timedelta
3
+ from typing import Optional
4
+
5
+
6
+ @dataclass
7
+ class TaskWorkingTime:
8
+ downloading: Optional[timedelta] = None
9
+ executing: Optional[timedelta] = None
10
+ uploading: Optional[timedelta] = None
@@ -18,6 +18,12 @@ class Worker(Identified):
18
18
  """A count of the tasks groups which have claims on the worker. Always identical to the size of #taskGroupIds."""
19
19
  exclusive: bool = False
20
20
  """Indicates if the worker is exclusively claimed by a single task group."""
21
+ batchAllocation: bool = False
22
+ """
23
+ Indicates if the worker has been claimed by a task group for batch allocation. Tasks will be allocated to the
24
+ worker's node in batches before being distributed to the worker.
25
+ """
26
+
21
27
  currentTaskId: Optional[str] = None
22
28
  """The ID of the task currently allocated to the worker."""
23
29
  registeredTime: Optional[datetime] = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yellowdog-sdk
3
- Version: 11.6.0
3
+ Version: 11.7.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
@@ -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=9j07oB2Fia_iIoiEFXJVrSY5ty4cTcV_kMkNq80goMY,35
3
+ yellowdog_client/_version.py,sha256=2aZ_PT8TCx2hrcRwkXrP_WmGPdov3RYGhkKk3HNCwRg,35
4
4
  yellowdog_client/client_collection.py,sha256=VSEzjf6iR1qCQ0YGLyDq_Kgvw8r832QDwTp6-MLB4Vs,388
5
5
  yellowdog_client/platform_client.py,sha256=yCzKsOQKllnfzwP9bG-JGtvOdvY7EaEQzFsgX3ERzVY,7476
6
6
  yellowdog_client/account/__init__.py,sha256=DiLL3uSMyVlAKWsncX0k5Ioc2hw87HQoEkSYO0ro0fg,456
@@ -53,7 +53,7 @@ yellowdog_client/images/images_service_proxy.py,sha256=eyP4u6FoIH1WJvNM_m8tacTCs
53
53
  yellowdog_client/images/page.py,sha256=UIvlxvzdcfnKvbcq2Cn6IB7ZtQMc3dzcBTUfElvVPwQ,391
54
54
  yellowdog_client/images/pageable.py,sha256=msD8uGGJ2F5jEqTNDYaFrh6z6drlxOXZ1AmB0T3edM0,296
55
55
  yellowdog_client/images/sort.py,sha256=YS05DlIRg1Cm3QLBi6KFjFdB3g-b3WrqFFitlMJUEMM,167
56
- yellowdog_client/model/__init__.py,sha256=y_evsCZTMHyE5DkZQC2tBlNlXH_Hndk1ACiACjZzgPQ,26382
56
+ yellowdog_client/model/__init__.py,sha256=Y27S6CVJXV_T1xeax4JV61qa6AQc1IPr2TIc4TgA2I0,26562
57
57
  yellowdog_client/model/access_delegate.py,sha256=jIW5P9jWG0LUirmci-rnHW_Lytv7dfKRJjAKwaLwvrU,575
58
58
  yellowdog_client/model/account.py,sha256=r_-7J-JjjMcQPZzaQ4_o9y6XY7-GMPRLWt9mGOucYU0,394
59
59
  yellowdog_client/model/account_allowance.py,sha256=c-MkSSRLB5Y5TMDZl5h5fipj4vzLLlO_AQXPeRJ0AYw,1021
@@ -67,6 +67,7 @@ yellowdog_client/model/add_group_request.py,sha256=9HV_ygW9GNqY25MZcbJJj59iWcV8v
67
67
  yellowdog_client/model/add_node_actions_request.py,sha256=2jIZay71NiCnm7uyZxHDigdhb-wGulifD1qRKux5JOQ,247
68
68
  yellowdog_client/model/add_user_request.py,sha256=xTaZpQ4RhX0iJWXCHPRPnDAXwnOB44Ii8A8rOAf12iY,116
69
69
  yellowdog_client/model/add_user_response.py,sha256=_Bh_ria9w24vasFVbOxUEgbsd09u4tGb4mhON2qx6mo,154
70
+ yellowdog_client/model/aggregate_instance_usage_filter.py,sha256=ahy6wnSnpHY6ZjwNz_OCWdQFdkdL3MWLmlDB_zk7Viw,307
70
71
  yellowdog_client/model/allowance.py,sha256=9BMKrxuT4UKTgvLhYnlyiXI2wkfcO9GYElbKLuYubcU,167
71
72
  yellowdog_client/model/allowance_exhausted_notification.py,sha256=l38uP4l0CmC6v1qsPksCA-go-00Kt1Ec1t_RrhD1fKo,255
72
73
  yellowdog_client/model/allowance_limit_enforcement.py,sha256=uvU86l0iY3-lcb3i0YHN3EVF6dxbWOM7ATYGgEPh0XE,436
@@ -304,7 +305,7 @@ yellowdog_client/model/role.py,sha256=EK87THjFL4wYnPlFcV2ind7motMefsDm9aAL9B2PrM
304
305
  yellowdog_client/model/role_scope.py,sha256=381xdwSarxxOKR8SkQzTKL6DZk8fOa5whVk3VSon_TA,165
305
306
  yellowdog_client/model/role_search.py,sha256=SL8rngS-BWoqaZ4WtwiScS12Y7JOpfG-itbpPk7qxBc,332
306
307
  yellowdog_client/model/role_summary.py,sha256=fkyZ_pLapNbQM67bSgX60kt20WN7hYCWA0j-1zwzIPc,202
307
- yellowdog_client/model/run_specification.py,sha256=btk53yhHWKvTXxhbzTDS0NjXBf25fqjxPwkc303I15M,2711
308
+ yellowdog_client/model/run_specification.py,sha256=b9ysf4ocZIQ91ZuS6vGwLiS5dTyODN900MejvdQCNDg,3214
308
309
  yellowdog_client/model/s3_namespace_storage_configuration.py,sha256=yUIsBlg2VlMD3ebrcvlfn9kjhztupkLwRfV3mmDlrng,380
309
310
  yellowdog_client/model/services_schema.py,sha256=fyKPI-uu4ii05Rg25EPGrS7AdpKFxqf6Bd-J8hiQMXE,2067
310
311
  yellowdog_client/model/set_password_request.py,sha256=SjOBrJBGVchr_rQqN2fhT3WYSdB5ZTmU9jtHx5B3-p0,145
@@ -325,7 +326,7 @@ yellowdog_client/model/sub_region.py,sha256=a7s77s6S-Xu--uJV86j8exmt9uWGYDTSYbiv
325
326
  yellowdog_client/model/sub_region_search.py,sha256=Jv3oOL4FKgQ8lP_Vo1HvjpUcckFg-Xo-KE1JTztGHQA,391
326
327
  yellowdog_client/model/tagged.py,sha256=QadD2tpNA2FuZStuFxvGM8LWZq1ivtzyz4OuktQ_IQI,172
327
328
  yellowdog_client/model/tail_logs_request.py,sha256=qiArPx0DAb07a46NoGyKFS-52_TMFzNZ_81LjQO3JtA,333
328
- yellowdog_client/model/task.py,sha256=at0_v_xm9nFx-npMBDR9LAHgO4YiueQoi7q4SMOVrJI,2964
329
+ yellowdog_client/model/task.py,sha256=FZ2bQqxJJ3n4HhNKmFCd9GORD0T1GXpLIXq38rIgKB4,3188
329
330
  yellowdog_client/model/task_data.py,sha256=mG8Yrg6laqJEGKa3I3yN2ZzT2eHzpVO9U4tPi9PKo8I,286
330
331
  yellowdog_client/model/task_data_input.py,sha256=ntlSr23aDdFR9AxEp0paWshBMrSythBksg3RYEIXBKg,105
331
332
  yellowdog_client/model/task_data_output.py,sha256=8DAPuveK43HxWBQE7--n4E_c115gAzpMhffLW4DDWkI,137
@@ -343,6 +344,7 @@ yellowdog_client/model/task_output_source.py,sha256=-_5cMlfvMXY5ehBDF4lKKxW6Iu26
343
344
  yellowdog_client/model/task_search.py,sha256=2FakY4abnkclo6orZXJYtNI76vRxB8kSJY7EO6PjiAE,702
344
345
  yellowdog_client/model/task_status.py,sha256=aN5icJ39UULR8pZhuLtK-8lYS1ajAUwyiQyZ_KImymI,1554
345
346
  yellowdog_client/model/task_summary.py,sha256=GN__WCspp6rDcE627KsnFTruIt4r4XiP-8RQ7DhTMfI,294
347
+ yellowdog_client/model/task_working_time.py,sha256=V7MQvlvA0GCevug2cNstTu4QekGiJllIuISmBHRrafU,257
346
348
  yellowdog_client/model/track.py,sha256=GnAlxEIrwQ9qQycTOX4TmkyemNiboZ-3JwGFkzWSLx8,286
347
349
  yellowdog_client/model/track_search.py,sha256=z-t8uQBgoku4G14hpkIKRd7x5cElCNonEU3AfiuytZc,320
348
350
  yellowdog_client/model/transfer_status_response.py,sha256=wE2-4kdyRtxPHAoaUqH69J33AsNIhKLV11rDiMbCNYM,341
@@ -362,7 +364,7 @@ yellowdog_client/model/work_requirement_dashboard_summary.py,sha256=BeiBs92lS1In
362
364
  yellowdog_client/model/work_requirement_search.py,sha256=74PkNvc8mJSKuE9_IAdoNdLZTKos57gBxLagVmTte6w,674
363
365
  yellowdog_client/model/work_requirement_status.py,sha256=JXFDJLakCmpUwv1R6j97lfU_YN7Ppb4YRvhYtWqclkA,1434
364
366
  yellowdog_client/model/work_requirement_summary.py,sha256=xuEWKHTRuG7NIR0jjqRlBMBMNWALUH0iqMLX4RldXNE,1480
365
- yellowdog_client/model/worker.py,sha256=KqUNIYwy9F-R4eY3Vk2JkZIyhERE-2CxmQe-6JgkI5Q,964
367
+ yellowdog_client/model/worker.py,sha256=kk8o6F-W0mrYyYvSboLYFHKQEytKyL2_tnW7KSUFk_8,1198
366
368
  yellowdog_client/model/worker_action.py,sha256=58HCgRGrOVIsz3aKPdwGrY51w5LQQwFlVPKBQ6808Wg,520
367
369
  yellowdog_client/model/worker_pool.py,sha256=1dPTMPzXmqrlJq2PKo294Ay7OgmkZn_jO7qWVppS0Uk,255
368
370
  yellowdog_client/model/worker_pool_dashboard_summary.py,sha256=-jdJ0azze8gi9S0YcPmU9dUVw8hRS2ZQ7fHQNhdeHys,253
@@ -468,8 +470,8 @@ yellowdog_client/usage/__init__.py,sha256=XQwRJqTdxKZa1QUTsxBEL0TqQJeQHGyPklFeqc
468
470
  yellowdog_client/usage/allowances_client.py,sha256=H6n63jXjT4OwuWJgFUXSjSmvGTZz9uspy3kj3upinaA,1337
469
471
  yellowdog_client/usage/allowances_client_impl.py,sha256=nQPnSzJKhL3WvyCn5fmiDkwE84xZryH9YvV5Z1GjU4M,2061
470
472
  yellowdog_client/usage/allowances_service_proxy.py,sha256=uO6LWnpjIzUcZTGdOxPXn7SyYX7NMRqO5KUiHUGr490,1320
471
- yellowdog_sdk-11.6.0.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
472
- yellowdog_sdk-11.6.0.dist-info/METADATA,sha256=pO6WnY2l3OTacDD8vYcEN0i79pGNQrx335nNOxhhBjE,3239
473
- yellowdog_sdk-11.6.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
474
- yellowdog_sdk-11.6.0.dist-info/top_level.txt,sha256=6PH16DcoqpYHhQ5A0UJOjf0tg-1rTrNC9C2CLqCMuFo,26
475
- yellowdog_sdk-11.6.0.dist-info/RECORD,,
473
+ yellowdog_sdk-11.7.0.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
474
+ yellowdog_sdk-11.7.0.dist-info/METADATA,sha256=tad3kf9HkDHlrHo58vKRg3Rnr-cTPWBTcq9PZlln_lo,3239
475
+ yellowdog_sdk-11.7.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
476
+ yellowdog_sdk-11.7.0.dist-info/top_level.txt,sha256=6PH16DcoqpYHhQ5A0UJOjf0tg-1rTrNC9C2CLqCMuFo,26
477
+ yellowdog_sdk-11.7.0.dist-info/RECORD,,